The UAE Ministry of Finance published version 1.0 of its mandatory fields specification in February 2026. It defines exactly 51 fields that must appear in every electronic tax invoice submitted through the national e-invoicing network. If your NetSuite implementation is being scoped or retrofitted for compliance, this document is your primary reference. Read the UAE e-invoicing integration guide for NetSuite for the broader architecture picture, but this post focuses entirely on the fields: what each one is, where it comes from in NetSuite, and where NetSuite falls short natively.

Close-up of a person examining a credit card authorization form inside an office setting.

Why the Field Mapping Matters Before You Build Anything

A common mistake in e-invoicing projects is treating the XML schema as something the integration layer “figures out at runtime.” That works until the first field that NetSuite does not store. The UAE specification includes several such fields. Discovering them during UAT rather than during design adds weeks to a project and often requires a second deployment of custom fields to production.

The better approach is to map all 51 fields to their NetSuite source before writing a single line of integration code. This lets you identify custom field requirements, data quality gaps, and hardcoded values up front. Check the UAE e-invoicing compliance deadlines for NetSuite businesses to understand how much runway you have to complete this work.

Format note: UAE electronic invoices are XML only. There is no QR code requirement (unlike Saudi Arabia’s ZATCA system). PDF output is separate from the compliant invoice and carries no legal weight on its own.

The 51 Mandatory Fields: Group by Group

The specification organises the 51 fields into six groups: Invoice Details, Seller Details, Buyer Details, Document Totals, Tax Breakdown, and Invoice Line fields. The line-level group applies per line, so an invoice with ten lines carries the Invoice Details fields once and the line fields ten times.

Invoice Details (Fields 1–9)

#FieldNetSuite SourceNotes
1Invoice numberInvoice > Tran IDMust be unique per invoice
2Invoice dateInvoice > DateStandard field
3Invoice type codeDerived / hardcodedFunctional type code specific to electronic invoicing; value set by integration
4Invoice currency codeInvoice > CurrencyApplies to all amounts except total tax in accounting currency
5Invoice transaction type codeCUSTOM FIELD8-character binary flag string; no native NetSuite field (see section below)
6Payment due dateInvoice > Due DateStandard field
7Business process typeHARDCODEDAlways “urn:peppol:bis:billing”; set in integration, not stored in NetSuite
8Specification identifierHARDCODEDAlways “urn:peppol:pint:billing-1@ae-1”; hardcoded in integration
9Payment means type codeInvoice > Payment Method (custom or mapped)How payment is settled; map NetSuite payment methods to PINT-AE codes

Field 5 is the first significant gap. NetSuite has no native field for an 8-bit binary string representing transaction type flags. The eight flags correspond to: Free Trade Zone, Deemed Supply, Margin Scheme, Summary Invoice, Continuous Supply, Disclosed Agent Billing, Supply through e-commerce, and Exports. Each flag is “1” if applicable and “0” if not. You need a custom field on the Invoice transaction record, populated either by the user or by scripted logic based on customer and item attributes.

Close-up of HTML and PHP code on screen showing error message and login form data.

Seller Details (Fields 10–20)

#FieldNetSuite SourceNotes
10Seller nameSubsidiary > Legal NameFull formal registered name
11Seller electronic address (TIN)CUSTOM FIELD on SubsidiaryFirst 10 digits of the TRN; store as TIN on the company entity
12Seller electronic identifierHARDCODEDAlways “0235” for UAE businesses; hardcoded in integration
13Seller legal registration identifierCUSTOM FIELD on SubsidiaryTrade license number or other official registration ID
14Seller legal registration identifier typeCUSTOM FIELD on SubsidiaryOne of: TL (Trade License), EID, PAS, CD
15Seller tax identifier (TRN)Subsidiary > Tax Registration NumberAvailable in NetSuite if tax registration is configured
16Seller tax scheme codeHARDCODEDAlways “VAT”
17Seller address line 1Subsidiary > Address > Address 1Standard address field
18Seller citySubsidiary > Address > CityStandard field
19Seller country subdivision (emirate)Subsidiary > Address > State/ProvinceMust match the emirate; verify state values are set correctly
20Seller country codeSubsidiary > Address > CountryMust be “AE”

Buyer Details (Fields 21–29)

