Complyance Logo

GETS Field Mapping

Comprehensive field mapping reference for transforming source invoice payloads into GETS and country-compliant destination schemas.

Field Mapping Overview

GETS Field Mapping defines how invoice data moves across three layers:

  1. Source Schema (your ERP/POS/accounting payload)
  2. GETS Canonical Model (standardized intermediary format)
  3. Destination Schema (country- and regulator-specific output)

This model helps teams implement once and scale across jurisdictions with minimal rework.

Core Concepts

Source-to-GETS Mapping

Normalize source fields into GETS canonical paths with consistent typing, naming, and structure.

GETS-to-Destination Mapping

Apply jurisdiction-specific rules and output contracts (for example UBL, ZATCA, Peppol, MyInvois, or XRechnung).

Mapping Benefits

  • Single integration path for multiple countries and formats
  • Reusable canonical mapping across products and teams
  • Automatic compliance checks aligned with destination requirements
  • Consistent transformation behavior for data quality and auditability

Smart Mapping

GETS mapping includes rule-driven normalization for:

  • data type conversion and null handling
  • currency and monetary precision
  • date/time normalization and formatting
  • conditional field enforcement by country and document type
  • defaulting and fallback behavior for optional fields

Field Mapping Reference

The sections below provide the operational mapping reference based on MappingConstants and the GETS schema registry, including core fields, party data, line items, totals, and country-specific extensions.

Core Fields

Document Header Fields

Field NameGETS PathData TypeRequired
Document Typeheader.documentTypeenumRequired
Document IDheader.documentNumberstringRequired
Document Currencyheader.currencystringRequired
Exchange Rateheader.exchangeRate.ratenumberConditional
VAT Currencyheader.taxCurrencystringRequired
Issue Dateheader.issueDatedateRequired
Issue Timeheader.issueTimetimeRequired
Supply Start Dateheader.invoicePeriod.startDatedateConditional
Supply End Dateheader.invoicePeriod.endDatedateOptional
Due Dateheader.dueDatedateOptional
Reference Invoice Numberheader.referenceIdstringConditional
Note Issuance Reasonheader.noteIssuanceReasonstringConditional

Party Fields

Seller (Supplier) Details

Field NameGETS PathData TypeRequired
Seller IDparties.seller.partyIdstringOptional
Seller Nameparties.seller.namestringRequired
VAT Number - Typeparties.seller.taxIds[].typestringRequired
VAT Number - Valueparties.seller.taxIds[].valuestringRequired
Group VAT Number - Typeparties.seller.taxIds[].typestringConditional
Group VAT Number - Valueparties.seller.taxIds[].valuestringConditional
Additional Seller ID Numberparties.seller.registrationNumbers[].valuestringConditional
Additional Seller ID Typeparties.seller.registrationNumbers[].typestringOptional

Seller Address

Field NameGETS PathData TypeRequired
Address Line 1parties.seller.address.addressLine1stringRequired
Address Line 2parties.seller.address.addressLine2stringRequired
Building Numberparties.seller.address.additionalAddressData.buildingNumberstringRequired
Additional Numberparties.seller.address.additionalAddressData.additionalBuildingNumberstringOptional
District/Neighbourhoodparties.seller.address.additionalAddressData.districtstringRequired
Cityparties.seller.address.citystringRequired
Stateparties.seller.address.stateOrProvincestringRequired
Zip Codeparties.seller.address.postalCodestringRequired
Countryparties.seller.address.countrystringRequired

Buyer (Customer) Details

Field NameGETS PathData TypeRequired
Buyer IDparties.buyer.partyIdstringOptional
Buyer Nameparties.buyer.namestringConditional
VAT Number - Typeparties.buyer.taxIds[].typestringConditional
VAT Number - Valueparties.buyer.taxIds[].valuestringConditional
Group VAT Number - Typeparties.buyer.taxIds[].typestringConditional
Group VAT Number - Valueparties.buyer.taxIds[].valuestringConditional
Additional Buyer ID Numberparties.buyer.registrationNumbers[].valuestringConditional
Additional Buyer ID Typeparties.buyer.registrationNumbers[].typestringConditional

Buyer Address

Field NameGETS PathData TypeRequired
Address Line 1parties.buyer.address.addressLine1stringConditional
Address Line 2parties.buyer.address.addressLine2stringConditional
Building Numberparties.buyer.address.additionalAddressData.buildingNumberstringOptional
Additional Numberparties.buyer.address.additionalAddressData.additionalBuildingNumberstringOptional
District/Neighbourhoodparties.buyer.address.additionalAddressData.districtstringOptional
Cityparties.buyer.address.citystringConditional
Stateparties.buyer.address.stateOrProvincestringOptional
Zip Codeparties.buyer.address.postalCodestringConditional
Countryparties.buyer.address.countrystringConditional

Line Item Fields

Line Item Details

