Yes. Opportunities, accounts, opportunity products and cases are read from Salesforce every night by an integration user that can only read, and land next to the ledger in a warehouse in your own cloud account. Each won opportunity is set against the invoices raised for that account, so you can see how much of each forecast category turned into billed revenue and cash. AI checks each night's records against the matching rules agreed in the audit, and nothing in Salesforce is changed.
Why the pipeline review and the board pack rarely show the same number
Salesforce describes a deal by its stage, its amount and its close date. Probability is updated whenever the stage changes, expected revenue is calculated from the amount and that probability, and each stage maps to a forecast category, from Pipeline through Best Case and Commit to Closed, which the owner can change. All of that is a statement of intent: what sales expects, and when.
Finance records what happened: the invoice, the credit note, the payment, often split across months and sometimes across several invoices for one opportunity. A deal can sit in Commit with a close date this quarter while finance invoices it in instalments over the quarters that follow.
History has limits too. Salesforce's stage history records every change to an opportunity's stage, amount, probability and close date, and does not delete it automatically. Any other field, the owner or a field your team added for instance, keeps past values only if field history tracking covers it: up to twenty fields per object, kept for up to eighteen months in Salesforce or twenty-four through the API, unless Field Audit Trail is switched on.
Questions that start in Salesforce and end in the ledger
Each starts with a Salesforce record and finishes with a figure finance signs off.
Forecast against billing
Last quarter's Commit and Best Case opportunities, followed to the invoices that came of them, by owner and by account.
From winning to billing
Closed won opportunities followed to the first invoice raised for them, so the time between winning and billing shows by owner and by account.
Discount against margin
The price agreed on each opportunity product, set against the margin the ledger shows once the goods or the hours were delivered.
Cost to serve an account
Where cases are logged against the account, the hours spent on them, costed, set against that account's margin.
The group under the accounts
Parent accounts in Salesforce matched to the customers in the ledger, so a group's total business and its debt show together.
How Salesforce is read, and how each night's records are checked
The warehouse reads Salesforce through its API, as an integration user: a user that can only connect through the API, never through the screens, given read access to the objects the reports need. Salesforce includes five integration user licences with Enterprise, Unlimited and Performance editions, and your administrator creates and controls that user.
Edition matters. API access is part of Enterprise, Unlimited, Performance and Developer editions, and Professional Edition can add it; Salesforce's current price list uses newer edition names, so the audit checks yours first. Salesforce's own data export is no substitute for a nightly read: it runs at most once a week, its files are available for forty-eight hours after the export finishes, and it leaves out formula and roll-up summary fields.
Each night the load reads what changed since the previous night, and every read is kept in the warehouse with its date, covering every field the reports use for as long as you choose to keep it. Where you sell in more than one currency, each opportunity keeps its own currency, and finance picks the exchange rates the warehouse applies to the forecast and the invoices alike.
Before anyone opens a report, AI checks the night's records against the matching rules below: a won deal still unbilled after the period sales and finance agreed, an account without the ledger's customer code, a product with no item mapped to it. Each is flagged to its owner to correct in Salesforce or in the ledger, so the pipeline view in the 110 Command Centre each morning is one finance can stand behind.
What Salesforce holds for reporting, and what it leaves to other systems
The middle column is Salesforce's own, from its documentation. The right column is what has to come from elsewhere.
| Salesforce record | What it tells the business | What it does not hold |
|---|---|---|
| Opportunity | Stage, amount, close date, probability and forecast category | The invoice, the payment and the date cash arrived |
| Opportunity products | The products and prices quoted on each deal, from a price book | What was delivered, and what it cost |
| Account | The customer, with a parent account for groups | The customer code and debtor history in the ledger |
| Case | Service requests, where your team logs them against the account | The hours and pay spent on each case |
| History | Stage history, plus up to twenty tracked fields for a limited period | A dated record of every field the reports read, kept as long as you choose |
An equipment supplier whose forecast and invoices never met
A Maltese company that supplies and services commercial kitchen equipment runs sales and after-sales service in Salesforce, including the cases logged after each installation. Orders and invoices go through an ERP, and the service engineers' hours are costed through payroll. A sales operations analyst reconciles the three in spreadsheets each month.
- The pipeline review uses Salesforce figures, the board pack uses finance figures, and nobody explains the gap.
- Won deals that were never invoiced surface by chance, usually months later.
- Discounts are visible deal by deal, but nobody sees what they did to margin.
- Service cases are counted, never set against what each account is worth.
- Salesforce, the ERP and the payroll totals feed a warehouse in the company's own cloud account, refreshed every night.
- Each Commit opportunity is followed to its invoices, and a won deal still unbilled after the agreed period is flagged to its owner each morning.
- Margin by account and by owner shows the discount given beside it.
- Accounts with many cases and thin margin are listed for their owners to review.
Salesforce was not reconfigured, and the partner who supports it carried on as before. The analyst now works on why the forecast misses instead of building the file that shows it.
Matching rules sales and finance agree before the first load
Account to customer
The accounting system's customer code held on the Salesforce account, in a field marked as an external ID. Accounts without it are matched by a rule both teams sign off, and any left over are listed.
Opportunity to invoice
A reference that travels from the won opportunity to the invoice, such as an order or contract number. Without one, deals are matched to invoices by account and date, and the report says so.
Product to item
Each Salesforce product mapped to the item or service code the ledger uses, so the price quoted can meet the cost recorded.
Parent account to group
Which parent accounts stand for a group the business treats as one customer, and which are only a filing convenience.
Forecast category in the finance view
Which categories finance treats as expected billing, and whether an owner's change to the category set by the stage is accepted or the stage's own mapping is used.
What we do not do
- We do not sell, license, implement or support Salesforce. Your Salesforce partner keeps doing that.
- We do not change your objects, page layouts, flows or forecasts, and nothing is written back to Salesforce.
- We do not run your sales process or set your forecast. We show how it compared with what was billed.
- The Salesforce records we read are copied into a warehouse in your own cloud account.
How it works
- A strategy callThirty minutes with Glen, free, with no pitch deck. Bring the systems you run and the question none of them answers on its own. You leave knowing whether joining them is worth doing, and where to start.
- The data auditAbout three hours with your team, mapping where each figure comes from, which system holds it and which steps are done by hand. The audit confirms how each system can be read, and it ends with a quote.
- The buildThree to four weeks from an accepted quote to a live dashboard. Implementation is the first month. Your team agrees the definitions with us; we do the building.
- The fractional teamAn ongoing senior team keeps the loads running, follows changes made to your systems and connects the next source when the business needs it.
Glen Sultana founded 110 Analytics after a career built where the numbers move daily. Our people have run analytics for tier-one companies, S&P 500 firms and high-growth technology businesses. Glen is the person on the first call, and he runs every data audit himself.
- Built in your environment, under your account
- Every connection approved by you first
- Based in Malta
Straight answers
Does Salesforce stay as it is?
Yes. Salesforce keeps running your sales and service, and your teams see no change in their day. Its data is read each night and set beside the invoices and payments the ledger holds.
Will this affect our Salesforce partner or licences?
Your Salesforce partner carries on as before and Salesforce itself is not altered. The integration user is created by your administrator, usually on one of the integration user licences Salesforce includes with Enterprise, Unlimited and Performance editions. If your edition needs API access or another licence added, the audit says so before anything is quoted.
How do you connect to Salesforce?
Through Salesforce's API, as an integration user with read access to the objects the reports need. Loads run overnight and read what changed since the night before. The audit confirms the objects, the fields and your edition.
Can Salesforce's own dashboards not do this?
For the pipeline, activity and forecast they do it well, and your team should keep using them. Once a question involves an invoice, a payment or a cost, Salesforce usually no longer holds the answer; the ledger and payroll do, matched under rules finance accepts, and that is what the warehouse adds.
Our account names do not match the customer list in finance. Is that a problem?
It is the usual starting point. The ledger's customer code is added to each Salesforce account where it can be, a rule covers the rest, and accounts that still do not match are flagged each morning so they are corrected at source.
Who sees the joined sales and finance figures?
Access is set by role across the warehouse. A salesperson can see their own accounts with margin, finance sees what it needs, and leadership sees the whole business. Seeing another team's detail is a decision, never an accident.
What does it cost?
Our quote follows the data audit and rests on how many systems Salesforce is joined to and how much matching they need. Salesforce licences stay a separate matter between you and Salesforce or your partner.
Terms on this page
- Forecast category
- Salesforce's grouping of opportunities for forecasting, such as Pipeline, Best Case, Commit, Closed and Omitted, mapped from the stage and changeable by the owner.
- Expected revenue
- A figure Salesforce calculates from the amount and the probability. A weighting of intent, not a figure finance books.
- Integration user
- A Salesforce user that connects only through the API, with access limited to what an integration needs.
- External ID
- A Salesforce field marked to hold another system's identifier, such as the ledger's customer code.
Where the product facts come from
Every product fact on this page comes from the vendor's own documentation, read on 22 October 2026. Vendors change their products, so the audit checks the version you run.
- Salesforce Help: opportunity fields (probability, expected revenue, forecast category)
- Salesforce Help: stage to forecast category mappings
- Salesforce Help: opportunity history
- Salesforce Help: field history tracking (retention)
- Salesforce Help: track field history for standard objects (twenty fields per object)
- Salesforce Help: give integration users API only access
- Salesforce Help: standard user licences (Salesforce Integration)
- Salesforce Help: editions with API access
- Salesforce: Sales Cloud pricing (current edition names)
- Salesforce Help: data export FAQ
- Salesforce Help: manage the recycle bin
- Salesforce Help: manage multiple currencies
- Salesforce Help: external IDs
- Salesforce Help: account fields (parent account)
- Salesforce Help: opportunity products and price book entries
