A deal closes in Salesforce on the last day of the quarter. Finance hears about it on Monday, when someone exports a report and rekeys the order into NetSuite. The invoice goes out on Wednesday with one line item mapped to the wrong product. The customer disputes it, and the cash lands three weeks later than it should have.
Every system in that sequence did its job. Salesforce recorded the deal, NetSuite booked the order, and the billing system sent the invoice. The delay sat in the gaps between them, and each gap belonged to no single team.
The order-to-cash (O2C) process runs from an approved quote to cash applied in the ledger, across eight stages: quote, contract, order booking, provisioning, invoicing, collection, cash application, and close. Each stage runs in a different system, owned by sales operations, finance, or IT. The systems and metrics for every stage are mapped on the order-to-cash automation page.
Why order-to-cash keeps breaking
Group the eight stages and the work itself is simple: quote, book, bill, and collect. The systems between them are not. The average company now manages 305 SaaS applications, according to Zylo’s 2026 SaaS Management Index. Every new tool in the revenue stack adds a handoff, and every handoff is a place where a record gets rekeyed, a field gets dropped, or a status stops updating.
Finance absorbs the difference. In Zuora’s 2025 survey of more than 900 finance leaders, 79% said their teams were swamped with manual work, and 88% named reconciliation as a blocker to strategic work.
That is why another point tool rarely fixes order-to-cash: each one solves a stage and adds a handoff.
The five handoffs where order-to-cash breaks
A deal passes through all eight stages, but it doesn’t break evenly across them. Most of the rekeying and mismatches happen at five handoffs, where a record moves from one team’s system to another’s.
- Closed-won to sales order. The deal is final in the CRM, and the ERP doesn’t know yet. Someone exports, rekeys, and checks. This is where a product gets mapped wrong, a tax code goes missing, or a sync that retries creates a second order for one deal. To build this handoff with validation and safe retries, read how to build an order-to-cash integration. For a worked example, see a Salesforce and NetSuite sync built end to end.
- Quote to contract to order. Pricing is approved in CPQ, the terms change during signature, and the order is booked from the original quote. Nobody sees the mismatch until the invoice goes out. To keep the order in step with the approved quote, see the guides on quote to order and CPQ to ERP sync.
- Order to provisioning. The customer paid for 50 seats and the product grants 40, or access starts a week after the contract does. Support hears about it before finance does. The guide to subscription provisioning covers granting access that matches what the customer bought.
- Invoice to the account team. Invoice and payment status live in the ERP or the billing system. The account manager asks finance in Slack whether an invoice went out, and a renewal conversation starts without anyone knowing the last invoice is 60 days overdue. A billing to CRM sync puts invoice and payment status on the account record.
- Payment to the ledger. Payments arrive in Stripe or the bank, and someone matches them to open invoices by hand. Until they do, collected cash shows as outstanding and the customer gets a reminder for a bill they already paid. Our guide to accounts receivable automation shows how to match payments to open invoices without the manual step.
Why these handoffs stay broken
Each handoff sits between two owners. Sales operations owns the CRM and finance owns the ERP. The handoff between them is a shared problem with no budget line, so it gets patched with a spreadsheet and a person who remembers to check it.
Native connectors stop at the pair. A CRM-to-ERP app syncs the standard objects. Custom records, subsidiaries, and approval steps are where the workarounds start, as teams connecting HubSpot and NetSuite tend to find. None of those apps sees the full path from quote to cash applied.
Custom scripts depend on one person. A script written for an ERP go-live works on the day it ships. Then the product catalog changes, the person who wrote it moves to another project, and failures stay silent until the month-end close.
Automation lands on the workaround. Under pressure, teams automate the step that hurts, usually the export and rekey, and leave the mapping behind it alone. The same errors arrive faster.
What manual order-to-cash costs
The cost shows up in four places, and only the first one is visible on a timesheet.
The first is hours. Every order that is rekeyed is also checked, corrected, and sometimes rekeyed again.
The second is cash timing. Every day between closed-won and the invoice adds a day to days sales outstanding (DSO). Late payment already affects seven in ten North American companies, and overdue invoices average 23% of B2B receivables, according to Atradius’s 2026 Payment Practices Barometer. The leading cause is customers’ own cash flow, which no integration fixes. The part you control is the invoice that went out late or wrong.
The third is accuracy. A quote and an order that disagree become a disputed invoice, and a disputed invoice is paid late or not in full.
The fourth is the close. Reconciling deals against orders by hand pushes work into the last week of the month, when finance has the least time for it.
Mixpanel automated these handoffs and measured the result. A product analytics company serving more than 26,000 businesses, it had its finance team reconciling every closed-won contract between its CRM and ERP by hand. After automating that handoff from CRM to ERP, Mixpanel cut the manual effort per sales order by 25%.
Where AI agents fit, and where they don’t
AI agents are the next layer going into order-to-cash, and they make the handoffs matter more.
Agents handle judgment work well: answering a customer’s question about an invoice, logging a promise to pay, pulling a statement, sorting a dispute.
Agents read the same records your handoffs produce. Inadequate data quality is one of the two largest obstacles to AI adoption in finance, according to Gartner’s 2025 AI in Finance survey. An agent that answers a billing question from a sales order rekeyed with the wrong product gives the wrong answer, faster.
So the order of work matters. Make each handoff deterministic first, then give agents access to the systems behind it, scoped and logged at each call. Marcus Dubreuil, Director of Systems Architecture at J.W. Pepper, describes his Tray.ai workflows as “little drops of determinism into what the agent can do.”
What to automate first
Start with the first handoff. Errors made there flow into every later stage.
- Closed-won to sales order. Check the deal in the CRM before anything is written to the ERP: products mapped, tax code present, billing account found, currency supported. A sync that retries must find the existing order, never create a second one. How to build an order-to-cash integration walks through this check and the idempotent write behind it.
- Status back to the CRM. Write the invoice number and payment status onto the account record. Account teams stop asking finance in Slack, and renewals start with the payment history in view. The same billing to CRM sync guide covers the write-back.
- A nightly reconciliation. Compare every closed-won deal in the period against every order. The difference is a short report someone reads each morning, in place of a surprise at month end.
- Provisioning and cash application. Both depend on clean orders, so they come after the first three. Once orders are clean, the subscription provisioning guide picks up from there.
One rule holds at every step: the integration never changes a price. If the quote and the order disagree, the record stops and goes to a person.
Build, buy or connect
The order-to-cash automation page compares the three ways to connect these systems: app-to-app connectors, custom code, and an integration platform. The deciding question is who owns the handoffs after go-live. If that is a finance systems team rather than engineering, they need to change a product mapping or add a check without filing a ticket.
Tray.ai is an integration platform built for that case: the team that owns the handoff builds and changes the workflow itself. At Mixpanel, both engineers and the non-technical revenue team build on it.
“Automation has fundamentally changed our approach to building processes. So far, we have yet to find something that Tray can't do.”
How to tell it’s working
Track five numbers before and after each handoff is automated.
- Order-to-invoice time
- Order error rate, measured as orders corrected after booking
- Days sales outstanding
- Unapplied cash at month end
- Zero-touch order rate: the share of orders that reach an invoice with no manual step
See the whole process
The order-to-cash automation page maps all eight stages from quote to close, with the systems, metrics, and build guides for each. For the longer version, including how Mixpanel cut manual effort per sales order by 25%, read the order-to-cash automation guide.