Field NameGETS PathData TypeRequired
Line Item IDlineItems[].idstringRequired
Line Item TypelineItems[].lineTypestringOptional
Item DescriptionlineItems[].descriptionstringRequired
Unit PricelineItems[].price.amountnumberRequired
Discount per UnitlineItems[].discountsOrCharges[].amountnumberRequired
Net Unit PricelineItems[].netPricenumberRequired
Line Item QtylineItems[].quantitynumberRequired
Units of MeasurementlineItems[].unitCodestringOptional
ChargeslineItems[].discountsOrChargesnumberRequired
Line Item DiscountlineItems[].lineLevelDiscountnumberRequired
Line Item Taxable AmountlineItems[].lineTaxableValuenumberRequired
VAT Category CodelineItems[].taxCategorystringRequired
VAT Exemption Reason CodelineItems[].taxExemptionReasonCodestringRequired
VAT Exemption Reason TextlineItems[].taxExemptionReasonstringRequired
VAT Rate On Line ItemlineItems[].taxRatenumberRequired
Line Item VAT AmountlineItems[].taxAmountnumberRequired
Line Item Sub TotallineItems[].lineTotalnumberRequired

Tax & Totals

Summary Totals

Field NameGETS PathData TypeRequired
Summation of Line Taxable Valuestotals.totalLineTaxableAmountnumberRequired
Discount at document leveltotals.totalAllowancesnumberRequired
Total Taxable Amount Excluding VATtotals.totalAmountExcludingTaxnumberRequired
VAT Totaltotals.totalTaxAmountnumberRequired
Invoice Total Amounttotals.totalAmountIncludingTaxnumberRequired
Pre-Paid Amounttotals.prepaidAmountnumberRequired
Amount Due for Paymenttotals.amountDuenumberRequired
Rounding Amounttotals.roundingAmountnumberOptional

Payment Information

Field NameGETS PathData TypeRequired
Payment Meanspayment.paymentMeans[].paymentMeansCodestringOptional
Payment Termspayment.paymentTerms[].notestringConditional
Payee Account Numberpayment.paymentMeans[].creditTransferInfo.payeeFinancialAccountIdstringConditional

Business Configuration

Field NameGETS PathData TypeRequired
Self Billedmeta.config.isSelfBilledbooleanRequired
Third Partymeta.config.isThirdPartybooleanRequired
Exportmeta.config.isExportbooleanRequired
Summarymeta.config.isSummarybooleanRequired
Nominal Supplymeta.config.isNominalbooleanRequired
Prepaymentmeta.config.isPrepaymentbooleanRequired
Adjustedmeta.config.isAdjustedbooleanRequired

Saudi Arabia (KSA) Extensions

Prepayment Details Extensions

Field NameGETS PathData TypeRequired
Prepayment IDextensions.sa_prepayment[].paymentIdstringConditional
Prepayment Issue Date & Timeextensions.sa_prepayment[].issueDatedatetimeConditional
Prepayment Document Type Codeextensions.sa_prepayment[].documentTypestringConditional
Prepayment VAT Category Codeextensions.sa_prepayment[].vatCategorystringConditional
Prepayment VAT Rateextensions.sa_prepayment[].vatRatenumberConditional
Prepayment Taxable Amountextensions.sa_prepayment[].taxableAmountnumberConditional
Prepayment Tax Amountextensions.sa_prepayment[].taxAmountnumberConditional
Prepayment Adjustment Amountextensions.sa_prepayment[].adjustmentAmountnumberConditional

KSA Digital Signature Extensions

Field NameGETS PathData TypeRequired
Invoice Counter Valueextensions.sa_digital.icvstringRequired
Previous Invoice Hashextensions.sa_digital.pihstringRequired
QR Codeextensions.sa_digital.qrCodestringRequired
Digital Signatureextensions.sa_digital.digitalSignaturestringRequired

Billing Frequency

Field NameGETS PathData TypeRequired
Billing Frequencyheader.invoicePeriod.frequencystringOptional

Malaysia (MY) Extensions

Malaysia's e-invoicing system through MyInvois requires specific field extensions for LHDN compliance.

MyInvois Identification Fields

Field NameGETS PathData TypeRequired
MyInvois Document IDextensions.my_identification.documentIdstringRequired
MyInvois Submission UIDextensions.my_identification.submissionUidstringRequired
Validation DateTimeextensions.my_identification.validationDateTimedatetimeRequired
Software Provider IDextensions.my_identification.softwareProviderIdstringRequired
Digital Certificate Serial Numberextensions.my_identification.certificateSerialstringRequired

Malaysia Tax Classification Codes

Field NameGETS PathData TypeRequired
Classification Categoryextensions.my_classification.categorystringRequired
Product Service Codeextensions.my_classification.productServiceCodestringConditional
MSIC Codeextensions.my_classification.msicCodestringOptional
Tax Typeextensions.my_classification.taxTypestringRequired
Tax Exemption Detailsextensions.my_classification.exemptionDetailsstringConditional

