Infor CloudSuite and BILL integration
Infor CloudSuite runs your ERP and finance. BILL runs vendor payments and bill approval. Connecting the two lets the supplier invoices already approved in Infor CloudSuite become payable bills in BILL without re-keying, and lets the payment result come back so the Infor ledger reflects what cleared. Suppliers stay aligned across both systems, and each bill line lands on a GL account that exists in both. ml-connector handles the two very different authentication models and moves the records on a schedule you control.
What moves between them
The main flow runs from Infor CloudSuite into BILL. Suppliers approved for payment in Infor are created or updated as BILL vendors, and supplier invoices that have cleared Infor approval are created as BILL bills with their line items mapped to the matching GL accounts. Payment status flows the other direction: once a bill is paid in BILL, ml-connector reads the payment record and posts the paid status, amount, and date back against the corresponding Infor AP invoice. GL accounts and dimensions are aligned so every bill line references an account present in both systems. Purchase orders stay in Infor because BILL has no PO concept.
How ml-connector handles it
ml-connector stores both credential sets encrypted. On the Infor side it accepts the full .ionapi field set per customer, requests an OAuth2 bearer token with the password grant, and refreshes the token proactively before its one to twenty-four hour expiry rather than waiting for a 401. On the BILL side it performs the session login per organization and re-authenticates when a call returns an auth error, since BILL signals an expired session as a generic auth failure rather than a clear code. Suppliers and GL accounts are mapped first so every bill it creates references a BILL vendor and chart-of-accounts entry that already exist. Because Infor has no webhooks, approved invoices are pulled on a schedule using list programs like APS100MI filtered by status, while BILL payment events arrive by webhook and are verified against the HMAC-SHA256 signature before processing. Neither system has native idempotency, so ml-connector checks for an existing record by external ID before each create to avoid duplicate vendors or bills. BILL allows only three concurrent calls per organization, so requests are throttled and backed off on the BDC_1144 and BDC_1322 rate-limit codes.
A real-world example
A mid-sized professional services firm of around two hundred staff runs Infor CloudSuite Financials for its general ledger and procurement, and pays vendors through BILL because of its approval routing and ACH payments. Before the integration, the AP clerk re-typed every approved supplier invoice from Infor into BILL by hand, then later updated each Infor invoice with the payment date and reference pulled from BILL reports. With Infor CloudSuite and BILL connected, approved invoices move into BILL as bills automatically with the right GL coding, and the payment result flows back so the Infor ledger shows what was paid without anyone reconciling two screens. The double entry and the end-of-month payment chase are gone.
What you can do
- Create approved Infor CloudSuite supplier invoices as bills in BILL with line items coded to the matching GL accounts.
- Keep BILL vendors aligned with Infor CloudSuite suppliers so bills always reference a known payee.
- Read BILL payment status, amount, and date back into the Infor CloudSuite AP ledger after a bill is paid.
- Bridge the Infor OAuth2 bearer token and the BILL session login, refreshing each before it expires.
- Poll Infor on your schedule while taking BILL payment events by signature-verified webhook.
Questions
- Which direction does data move between Infor CloudSuite and BILL?
- The main flow is Infor CloudSuite into BILL. Suppliers and approved supplier invoices move from Infor into BILL as vendors and bills, while payment status moves back from BILL into the Infor AP ledger once a bill is paid. Suppliers and GL accounts are aligned so every bill line references an account that exists in both systems.
- How does the integration handle two different login methods?
- Infor CloudSuite uses OAuth2 with a service account from the .ionapi file, while BILL uses a session token from a login call with the developer key and organization ID. ml-connector stores both credential sets encrypted, refreshes the Infor bearer token before its one to twenty-four hour expiry, and re-runs the BILL login when a call returns an auth error, since BILL reports an expired session as a generic auth failure.
- Can purchase orders sync into BILL?
- No. BILL is AP and AR focused and has no purchase order concept, so PO data stays in Infor CloudSuite. Purchase orders are managed and received in Infor, and only the resulting approved supplier invoices are pushed into BILL as bills for payment.
Related integrations
More Infor CloudSuite integrations
Other systems that connect to BILL
Connect Infor CloudSuite and BILL
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started