MYOB and Procurify integration
MYOB runs accounting for mid-market SMEs across Australia and New Zealand. Procurify manages procurement, purchase orders, requisitions, and spend. Connecting the two keeps your procurement records in sync with your accounting ledger. Approved purchase orders and paid bills flow from Procurify into MYOB without manual re-entry, mapped to the correct suppliers and GL accounts, and every transaction carries a full audit trail.
What moves between them
Purchase orders and bills flow from Procurify into MYOB on a schedule you define (typically daily after the procurement close). Procurify vendors are mapped to MYOB suppliers and Procurify account codes map to MYOB GL categories so the bills land in the correct ledger accounts. Requisitions are read from Procurify but not written; purchase orders and bills are read-only from Procurify's perspective. Reference data such as vendors and departments are enriched in both directions so downstream approvals in Procurify reflect valid MYOB suppliers and cost centers.
How ml-connector handles it
ml-connector stores the Procurify OAuth2 credentials and MYOB company file password encrypted in its database. It refreshes the Procurify bearer token (24-hour lifetime) before each batch of calls and sends the MYOB OAuth token plus company file password in the three required headers on every MYOB request. It polls Procurify for bills and purchase orders newer than the last sync timestamp using date-range filters, then upserts them into MYOB mapped to matching suppliers and GL account categories. When updating MYOB records, it first reads the current RowVersion to avoid 409 conflicts, and if a stale RowVersion is encountered, it retries the read-update cycle. Rate limiting is handled with exponential backoff. Every record is logged with full audit trail including source entity ID, mapped fields, and outcome, so any failed flow can be replayed once the underlying issue is fixed.
A real-world example
A regional distributor runs MYOB for accounting and Procurify for spend approval across three locations. Before the integration, the finance team waited for the procurement manager to export approved purchase orders from Procurify each week, then manually created bill records in MYOB with the same line items and vendor names, introducing data entry errors and reconciliation delays. With MYOB and Procurify connected, each approved PO and paid bill flows into MYOB automatically, mapped to the correct supplier and GL account for each location. The manual data entry step is gone, and month-end reconciliation now starts with procurement and accounting already aligned.
What you can do
- Pull approved purchase orders from Procurify into MYOB, mapped to the correct MYOB suppliers and general ledger accounts.
- Import paid bills from Procurify with full line-item detail, ready for matching against MYOB purchase orders.
- Map Procurify vendors to MYOB suppliers and Procurify account codes to MYOB GL categories on a per-customer basis.
- Handle MYOB's dual authentication (OAuth2 plus company file password) and RowVersion conflict resolution on updates.
- Poll on a schedule you control with automatic retry and a full audit trail on every record pulled or rejected.
Questions
- Which direction does data move between MYOB and Procurify?
- The main flow is Procurify into MYOB. Approved purchase orders and paid bills move from Procurify into MYOB, while vendors and account codes are enriched in both directions to ensure procurement and accounting stay aligned. Procurify bills and payments are read-only, so ml-connector does not write financial entries back into Procurify.
- How does the integration handle MYOB's unusual dual authentication?
- MYOB requires three headers on every call: an OAuth2 bearer token (good for 20 minutes), an API key, and a Base64-encoded company file username and password. ml-connector stores all three encrypted, refreshes the bearer token before each batch, and includes all three headers on every request so your company file stays protected.
- What happens if a purchase order or bill in MYOB is edited while ml-connector is updating it?
- MYOB uses the RowVersion field to detect concurrent edits and returns a 409 conflict if the version is stale. ml-connector catches the 409, re-reads the current RowVersion, and retries the update so neither the manual edit nor the sync is lost.
Related integrations
More MYOB integrations
Other systems that connect to Procurify
Connect MYOB and Procurify
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started