MarminDeveloper Docs

Purchase invoice examples


This page provides ready-to-use purchase invoice payloads for common UAE scenarios. All examples target POST /api/purchase-invoices/{business_profile_id}.

How to use these examples

  • Replace profile IDs, company identifiers, and references with your real values.

  • Ensure party tax data and VAT categories match the supplier invoice details.

  • Start with minimal payload, then add document-level or line-level adjustments as needed.

  • Self-billed purchase invoices must use invoice_type_code 389 (not credit-note type codes).

  • For profile_execution_id flag definitions and mandatory fields, see Profile execution ID on the purchase invoice object page. Examples 5–8 below match each special transaction type.

Example 1: Minimal purchase invoice

Use this for a straightforward self-billed purchase invoice with one taxable line. See Example 1: Minimal purchase invoice in the right-side code samples panel.

Example 2: Purchase invoice with document-level charges and allowances

Use this when freight/fees/discounts apply to the document total. See Example 2: Purchase invoice with document-level charges + allowances in the right-side code samples panel.

Example 3: Purchase invoice with line-level charges and allowances

Use this when adjustments should be applied on specific invoice lines. See Example 3: Purchase invoice with line-level charges + allowances in the right-side code samples panel.

Example 4: Purchase invoice with multiple payment modes

Use this when the supplier supports more than one payment mode for the same invoice. See Example 4: Multiple payment modes in the right-side code samples panel.

Example 5: Free Trade Zone

Use when the Free Trade Zone flag is set in profile_execution_id. Includes buyer_customer_party.id (beneficiary TRN/TIN placeholder). See Example 5: Free Trade Zone (profile_execution_id) in the right-side code samples panel.

Example 6: Summary invoice

Use when the summary-invoice flag is set. Includes invoice_period with start_date, end_date, and description (billing frequency). See Example 6: Summary invoice (profile_execution_id) in the right-side code samples panel.

Example 7: Disclosed agent billing

Use when the disclosed-agent-billing flag is set. Includes seller_supplier_party.id (Principle ID TRN placeholder). See Example 7: Disclosed agent billing (profile_execution_id) in the right-side code samples panel.

Example 8: Export transaction

Use when the export flag is set. Includes a full delivery object (delivery_location and address). Example line uses zero-rated VAT (Z) where applicable. See Example 8: Export transaction (profile_execution_id) in the right-side code samples panel.


  1. Validate with Example 1 in sandbox.

  2. Add document-level adjustments using Example 2.

  3. Use Example 3 when adjustments must be calculated per line.

  4. Review Example 4 for multi-mode payment payloads.

  5. Use Examples 5–8 when your profile_execution_id requires beneficiary ID, summary period, principal TRN, or export delivery.

Next