MarminDeveloper Docs

Sale invoice examples


This page provides ready-to-use sales invoice payloads for common UAE scenarios. All examples target POST /api/sales-invoices/{business_profile_id} and can be adapted to your profile and business data.

How to use these examples

  • Replace identifiers (profile_id, company_id, document_number etc) with your own values.

  • Ensure all party tax data and tax categories are valid for your VAT treatment.

  • Start with the minimal example, then extend with optional fields as needed.

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

Example 1: Minimal sales invoice

Use this when you need the smallest valid payload for a normal UAE standard tax invoice. See the Minimal Sales Invoice invoice example in the right-side code samples panel.

Example 2: Sales invoice with document level charges and allowances

Use this when you need document-level charges and discounts. See the Sales invoice with document-level charges + allowances example in the right-side code samples panel.

Example 3: Sales invoice with line level charges and allowances

Use this when you need line-level charges and discounts while still applying document level charges or discounts. See the Sales invoice with line-level charges + allowances example in the right-side code samples panel.

Example 4: Sales invoice with multiple payment modes

Use this when the buyer can pay through more than one payment mode in the same invoice request. See the Example 4: Multiple payment modes example in the right-side code samples panel.

Example 5: Free Trade Zone

Use this when the first flag in profile_execution_id is 1 (Free Trade Zone supplies). The payload includes buyer_customer_party.id with a representative beneficiary TIN/TRN placeholder—replace with your buyer’s value. See Example 5: Free Trade Zone (profile_execution_id) in the right-side code samples panel.

Example 6: Summary invoice

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

Example 7: Disclosed agent billing

Use this when the disclosed-agent-billing flag is set in profile_execution_id. The payload includes seller_supplier_party.id with a Principle ID TRN placeholder—replace with the TRN/TIN of the disclosed principal for your case. See Example 7: Disclosed agent billing (profile_execution_id) in the right-side code samples panel.

Example 8: Export transaction

Use this when the export flag is set in profile_execution_id. The payload includes a full delivery object with delivery_location and address (mandatory for this profile). For a non-UAE buyer, accounting_customer_party.party_tax_scheme is optional. The line uses zero-rated tax (Z) as a typical export pattern; confirm categories match your case. 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 your adjustments are applied at line level.

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

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

Next