What makes BILL easy, and careful, to automate
BILL sits between your inbox and your accounting system. Vendors, bills, approvals and payments live in BILL, and its built-in sync pushes them to QuickBooks Online, Xero, NetSuite or Sage Intacct. That makes it a natural place to automate AP: you write to one system and the sync does the rest.
The v3 API is a modern REST API with a sandbox, webhooks for AP, AR and Spend and Expense events, and document upload for attaching invoices. The careful part is authentication. You log in with a developer key, user credentials and an organization ID to get a session, sessions time out after inactivity, and money-moving actions need an MFA-trusted session. That is good security, and it shapes how you design workflows.
The AI layer
BILL already automates the payment rails. AI adds value before a bill reaches an approver:
- Reading invoices in any format and creating clean bills with the right vendor and coding, as described in how to automate invoice processing with AI.
- Giving approvers context, such as how this bill compares with the vendor’s history and whether anything looks off.
- Onboarding vendors with validated details and duplicate checks. See how to automate vendor onboarding.
- Matching bills to purchase orders before they are approved.
The model reads and suggests. Vendor matches, amounts, duplicate invoice numbers and bank details are validated in code, and bank detail changes always go to a person because they are a common fraud vector.
Limits to plan around
- Rate limits. 20,000 requests per developer key per hour, a much lower limit on logins, and only three concurrent requests per developer key per organization. Run AP jobs sequentially per organization.
- Sessions. Sessions expire after 35 minutes of inactivity. Reuse sessions and re-login on expiry rather than logging in for every call.
- MFA for sensitive actions. Payments and some other operations require an MFA-trusted session. Plan who holds that trust and how it is renewed.
- Separate Spend and Expense API. The spend product (formerly Divvy) uses its own API token and endpoints.
- Plan and access. API access and features vary with your BILL subscription. Confirm your BILL subscription includes API access before scoping a build.
- Sync ownership. Do not write the same bill to BILL and your ledger. Let BILL’s sync own it.
How Lumeor typically connects it
We build in BILL’s sandbox first, then run a small service that manages sessions and exposes a few endpoints to n8n, so login, retries and the concurrency limit are handled in one place. AI steps use Claude or OpenAI’s GPT models for extraction and summaries, with validation in code. Bills stay unapproved until a person signs off. Teams with corporate cards often pair this with Ramp or BILL’s own spend product.