Microsoft Dynamics NAV and Stampli integration
Microsoft Dynamics NAV handles your general ledger and vendor master. Stampli automates your accounts payable process with invoice capture and approval workflows. Connecting the two keeps your invoice records and vendor information synchronized without manual re-entry. Invoices approved in Stampli flow into NAV's general ledger, and vendor changes in either system stay aligned across both platforms.
What moves between them
The main flow runs from Stampli into Microsoft Dynamics NAV. Approved invoices exported by Stampli are retrieved via SFTP polling and posted into NAV's general ledger as purchase journals, mapped to the matching NAV vendors and GL dimensions. Vendor and GL account reference data flow in both directions to keep NAV's vendor master and chart of accounts aligned with Stampli's configuration. Invoices are read-only in Stampli's file-based interface, so ml-connector never writes financial entries back; payment execution remains in Stampli's hands while NAV maintains the accounting record.
How ml-connector handles it
ml-connector stores SFTP credentials encrypted and polls Stampli's outbound directory on a schedule you define (typically every 15 to 30 minutes) to detect new invoice and vendor exports. On the NAV side, it authenticates via OAuth 2.0 to the cloud product or basic auth to on-premises instances, validates the tenant and company identifiers, and accepts the configured base URL for either deployment model. Because Stampli's file-based interface has no push notifications, polling is the only viable sync mechanism. ml-connector implements duplicate detection across polling cycles, since Stampli CSV exports may repeat the same records. Vendors and GL dimensions are mapped and validated before invoices are posted, so each journal entry references valid NAV accounts and dimensions. NAV webhook subscriptions expire every 3 days, so ml-connector implements a subscription renewal loop to maintain the sync even if pull-based polling is the primary flow. For on-premises NAV, firewall rules and OData service configuration must be in place before the first connection. Every record carries a full audit trail and can be replayed if a downstream NAV posting fails.
A real-world example
A mid-sized distribution company runs Microsoft Dynamics NAV for finance and vendor management, and uses Stampli to automate accounts payable processing with invoice capture and approval workflows across two locations. Before the integration, the finance team exported approved invoices from Stampli weekly as CSV files and manually coded each to the correct NAV GL accounts and cost centers, a task that consumed 8 to 12 hours per week and introduced coding errors that surfaced during month-end close. With Stampli and NAV connected, each weekly export from Stampli flows automatically into NAV's general ledger with dimensions and accounts already mapped, eliminating the manual re-entry step. Vendor master changes in Stampli sync back to NAV, keeping the two systems aligned, and the finance team reclaims those hours for higher-value close activities.
What you can do
- Post approved Stampli invoices into Microsoft Dynamics NAV's general ledger on a polling schedule you control, mapped to the correct GL accounts and dimensions.
- Keep NAV vendor records synchronized with Stampli vendor updates by bidirectional vendor and GL dimension sync.
- Handle OAuth 2.0 authentication to NAV cloud instances and basic auth to on-premises NAV deployments, including NAV on-premises OData service validation.
- Implement duplicate detection across SFTP polling cycles to prevent duplicate journal postings in NAV when Stampli exports repeat records.
- Maintain a full audit trail on every invoice, vendor, and dimension record, with replay capability if a NAV posting fails or needs reversal.
Questions
- Which direction does data move between Microsoft Dynamics NAV and Stampli?
- The primary flow is Stampli into NAV. Approved invoices and vendor exports from Stampli are posted into NAV's general ledger and vendor master. Vendor and GL dimension reference data sync bidirectionally so that Stampli's configuration stays aligned with NAV's chart of accounts and vendor master. NAV general ledger entries are immutable once posted, so ml-connector never writes financial entries back to Stampli; payment execution remains in Stampli's hands.
- Does Stampli's SFTP-only integration require special setup compared to rest API connectors?
- Yes. Stampli publishes no public REST API, so ml-connector retrieves data by polling the SFTP outbound directory on a schedule (typically every 15 to 30 minutes). This means no webhook push, no API endpoints to validate, and no rate limits to manage. ml-connector implements duplicate detection to handle the fact that SFTP polls may retrieve the same records across multiple cycles.
- How does ml-connector handle the differences between NAV cloud and on-premises deployment models?
- ml-connector accepts either deployment type: for NAV cloud (Dynamics 365 Business Central online) it uses OAuth 2.0 to Microsoft Entra ID with the cloud base URL; for on-premises it uses basic auth or OAuth 2.0 with the customer's on-premises server hostname and port. On-premises deployments require the OData service to be enabled via NAV Server Administration and the OData port (7048) to be open through the firewall. NAV webhook subscriptions expire every 3 days, so ml-connector renews them to maintain sync even when pull-based polling is the primary flow.
Related integrations
More Microsoft Dynamics NAV integrations
Other systems that connect to Stampli
Connect Microsoft Dynamics NAV and Stampli
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started