Malaysia Payment Information

Field NameGETS PathData TypeRequired
Payment Modeextensions.my_payment.modestringRequired
Payment Termsextensions.my_payment.termsstringOptional
Bank Account Numberextensions.my_payment.bankAccountstringConditional
Payment Reference Numberextensions.my_payment.referenceNumberstringOptional

United Arab Emirates (UAE) Extensions

UAE's Federal Tax Authority (FTA) requires specific extensions for e-invoicing compliance.

FTA PINT Identification

Field NameGETS PathData TypeRequired
FTA Invoice Referenceextensions.ae_identification.ftaInvoiceRefstringRequired
Tax Registration Number (TRN)extensions.ae_identification.trnstringRequired
UUIDextensions.ae_identification.uuidstringRequired
Submission Date & Timeextensions.ae_identification.submissionDateTimedatetimeRequired
Clearance Statusextensions.ae_identification.clearanceStatusstringRequired

UAE Tax Details

Field NameGETS PathData TypeRequired
VAT Category Codeextensions.ae_tax.vatCategoryCodestringRequired
VAT Exemption Reason Codeextensions.ae_tax.exemptionReasonCodestringConditional
VAT Exemption Reason Textextensions.ae_tax.exemptionReasonTextstringConditional
Tax Scheme IDextensions.ae_tax.taxSchemeIdstringRequired

UAE Multi-Language Support

Field NameGETS PathData TypeRequired
Arabic Invoice Descriptionextensions.ae_multilang.descriptionArstringOptional
Arabic Line Item Nameextensions.ae_multilang.lineItemNameArstringOptional
Document Language Codeextensions.ae_multilang.languageCodestringRequired

Belgium (BE) Extensions

Belgium's e-invoicing system follows EU standards with Peppol network integration.

Peppol Identification

Field NameGETS PathData TypeRequired
Peppol BIS Versionextensions.be_identification.peppolBisVersionstringRequired
Endpoint IDextensions.be_identification.endpointIdstringRequired
Participant ID Schemeextensions.be_identification.participantSchemestringRequired
Supplier Endpoint IDextensions.be_identification.supplierEndpointIdstringRequired
Customer Endpoint IDextensions.be_identification.customerEndpointIdstringRequired

Belgium VAT Registration

Field NameGETS PathData TypeRequired
Company VAT Numberextensions.be_vat.companyVatNumberstringRequired
VAT Identification Schemeextensions.be_vat.identificationSchemestringRequired
Reverse Charge Indicatorextensions.be_vat.reverseChargeIndicatorbooleanOptional
Intra-community Supplyextensions.be_vat.intracommunitySupplybooleanOptional

Belgium EN 16931 Compliance

Field NameGETS PathData TypeRequired
EN Specification Identifierextensions.be_compliance.enSpecificationIdstringRequired
Process Control Referenceextensions.be_compliance.processControlRefstringRequired
Business Process Typeextensions.be_compliance.businessProcessTypestringRequired
Contracting Authorityextensions.be_compliance.contractingAuthoritystringConditional

Germany (DE) Extensions

Germany's e-invoicing system follows EU directives with XRechnung format requirements.

XRechnung Identification

Field NameGETS PathData TypeRequired
XRechnung Versionextensions.de_identification.xrechnungVersionstringRequired
Leitweg IDextensions.de_identification.leitwegIdstringRequired
Buyer Referenceextensions.de_identification.buyerReferencestringRequired
Electronic Address Schemeextensions.de_identification.electronicAddressSchemestringRequired

Germany Tax Registration

Field NameGETS PathData TypeRequired
Tax Number (Steuernummer)extensions.de_tax.taxNumberstringRequired
VAT Identification Numberextensions.de_tax.vatIdentificationNumberstringRequired
Tax Officeextensions.de_tax.taxOfficestringOptional
Reverse Charge VATextensions.de_tax.reverseChargeVatbooleanOptional

Germany Payment Terms

Field NameGETS PathData TypeRequired
Payment Referenceextensions.de_payment.paymentReferencestringOptional
SEPA Credit Transferextensions.de_payment.sepaCreditTransferbooleanOptional
IBANextensions.de_payment.ibanstringConditional
BICextensions.de_payment.bicstringConditional
Payment Discount Termsextensions.de_payment.discountTermsstringOptional

Germany GoBD Archiving

Field NameGETS PathData TypeRequired
Archiving Timestampextensions.de_archiving.timestampdatetimeRequired
Document Hashextensions.de_archiving.documentHashstringRequired
Archive System IDextensions.de_archiving.archiveSystemIdstringRequired
Retention Periodextensions.de_archiving.retentionPeriodstringRequired
GoBD Certificate Numberextensions.de_archiving.gobdCertificateNumberstringOptional