Oracle NetSuite Integration
UAE E-Invoicing for Oracle NetSuite
TrustBill connects your NetSuite account to the UAE FTA e-invoicing network through Microvista Technologies, an FTA-accredited ASP. Start with a simple export, or push invoices automatically from NetSuite. No ERP migration required.
How TrustBill connects to Oracle NetSuite
NetSuite is a cloud product, so it needs no gateway or agent on a local machine. TrustBill takes your sales invoices and credit memos, validates them against the FTA business rules, converts them to PINT-AE, submits them through an FTA-accredited ASP over the Peppol network, and returns the FTA UUID and status.
There are three ways to feed NetSuite invoices to TrustBill. Export and upload works today with nothing to install. Pushing from NetSuite, using a script in your own account or your integration platform such as Celigo, Boomi or Workato, also works today through the TrustBill Partner API. A native connector that pulls from NetSuite is scoped per customer on request. We do not describe it as generally available.
Which method fits your NetSuite account
Option A, export and upload: a Saved Search exports posted invoices to CSV or Excel, and you upload the file to TrustBill. It takes hours to set up and suits pilots and lower volumes.
Option B, push from NetSuite: a script or integration flow sends each approved invoice to TrustBill and writes the FTA UUID and status back to the invoice. It typically takes one to two weeks of NetSuite developer or partner time and suits most mid-size accounts.
Option C, native pull connector: TrustBill reads invoices from NetSuite using REST web services and SuiteQL with OAuth 2.0 or token-based authentication. Scope, timeline and price are agreed after you answer the short NetSuite questionnaire.
Setup guide
1. Choose the option — Answer the NetSuite questionnaire if you are unsure; we reply with a recommendation. 2. Populate TRNs — Store the 15-digit TRN on each customer and on each UAE subsidiary. 3. Map tax codes — Map every NetSuite tax code you use to a PINT-AE category: S, Z, E, O or RC. 4. Create status fields — Add FTA status, FTA UUID and reject-reason fields to invoices and credit memos (Options B and C). 5. Test in the sandbox — Run the UAT cases from the technical guide with sample invoices. 6. Go live — Switch to live credentials and ramp up over the first days.
The technical guide contains the full API details, a script skeleton, the signed-webhook procedure and a UAT checklist.
PINT-AE compliance for NetSuite invoices
NetSuite stores invoices in its own record structure, which differs from the PINT-AE UBL profile. TrustBill converts every field the FTA requires: invoice number and date, seller and buyer TRN, line details, VAT category and rate, and UAE-specific indicators such as free zone and reverse charge.
Each converted invoice is validated before submission, so problems such as a missing buyer TRN, an unmapped tax code or a line total that does not reconcile are caught and reported with a clear reason, instead of being rejected later by the network. Rejections come back as a status you can write onto the NetSuite invoice.
NetSuite field → PINT-AE mapping
The mapping TrustBill applies when converting a NetSuite transaction to PINT-AE. Standard NetSuite field IDs are shown; custom fields such as custentity_trn are examples, because each account names its own.
| NetSuite field | PINT-AE / UBL 2.1 field | Note |
|---|---|---|
| transaction.tranid (Document Number) | cbc:ID | Must be unique per TRN. |
| transaction.trandate | cbc:IssueDate | ISO date. Must not be in the future. |
| customer tax registration field or custentity_trn | cac:AccountingCustomerParty/cac:PartyTaxScheme/cbc:CompanyID | Buyer TRN, 15 digits. Required for B2B UAE invoices. |
| subsidiary tax registration number (OneWorld) | cac:AccountingSupplierParty/cac:PartyTaxScheme/cbc:CompanyID | Your TRN. One per subsidiary that holds a TRN. |
| line description / item display name | cac:Item/cbc:Name or cbc:Description | UTF-8; Arabic text is supported. |
| line quantity × rate | cbc:InvoicedQuantity, cac:Price/cbc:PriceAmount, cbc:LineExtensionAmount | Rate excludes tax. |
| line tax code (SuiteTax or classic) | cac:ClassifiedTaxCategory (S = 5%, Z = 0%, E = exempt, O = out of scope, RC = reverse charge) | Each NetSuite tax code must map to one category. |
| transaction currency, exchangerate | cbc:DocumentCurrencyCode | AED for domestic. Non-AED needs the exchange rate. |
| total, taxtotal | cac:LegalMonetaryTotal/cbc:PayableAmount | Reconciled against line totals plus tax. |
| customer free-zone custom field | Extension flag; VAT category derived | Set once on the customer record. |
| credit memo createdfrom | cbc:InvoiceTypeCode="381"; cac:BillingReference/cac:InvoiceDocumentReference | Create credit memos from the invoice so the parent is linked. |
Common NetSuite → PINT-AE validation errors
The validation errors most often hit by NetSuite-sourced invoices, and what to fix on the NetSuite side. TrustBill returns these codes in the dashboard and through the status webhook.
| Error code | Meaning | Fix in NetSuite |
|---|---|---|
| PAE-BR-01 | Buyer TRN missing or malformed. | Customer record: enter the 15-digit TRN in the tax registration field or your TRN custom field. |
| PAE-BR-04 | Seller TRN missing. | OneWorld: enter the tax registration number on the subsidiary. Single company: on the company information record. |
| PAE-BR-11 | Line total does not equal quantity × price. | Correct rounding on quantity or rate so the line reconciles. Check item rounding settings if it recurs. |
| PAE-BR-12 | Tax code not mapped to a PINT-AE category. | Map each NetSuite tax code to S, Z, E, O or RC in TrustBill Settings, Tax Mapping. |
| PAE-BR-14 | Currency is not AED and no exchange rate is supplied. | Make sure the invoice has both currency and exchange rate. Check currency rates for the invoice date. |
| PAE-BR-21 | Credit memo has no valid parent invoice. | Create the credit memo from the invoice (Actions, Credit) rather than as a standalone record. |
| PAE-BR-31 | Free-zone flag set without a supply-place address in the zone. | Set the free-zone field on the customer and check the ship-to address is in the free zone. |
OneWorld, subsidiaries and multiple TRNs
Each NetSuite subsidiary that holds a UAE TRN becomes its own legal entity in TrustBill with its own credentials, and your flow selects the right one by subsidiary. A UAE VAT group uses the group TRN as the seller TRN on member invoices; confirm the treatment with your tax adviser. Subsidiaries outside the UAE are not connected.
Pricing and timeline
Export and upload can start the same day. Pushing from NetSuite typically takes one to two weeks of NetSuite developer time. A native connector is scoped after the questionnaire, with the timeline and price confirmed by email.
Published pricing for ERP integrations is on the ERP integration pricing page, and invoice credit plans are on the pricing page.
Need Oracle NetSuite connected to FTA e-invoicing?
Answer a short questionnaire (about 5 minutes). We review your setup and reply by email with the integration plan, timeline and price.
Request Oracle NetSuite integrationFrequently Asked Questions
Is Oracle NetSuite cloud or on-premise?
NetSuite is cloud-only. The on-premise Oracle products are E-Business Suite and JD Edwards. Oracle Fusion Cloud ERP is a separate cloud product with its own guide.
Does TrustBill have a native NetSuite connector?
Not as a generally available product today. You can connect now by exporting and uploading, or by pushing invoices from NetSuite through a script or integration platform. A native connector is scoped per customer on request.
Do I need to install anything in NetSuite?
No SuiteApp is needed. Export and upload needs nothing installed. Pushing from NetSuite uses scripts or flows that run in your own account.
Where do I keep the customer TRN in NetSuite?
In the customer's tax registration field or in a custom field. It must be 15 digits. The questionnaire asks where you keep it so we can map it.
Can you handle several subsidiaries with different TRNs?
Yes. Each subsidiary with a UAE TRN is its own legal entity in TrustBill, with its own credentials.
What happens if an invoice is rejected?
TrustBill returns a rejected status with a reason. You can write it onto the NetSuite invoice, fix the cause, and resubmit, or issue a credit memo where the rules require one.
Is it secure?
Calls use HTTPS with a key pair and a per-entity secret, and status webhooks are signed. We ask only for a least-privilege integration role in NetSuite, and never for passwords through the request form.
Related guides and integrations
Oracle NetSuite technical guide
API details, mapping, webhooks and the UAT checklist.
ERP integration pricing
Published pricing and lead times for every ERP.
Oracle E-Invoicing UAE
Fusion, E-Business Suite and JD Edwards overview.
Oracle Fusion Cloud ERP guide
Enterprise guide for Fusion with Oracle Integration Cloud.
UAE E-Invoicing Guide
Complete guide to the 2026-2027 FTA mandate.