ERP Connections Overview
ERP connections link TaprNext to your accounting system. Approved AP invoices are posted to the ERP as purchase invoices. For AR, sales invoices are fetched from the ERP and sent via PEPPOL.
How ERP Integration Works
Section titled “How ERP Integration Works”The integration operates bidirectionally:
- AP (Inbound): TaprNext posts purchase invoices to your ERP after approval
- AR (Outbound): Sales invoices are fetched from the ERP and prepared for PEPPOL transmission
ERP connections are configured per Legal Entity in Tapr Settings → General → Legal Entity Setup. Each entity can use a different ERP type and company.
Supported ERPs
Section titled “Supported ERPs”| ERP | Type Code | AP (Post) | AR (Fetch) |
|---|---|---|---|
| ERPNext | erpnext | Yes | Yes |
| Microsoft Dynamics 365 | d365 | Yes | Yes |
| SAP S/4HANA | sap_s4hana | Yes | Yes |
| SAP Business One | sap_b1 | Yes | Yes |
| Oracle NetSuite | netsuite | Yes | Yes |
| Xero | xero | Yes | Yes |
| QuickBooks | quickbooks | Yes | Yes |
| Odoo | odoo | Yes | Yes |
| Sage Intacct | sage | Yes | Yes |
| Bexio | bexio | Yes | Yes |
| Abacus | abacus | Yes | Yes |
Configuration Per Entity
Section titled “Configuration Per Entity”Each Legal Entity row requires:
| Field | Description |
|---|---|
| ERP Integration Enabled | Master toggle for this entity’s ERP connection |
| ERP Type | Select the ERP from the supported list |
| ERP Company Name | Company name as it appears in the ERP |
| AR ERP Fetch Enabled | Enable fetching sales invoices for PEPPOL sending |
| ERP Config (JSON) | Connection details (URL, default accounts, mappings) |
| ERP Secrets (JSON) | Encrypted credentials (API keys, tokens, passwords) |
Updating Credentials
Section titled “Updating Credentials”ERP credentials are encrypted at rest. To update:
- Check the Change ERP Secrets checkbox
- Enter new credentials in the ERP Secrets field
- Save—credentials are encrypted and stored
- The checkbox resets automatically
Partial updates are supported; you can update single credential fields without re-entering all others.
Quick Setup Guides
Section titled “Quick Setup Guides”ERPNext
Section titled “ERPNext”// ERP Config{ "url": "https://your-erpnext.com", "company": "Your Company Name", "default_expense_account": "5000 - Expenses - COMP", "default_payable_account": "2100 - Creditors - COMP"}
// ERP Secrets{ "api_key": "your-api-key", "api_secret": "your-api-secret"}Microsoft Dynamics 365
Section titled “Microsoft Dynamics 365”// ERP Config{ "environment_url": "https://your-org.crm.dynamics.com", "company": "Your Legal Entity", "tenant_id": "your-azure-tenant-id"}
// ERP Secrets{ "client_id": "app-registration-client-id", "client_secret": "app-registration-secret"}Testing Your Connection
Section titled “Testing Your Connection”After configuring:
- Test Connection—verifies authentication and API access
- Test Post—creates a draft document in the ERP (not submitted)
- Review the test document in your ERP to confirm field mapping
Sync Behavior
Section titled “Sync Behavior”| Direction | What happens | Frequency |
|---|---|---|
| AP → ERP | Approved invoices are posted as purchase invoices | On approval (or manually) |
| ERP → AR | Sales invoices with PEPPOL flag are fetched for sending | Every 10 minutes |
AP Workflow States
Section titled “AP Workflow States”Configure custom workflow states for ERP posting:
| State | When |
|---|---|
| ERP Ready State | Invoice is approved and ready for posting |
| Post ERP Success State | Invoice was posted successfully |
| Post ERP Error State | Posting failed—see error log |
Multi-ERP Setup
Section titled “Multi-ERP Setup”Different entities can use different ERPs:
| Entity | ERP | Company |
|---|---|---|
| Acme GmbH (DE) | ERPNext | Acme GmbH |
| Acme BV (NL) | D365 | NL Operating |
| Acme AB (SE) | SAP S/4HANA | SE Subsidiary |
Each entity’s ERP config and credentials are independent.
Troubleshooting
Section titled “Troubleshooting”| Issue | Resolution |
|---|---|
| ”Connection refused” | Verify URL, ensure HTTPS, check firewall rules |
| ”Authentication failed” | Regenerate API keys or check OAuth token expiry |
| ”Permission denied” | Verify ERP user has required roles (Purchase User, Sales User) |
| “Company mismatch” | Ensure ERP Company Name matches exactly |
| ”Duplicate document” | Invoice already posted—check the ERP for existing entry |