ml-connector
MYOBMonday.com

MYOB and Monday.com integration

MYOB is your accounting source of truth. Monday.com is where your team coordinates work. When these two systems are connected, accounts payable bills and supplier records from MYOB flow into Monday.com work boards, keeping your team informed without manual data entry. Payment status changes in Monday.com can sync back to MYOB GL journals, creating a closed loop where accounting data and team visibility stay in sync.

How MYOB works

MYOB is a cloud and desktop accounting software for Australian and New Zealand SMEs. The MYOB Business API exposes contacts (suppliers, customers, employees), purchase bills, purchase orders, sale invoices, GL accounts, GL journals, inventory items, tax codes, and job codes through REST endpoints with OData v3 query parameters. Authentication requires OAuth2 Authorization Code flow plus company file username and password supplied in headers on every call. Access tokens expire in 20 minutes and refresh tokens last one week. MYOB does not support webhooks, so bills and supplier records must be polled using OData LastModified timestamps. Rate limits are 8 requests per second and 1 million requests per day per API key.

How Monday.com works

Monday.com is a work operating system built on boards containing items with typed columns. All operations use GraphQL single endpoint at https://api.monday.com/v2. Authentication supports Personal API Token (long-lived, single user) or OAuth 2.0 authorization code flow returning a Bearer access token. Monday.com natively provides Board, Item, Column, ColumnValue, Group, User, Workspace, and Webhook entities. Finance workflows are customer-configured on boards with columns holding semantic meaning. Monday.com sends push notifications for create, update, and delete events on items and columns; webhooks require one subscription per board per event type and offer JWT signature verification on app webhooks. Rate limits depend on plan tier: Free to Standard allow 1,000 requests per minute with 40 concurrent, Pro allows 2,500 per minute with 100 concurrent, Enterprise allows 5,000 per minute with 250 concurrent.

What moves between them

Bills and supplier records flow from MYOB into Monday.com. On each poll cycle, ml-connector reads new and modified purchase bills from MYOB using OData LastModified filter and creates corresponding items on a Monday.com project board, mapping bill date, amount, and due date to board columns. Supplier contact details from MYOB populate Monday.com columns so team members see bill origin. Payment status updates entered in Monday.com columns are read back and used to construct GL journal entries posted into MYOB general ledger GL accounts, completing a two-way sync. Polling runs on a daily or weekly schedule controlled by the customer.

How ml-connector handles it

ml-connector manages two distinct authentication bridges. On the MYOB side, it exchanges OAuth2 authorization code for an access token and company file username and password, then stores both encrypted. On every MYOB API call, ml-connector supplies the Bearer token, API Key, and Base64-encoded company file credentials in three separate headers, detects when the 20-minute access token expires, and refreshes transparently before a request fails with 401. On Monday.com, ml-connector authenticates with OAuth 2.0 Bearer token or Personal API Token. Because MYOB is pull-only, ml-connector polls purchase bills on a cadence tied to your accounting close schedule using OData $filter on LastModified, respecting the 8 request-per-second rate limit and the 1 million daily limit per API key. When a bill is found, ml-connector posts it to Monday.com as an item with columns mapped from MYOB bill fields. When payment status is updated in Monday.com, ml-connector reads the column value and constructs a GL journal entry to post back to MYOB GL accounts, using the company file credentials to authenticate. RowVersion fields in MYOB PATCH requests are handled automatically. Every record carries a full audit trail so failed posts can be replayed without duplication.

A real-world example

A mid-sized professional services firm in Sydney uses MYOB to track accounts payable and suppliers, and Monday.com to coordinate project delivery and resource allocation. Previously, the finance team received weekly supplier invoice reports from MYOB, manually entered them into a shared spreadsheet, and forwarded them to operations via email so the team knew which suppliers had outstanding invoices and payment terms. Month-end close required manually reconciling what was paid in MYOB against what was flagged paid in the spreadsheet, a painful and error-prone process. With MYOB and Monday.com connected, each new purchase bill from MYOB appears as an item on the team board within minutes, including supplier name, amount, and due date. When the finance team marks a bill paid in Monday.com, the payment status flows back into MYOB and a GL journal entry is posted automatically, eliminating the manual reconciliation step and giving the team real-time visibility into payables.

What you can do

  • Poll MYOB purchase bills using OData LastModified timestamps and create corresponding items on Monday.com boards with bill amount, due date, and supplier name.
  • Map MYOB supplier contacts to Monday.com board columns so team members can see who each bill is from and contact details without leaving the board.
  • Sync payment status updates from Monday.com back to MYOB general ledger GL accounts, creating journal entries without manual re-entry.
  • Authenticate MYOB using OAuth2 token plus company file username and password, handle 20-minute token refresh, and respect 8 requests-per-second rate limits.
  • Maintain a full audit trail of every bill synced and every GL journal posted so failed records can be replayed and reconciled.

Questions

Which direction does data move between MYOB and Monday.com?
Bills and supplier records move from MYOB into Monday.com through polling. Payment status updates entered in Monday.com columns flow back into MYOB as GL journal entries. The main sync direction is MYOB to Monday.com for visibility and tracking, with confirmation updates flowing back to MYOB to close the loop.
Why does MYOB require both OAuth2 and company file credentials on every API call?
MYOB authentication model separates user identity (OAuth2) from company file access (username and password). Both are required in headers on every API call. ml-connector stores both credential sets encrypted and supplies them automatically, refreshing the OAuth token when it expires every 20 minutes.
How does ml-connector handle MYOB lack of webhooks?
MYOB does not support push notifications, so ml-connector polls purchase bills on a schedule you control using OData LastModified timestamps to detect changes since the last sync. Polling runs on a daily or weekly cadence without requiring MYOB to initiate contact, and ml-connector respects MYOB 8 requests-per-second and 1 million daily request limits.

Related integrations

Connect MYOB and Monday.com

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started