#FieldNetSuite SourceNotes
21Buyer nameCustomer > Company NameStandard field
22Buyer electronic address (TIN)CUSTOM FIELD on CustomerBuyer’s TIN; no native NetSuite field for this
23Buyer electronic identifierHARDCODED“0235” for UAE buyers; hardcoded
24Buyer tax identifier (TRN)Customer > Tax Registration NumberAvailable if customer tax registration is entered
25Buyer tax scheme codeHARDCODEDAlways “VAT”
26Buyer address line 1Customer > Billing Address > Address 1Pull from billing address on the invoice
27Buyer cityCustomer > Billing Address > CityStandard field
28Buyer country subdivisionCustomer > Billing Address > State/ProvinceEmirate or state for non-UAE buyers
29Buyer country codeCustomer > Billing Address > CountryStandard field

Document Totals and Tax Breakdown (Fields 30–38)

#FieldNetSuite Source
30Sum of invoice line net amountInvoice > Subtotal (sum of line amounts before tax)
31Invoice total amount without taxInvoice > Subtotal
32Invoice total tax amountInvoice > Tax Total
33Invoice total amount with taxInvoice > Total (including tax)
34Amount due for paymentInvoice > Amount Due
35Tax category taxable amountTax Detail > Net Amount per tax category
36Tax category tax amountTax Detail > Tax Amount per tax category
37Tax category codeTax Code mapped to PINT-AE category codes
38Tax category rateTax Code > Rate (%)

Tax category code (field 37) requires a mapping table. NetSuite tax codes need to be mapped to one of the six PINT-AE categories: Standard Rate, Exempt, Out of Scope, Reverse Charge, Zero Rated, or Margin Scheme. This mapping should be maintained as a custom list in NetSuite or a lookup table in the integration layer.

Invoice Line Fields (Fields 39–51)

#FieldNetSuite SourceNotes
39Invoice line identifierLine number (auto-generated)Sequential number per line
40Invoiced quantityInvoice Line > QuantityStandard field
41Unit of measure codeInvoice Line > UnitsMust use UN/ECE Recommendation 20 codes (EA, HUR, KGM, etc.)
42Invoice line net amountInvoice Line > Amount (after discount, before tax)Standard field
43Item net priceInvoice Line > Unit Price (after discount)Exclusive of tax
44Item gross priceInvoice Line > Unit Price (before discount)Price before any line discount
45Item price base quantityDerived (typically 1)The quantity the unit price applies to
46Invoiced item tax category codeInvoice Line > Tax Code (mapped to PINT-AE)Same mapping table as field 37
47Invoiced item tax rateInvoice Line > Tax Code > RateStandard field
48VAT line amount in AEDCALCULATEDTax amount for this line in AED regardless of invoice currency; requires conversion
49Invoice line amount in AEDCALCULATEDTotal payable for this line in AED regardless of invoice currency; requires conversion
50Item nameInvoice Line > Item > Display NameStandard field
51Item descriptionInvoice Line > DescriptionStandard field

Fields NetSuite Does Not Have Natively

Before building the integration, create the following custom fields in NetSuite. Without them, the integration layer has no source record to read from:

Data quality risk: Several of these custom fields will be empty at go-live unless you run a data migration to populate them for existing customers and subsidiary records. Budget time for this as part of your UAT phase.

The AED Conversion Requirement for Line Fields

Fields 48 and 49 are the most technically awkward requirement in the specification. The VAT line amount and total line amount must be expressed in AED on every invoice line, regardless of the invoice currency. If you invoice a customer in USD or EUR, the integration must convert each line’s amounts to AED at the exchange rate on the invoice date.

NetSuite stores the exchange rate on every foreign currency transaction. The integration layer should pull the exchange rate from the Invoice record and apply it to each line’s tax amount and net amount to produce the AED equivalents. Do not try to store these as persistent NetSuite fields on each line; calculate them at extraction time based on the invoice’s exchange rate.

This also means your integration needs to know the functional currency of the subsidiary is AED, so it knows which direction to convert. For subsidiaries whose base currency is already AED, no conversion is needed.

The Peppol Participant ID: What It Is and Where It Lives

The UAE e-invoicing network uses the Peppol framework for addressing. Every participant (seller and buyer) is identified by a Peppol Participant ID in the format: 0235:TIN.

