Microsoft Dynamics NAV and PayPal integration
Microsoft Dynamics NAV tracks your orders, invoices, and general ledger. PayPal processes your payments and holds your cash. Connecting the two keeps your accounting and your cash flow aligned. Sales orders become PayPal invoices or orders so your customers can pay online, and payment confirmations flow back into NAV to close invoices and verify receipts. ml-connector handles the different authentication models and translates entities between the two systems so your finance team spends less time chasing discrepancies.
What moves between them
The main flow is NAV to PayPal for new sales orders and invoices. ml-connector reads NAV sales orders and creates PayPal invoices or orders so customers can pay online. When a PayPal payment arrives, ml-connector matches it back to the NAV invoice by reference and records the payment confirmation. Reference data such as customer names and IDs is synchronized in both directions. Because NAV GL is immutable, ml-connector reads GL entries to verify cash and revenue accounts but never writes GL transactions back into NAV.
How ml-connector handles it
ml-connector accepts NAV's OAuth 2.0 credentials scoped to Business Central and manages the token lifecycle. For on-premises NAV, it accepts the custom server URL and port. On the PayPal side, it stores the OAuth client credentials and bearer token, and it presents the RSA-SHA256 signature verification on every incoming webhook to confirm PayPal is the sender. When NAV webhooks trigger on a sales invoice change, ml-connector reads the full invoice and line items, creates a PayPal invoice or order, and stores the PayPal invoice ID as a reference in NAV. When a PayPal payment webhook arrives, ml-connector reads the transaction details, searches NAV invoices for the matching reference, and records the payment status. Customer data is synchronized bidrectionally so valid customers exist in both systems. Because PayPal transactions are searchable only in a 31-day window, ml-connector aligns sync cadence with billing cycles to catch all reconciliation within that window. Every record carries an audit trail and can be replayed if the downstream system rejects the write.
A real-world example
A mid-size e-commerce company runs Microsoft Dynamics NAV for order management and accounting, and uses PayPal to process customer payments on its web storefront. Before the integration, the order-entry team created sales invoices in NAV manually after PayPal confirmations arrived, then the accountant matched payments to invoices by hand and posted cash receipts. Invoices sat unpaid in NAV until the accountant confirmed the payment had landed in PayPal. With NAV and PayPal connected, each new sales order in NAV automatically creates a PayPal invoice that the customer can pay from their email. When the payment clears, the invoice closes in NAV immediately and the cash receipt posts to the GL from the PayPal confirmation. The order-to-cash cycle shrinks from multi-step manual to automatic, and the reconciliation is always current.
What you can do
- Create PayPal invoices and orders from NAV sales orders and invoices, so customers pay online without leaving your system.
- Record PayPal payment confirmations back into NAV and mark invoices as paid when cash arrives.
- Synchronize customer records between NAV and PayPal so invoices reference valid customers in both systems.
- Verify NAV GL cash and revenue accounts against PayPal transaction history to confirm all payments are accounted for.
- Validate RSA-SHA256 PayPal webhook signatures on every incoming event and replay failed transactions if the downstream write was rejected.
Questions
- Can ml-connector write transactions into NAV's general ledger?
- No. NAV GL accounts and GL entries are immutable once posted. ml-connector reads GL entries to verify cash and revenue accounts exist and match PayPal transactions, but all GL postings remain under NAV's control. Payment confirmations record against invoices, not directly to GL.
- What happens when a PayPal payment arrives but no matching NAV invoice is found?
- ml-connector stores the PayPal transaction with a reference note and flags it as unmatched in the audit trail. The record is held until the invoice appears in NAV, then reconciled on the next sync cycle. Unmatched payments are visible in the connector's dashboard so the finance team can investigate.
- How does ml-connector handle the 31-day transaction search window in PayPal?
- ml-connector aligns its reconciliation cycle to your billing period, typically monthly, so all transactions fall within the 31-day window. For older invoices or disputes, ml-connector records the transaction by its PayPal invoice ID rather than relying on timestamp search, so reconciliation remains accurate across any date range.
Related integrations
More Microsoft Dynamics NAV integrations
Other systems that connect to PayPal
Connect Microsoft Dynamics NAV and PayPal
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started