Error messages and solutions per ERP package. This article covers package-specific errors. For generic API, webhook and connectivity issues: see Troubleshooting integrations.
Unit4 ERPx
Error messages with prefix U4 come from Unit4 ERPx. The solution is almost always on the software side, not with eConnect. The customer can download the XML file from the platform and forward it to the Unit4 administrator.
API500: Unknown error occurred booking the invoiceTime-out, >200 lines, 0-lines, duplicate VAT codesResubmit; manually in ERPx; check VAT schemeU4BadRequest: Invoice number already exists (3011/3010)Invoice already registeredCheck if invoice was submitted twice; check IDR recognitionAPI500: Could not find a VAT mapping 'P-XX9'Incorrect VAT code in XMLHave supplier send via Peppol; add mapping in AutopilotU4BadRequest: BET.VOORW not validNo payment term at creditorSet payment term in Unit4U4BadRequest: EI_AP_DEF_ACCOUNT not setDummy creditor not activeActivate Dummy Creditor, resubmit invoicesU4BadRequest: Betaalbaar valutabedrag moet afwijken van 0Invoice total is € 0.00Cannot be posted in Unit4U4Forbidden.JSON: User is not authorized (2030)M2M-eConnect user lost permissionsRestore M2M-eConnect user permissionsU4OK.JSON: System.Int32 overflowInvoice numbers exceeding 2,147,483,647Unit4-side; Unit4 is working on a solutionEmbeddedDocumentBinaryObject Base64 "data" prefixSource sender sends PDF with "data" prefix in Base64IDR removes prefix automatically; still possible for Peppol invoicesDueDate compensation: Unit4 cannot process invoices without a DueDate. eConnect sets the DueDate to invoice date + 30 days by default when this field is missing. This is configured per customer as PrivateObject in the PSB.
Invoice booked but PDF attachment missing: earlier connection breaks on the Unit4 side where the PDF was dropped are now being retried (confirmed by Platform & Integrations, May 2026). Remaining cases: see the diagnosis path below.
Diagnosis: invoice not received in ERPx without error message
This path applies to complaints like "Booked in eConnect but not visible in ERPx" or "invoice seems to have never arrived, no message in Document Journal".
Background: the Autopilot — Unit4 ERPx route is idempotent (match on invoice number + customer + supplier). On a match, ERPx is not called again and only a missing PDF is uploaded, while the platform still shows Booked. An empty Document Journal for the second submission therefore does not mean the invoice is lost, but usually that the idempotent check was triggered.
Steps:
Step 1: Identify the integration type
Determine the integration type of the recipient: Autopilot (Unit4 ERPx), other PSB route, direct SOAP API or SFTP. The interpretation of status labels differs per integration type.
Step 2: Collect a document ID
Collect one of the following IDs for the document:
documentId (from the PSB), orconsignmentId (from the platform).
One of these two is sufficient to look up the document in all internal systems.
Step 3: Consult Management API - Events (internal)
Open the document on documentId or consignmentId and consult the Events timeline. This shows per step which action was performed on the document (receipt, validation, submission to ERPx, retries, idempotent match, PDF upload). For SFTP integrations, this is the only place where the delivery status is visible.
Step 4: Recognise idempotent match
Do you see in Events that eConnect recognised the invoice as existing (invoice number + customer + supplier) and only did a PDF upload? Then this is expected behaviour — the invoice was already in ERPx from a previous submission. No escalation needed.
Step 5: Escalation (if needed)
Only if Events does not provide a conclusive picture: escalate to the technical team with at minimum:
documentId or consignmentId- recipient
partyId - integration type (Autopilot, other PSB route, SOAP, SFTP)
- customer name and ticket number
ABWInvoice (Agresso/Unit4)
The ABWInvoice transformation was built based on original test documents. Deviating document variants (e.g. free text invoices) may fail with "API400: Initializing failed". Solution: change request at Development for transformation extension.
Business Central
Error messages with prefix BC come from Business Central. Little influence from eConnect; the customer must check the BC configuration.
The prefix between brackets indicates the type of response that eConnect received from Business Central when booking the invoice:
[BC400] — a request rejected by Business Central (BC returned a 400-type error). This is almost always a validation or table relation error in the customer's BC configuration. The text directly after [BC400]: names the specific BC error.[BCBadRequest] / [BCNotFound] / [BCTooManyRequests] — similar BC-side responses (rejected request, not found, rate limit).[API400] — rejected by the eConnect API itself, for BC (e.g. an incorrect connection setting).
In all BC prefix cases, the solution is on the BC side (customer's configuration); eConnect has little influence here.
Refresh token expired / invalid_grantNo invoice sent for a long timeSelf-service: remove integration and reconnect in BCAPI400: action 'booking' not supportedConnection contains "booking" instead of "autobooking"Set correct value via ManagementApiBCNotFound: PSBWebhookReceiver_ReceiveHookOld connection corruptTechSupport remove old connectionBCTooManyRequestsBC API rate limit exceededDocument usually processed; refer to BC partnerBCBadRequest: Transaction Type value (ECONNECT)Transaction type missingAdded automatically during installation; manual for older versionsBCBadRequest: VAT Prod. Posting Group value (1)VAT value missing in VAT Product Posting GroupAdd value; check VAT MappingBC400: Internal_InvalidTableRelation — VAT Prod. Posting Group value (1)VAT value missing in table VAT Product Posting GroupAdd value to VAT Product Posting Group; check VAT configurationBC400: Application_FieldValidationException — Account type must be 'Posting' (G/L Account 3000 is 'Begin-Total')The G/L account used is a total line, not a postable accountUse a postable G/L account (Account type = Posting) in the Autopilot posting schemaBCNotFound: G-Account CodeG-account number not linked as bank accountAdd G-account to supplier in BCBadRequest Control 'DocAmount' is read-only (4PS)4PS version has made fields read-only"excludeAmounts": true via Management APIProperty 'Bank_Account_Code' does not exist (4PS BE)Belgian BC environment missing this field"excludeBankAccountCode": true via Management APIAFAS
No entityID found for companyPostcode check with Chamber of Commerce doesn't match (branch office)Correct Chamber of Commerce number on debtor cardInvoices marked as duplicateInvoice number + invoice date identical for different supplierseConnect-side problem; internal investigation neededVAT breakdown not taken over (Small Business)AFAS Small Business limitationNo solution on eConnect sideAllSolutions
Company-organisation not foundChamber of Commerce/VAT/OIN mismatchCheck identifiers in both systemsOrder number missingAllSolutions Logistics does not support order numbers on sales invoicesAdd manually in eConnectVAT errorsAllSolutions rounding calculation incorrectAllSolutions must resolve thisReset connection—MBDRAF > company > eConnect > Edit > today's date; then run VIMEVB or VIMEXBExact Online
ForbiddenInsufficient permissions (MyOffice doesn't work)Set up a full user with minimal permissionsinvalid_grant / No consent from userOAuth consent expired or revokedGrant consent again in Exact OnlineDigital mailbox not createdPermission problemCreate manually: My Exact > My contact details > Digital mailboxesAlready exists: Digital mailbox; Invalid: DivisionWrong administration linkedCompare division numbersGeneric ERP steps
The following steps apply to every ERP package:
- Test the connection: all packages require port 443 to the eConnect endpoint.
- Revoke software integration: Platform > Connections > Revoke key > also remove in the linked software.
- Resubmit documents: Inbox/Outbox > three dots > "Resubmit API download". For duplicate marking first "Mark as original".
Back to software integrations