Exact Online and Procurify integration
Exact Online runs your complete accounting and ERP. Procurify runs your procurement and spend controls. When the two systems are connected, purchase requisitions approved in Procurify flow into Exact Online as purchase orders, vendor records sync bidirectionally, and bills posted in Procurify match the invoices arriving in Exact Online. ml-connector bridges the very different authentication models on each side and keeps your procurement process synchronized without manual re-entry or duplicate vendor records.
What moves between them
The primary flow moves purchase orders and requisitions from Procurify into Exact Online. When a requisition is approved in Procurify, ml-connector reads it from the Procurify API and maps it to an Exact Online purchase order, allocated to the GL accounts and cost centers selected in Procurify. Vendor records flow bidirectionally: new vendors created in Procurify are added to Exact Online as supplier accounts, and changes to vendor details sync both ways. Bills posted in Procurify flow into Exact Online as purchase invoices, matched to the Procurify-sourced purchase orders. GL account codes and cost centers are mapped once during setup so every PO line lands on a valid GL dimension in Exact Online.
How ml-connector handles it
ml-connector stores Exact Online OAuth credentials and refreshes the access token before each call to respect the 10-minute lifetime. For Procurify it stores the client credentials and obtains fresh tokens on the 24-hour refresh cycle. On the Exact side, it uses the OData query syntax to filter purchase orders by last-modified date and constructs separate fetch calls for vendor accounts and GL data since joins are not supported. On the Procurify side it polls with date-range filters to find new and updated purchase orders and requisitions. Vendor names and IDs are matched across both systems to prevent duplicates, and GL account codes from Procurify are validated against Exact Online's GL master before posting. Because Procurify purchase orders are generated from requisitions, not created via a direct endpoint, ml-connector reads approved requisitions and maps them to Exact Online PO structure with the correct vendor, line items, GL codes, and cost allocations. The Exact Online division ID is stored per customer instance so the API calls route to the right tenant.
A real-world example
A mid-market professional services firm runs Exact Online for accounting and project costing across multiple cost centers, and uses Procurify for procurement controls and approval workflows. Before the integration, the procurement team approved purchase orders in Procurify, then manually created matching POs in Exact Online, re-entered vendor details from Procurify into Exact's supplier master, and reconciled bill receipt across both systems during month-end close. With Procurify and Exact Online connected, approved purchase requisitions automatically flow into Exact Online as POs with the correct GL codes and cost center allocation, new vendors created in Procurify appear in Exact Online's supplier list, and incoming bills are matched to their source POs without re-keying. The procurement team now sees approved POs instantly in Exact Online, and the accounting team closes the month with invoices already matched to their source orders.
What you can do
- Create Exact Online purchase orders from approved Procurify requisitions, mapped to the correct GL accounts and cost centers.
- Sync vendor records bidirectionally between Procurify and Exact Online, preventing duplicate supplier accounts and keeping vendor master data aligned.
- Map Procurify department and account codes to Exact Online cost centers and GL accounts so procurement spend lands on valid dimensions.
- Handle Exact Online OAuth token refresh cycles and Procurify client credentials rotation transparently on every call.
- Poll Procurify on a schedule tied to your approval workflow, with full audit history on every purchase order and bill.
Questions
- Which direction do purchase orders and vendors flow between Exact Online and Procurify?
- Purchase requisitions flow from Procurify into Exact Online as purchase orders, allocated to the GL accounts and cost centers selected in Procurify. Vendor records flow bidirectionally: new vendors created in Procurify sync into Exact Online as supplier accounts, and updates to vendor contact and payment details sync both ways. Bills posted in Procurify flow into Exact Online as purchase invoices matched to their source Procurify-sourced purchase orders.
- How does the integration handle the different authentication models between the two systems?
- Exact Online uses OAuth 2.0 Authorization Code Grant with short-lived 10-minute access tokens and 30-day refresh tokens, requiring token refresh before each call. Procurify uses OAuth 2.0 client credentials with 24-hour tokens. ml-connector stores both credential sets encrypted and handles token refresh transparently, obtaining a fresh Exact Online token on every request and rotating Procurify credentials on the 24-hour cycle.
- Why does the integration need to read Procurify requisitions instead of directly creating purchase orders?
- Procurify purchase orders are generated from approved requisitions and order items, not created via a direct API endpoint. ml-connector reads approved requisitions from Procurify, extracts the vendor, line items, GL codes, and cost center allocation, then maps them into Exact Online purchase order structure so the two systems stay in sync. This ensures every PO in Exact Online originated from an approved Procurify workflow.
Related integrations
More Exact Online integrations
Other systems that connect to Procurify
Connect Exact Online and Procurify
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started