The TIN is the first 10 digits of the 15-digit TRN. For example, if the TRN is 100000000000003, the TIN is 1000000000, and the Peppol endpoint ID is 0235:1000000000. The scheme code “0235” is the UAE-specific Peppol issuing agency code and is always hardcoded.

In NetSuite terms: store the TIN (10 digits) as a custom field on the Subsidiary record (for your company) and on the Customer record (for buyers). The integration layer then concatenates “0235:” + TIN to form the Peppol Participant ID for the XML. Never store the full Peppol ID as a field; the “0235:” prefix is always a constant.

For guidance on how the full submission process works, see how to integrate NetSuite with a UAE e-invoicing service provider, which covers the ASP connection, submission flow, and error handling.

What to Harden in Your Integration Layer

Several values in the specification are always fixed. Rather than adding NetSuite custom fields for them, hardcode them directly in the XML generation code and document that decision clearly:

These six values never vary by transaction or customer. Keeping them as code constants rather than database fields eliminates an entire class of data quality issues where someone accidentally blanks out the field or enters the wrong value.

For the unit of measure codes (field 41), maintain a mapping table between NetSuite unit types and UN/ECE Recommendation 20 codes. NetSuite’s default unit names (“Each”, “Hour”, “Kilogram”) will not match the required codes (“EA”, “HUR”, “KGM”). A lookup table in the integration is the cleanest approach.

Use the UAE e-invoicing go-live checklist for NetSuite to verify all custom fields are created, populated, and tested before your compliance date.

Frequently Asked Questions

How many mandatory fields are in a UAE electronic tax invoice?
The UAE Ministry of Finance specification (V1.0, February 2026) defines 51 mandatory fields, organised into six groups: Invoice Details (9), Seller Details (11), Buyer Details (9), Document Totals (5), Tax Breakdown (4), and Invoice Line fields (13 per line).
Does UAE e-invoicing require a QR code like Saudi Arabia’s ZATCA?
No. UAE electronic invoices do not include a QR code. The compliant format is XML only, transmitted via the Peppol network through an Accredited Service Provider. PDF invoices are separate and carry no legal weight as the primary invoice record.
What custom fields does NetSuite need for UAE e-invoicing compliance?
At minimum, four custom fields are required: the invoice transaction type code (8-bit binary flag) on the Invoice record; the TIN (first 10 digits of TRN) on the Subsidiary record; the buyer TIN on the Customer record; and the trade license number plus registration type on the Subsidiary record. A UUID field on Invoice is also needed to store the ASP response after submission.
What is the invoice transaction type code and how does it work?
It is an 8-character binary string where each character is “1” (applicable) or “0” (not applicable) for eight transaction types: Free Trade Zone, Deemed Supply, Margin Scheme, Summary Invoice, Continuous Supply, Disclosed Agent Billing, Supply through e-commerce, and Exports. A standard domestic B2B invoice with none of these flags would be “00000000”. NetSuite has no native field for this; it requires a custom field on the Invoice transaction record.
Why must line amounts be in AED even if the invoice currency is USD?
The PINT-AE specification requires fields 48 and 49 (VAT line amount and invoice line amount) to always be expressed in AED, the UAE’s functional currency. This applies regardless of the transaction currency. The integration layer must retrieve the exchange rate from the NetSuite invoice record and convert each line’s amounts to AED at extraction time.
What is the Peppol Participant ID format for UAE businesses?
The format is 0235:TIN, where TIN is the first 10 digits of the 15-digit TRN. The scheme code “0235” is the UAE-specific Peppol issuing agency code and is always fixed. Store only the TIN in NetSuite; the integration prepends “0235:” when building the XML.

Need help mapping UAE e-invoicing fields to your NetSuite setup? Aaxonix works with UAE businesses to design and implement compliant integrations from field mapping through to go-live.

Book a free consultation

Getting the field mapping right at the design stage is the difference between a smooth go-live and an expensive rework cycle. The 51 mandatory fields in the UAE specification are clearly defined; what matters is knowing which ones NetSuite covers natively, which require custom fields, and which should be hardcoded constants in your integration. Build that inventory first, then write the code. For a complete view of your implementation scope, see NetSuite implementation and integration services from Aaxonix.