> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Days Sales Outstanding (DSO), SAP

> Average days from invoice issue to cash applied. Earliest warning of cash-flow trouble. How to read it, why it matters, and how to act on it.

**Metrics type:** [Key Metrics](/nerve-centre/overview#metrics-types-explained)  •  **Category:** [Ecommerce Platform](/nerve-centre/connectors#connectors-by-type)

> Average days from invoice issue to cash applied. Earliest warning of cash-flow trouble.

## At a glance

> Average days from Billing Document issue to cash applied (FB05 / F-30 customer payment posting). The single most-watched cash-flow KPI in enterprise B2B commerce on S/4HANA Cloud. Rising DSO is the earliest warning of cash-flow trouble.

|                              |                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **What it counts**           | Standard formula: `DSO = (AR Balance ÷ Total Credit Sales) × Number of Days`. AR Balance = sum of open customer line items in `BSID` / `BSAD` (or the modern `ACDOCA` items where `KOART = D` Customer). Credit Sales = `Invoiced Revenue` minus Cash Sales (BV order type). Card uses 90-day rolling window for the denominator. Aligns with SAP's standard DSO computation in the Receivables Management Cockpit Fiori app. |
| **Tax treatment**            | Includes tax in both numerator (AR open items are gross of output VAT, sitting in customer reconciliation account) and denominator (Credit Sales). Net result is the same as a tax-exclusive calculation.                                                                                                                                                                                                                     |
| **AR balance**               | Open customer line items, gross of any unapplied credit memos.                                                                                                                                                                                                                                                                                                                                                                |
| **Credit sales**             | Invoiced Revenue from credit billing types (F2 standard, S1 cancellation, G2 credit memo netted in). Cash Sales (BV) excluded; otherwise DSO is artificially low because cash hits same-day at goods issue.                                                                                                                                                                                                                   |
| **Cash Sales / DTC prepaid** | Excluded from both numerator and denominator.                                                                                                                                                                                                                                                                                                                                                                                 |
| **Currency**                 | Group Currency for consolidated views. Each Company Code's AR and Credit Sales are translated at TCURR rate type M then summed.                                                                                                                                                                                                                                                                                               |
| **Company Code scope**       | Respects dashboard filter.                                                                                                                                                                                                                                                                                                                                                                                                    |
| **Time window**              | `30D vsP` (rolling DSO computed on 90-day denominator)                                                                                                                                                                                                                                                                                                                                                                        |
| **Alert trigger**            | `>45 days OR up >5 vsP`, sentiment `dso`                                                                                                                                                                                                                                                                                                                                                                                      |
| **Roles**                    | owner, finance                                                                                                                                                                                                                                                                                                                                                                                                                |

## Calculation

Calculated automatically from your SAP data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

## Worked example

A US enterprise wholesale distributor on SAP S/4HANA Cloud Public Edition (annual run-rate \~\$280M). Snapshot 03 May 26.

| Component                                           | Value                                  |
| --------------------------------------------------- | -------------------------------------- |
| Open AR (excludes Cash Sales / BV)                  | \$34,820,000                           |
| 90-day Credit Sales (Invoiced Revenue, F2 + G2 net) | \$58,140,000                           |
| Days in window                                      | 90                                     |
| **DSO (this card)**                                 | **(34.82M ÷ 58.14M) × 90 = 53.9 days** |

|     | This period | Prior 30D | vsP       |
| --- | ----------- | --------- | --------- |
| DSO | 53.9        | 47.6      | +6.3 days |

Five things to notice:

1. **DSO at 53.9 days exceeds the 45-day alert threshold.** Net-30 customers are paying \~24 days late on average. The card fires the sentiment alert and Ask Viq surfaces the question "Why has DSO jumped 6.3 days this period?".
2. **vsP is +6.3 days, above the 5-day jump threshold.** Trend is bad and accelerating. Two compounding alerts: absolute level breach + jump-rate breach. The CFO and Finance Manager get a paired notification.
3. **The breakdown helps diagnose.** Five large customers (Top B2B Accounts) in the 60+ aging bucket are pulling DSO up disproportionately. Resolving 3 of them via the Receivables Management Cockpit (Fiori app `F0729`) collections worklist would drop DSO back under 50.
4. **Net-30 textbook DSO is 35-40 days** for healthy B2B (terms + 5-10 days slack). 53.9 days means the average is now Net-30 + 24 days late. Compare to last year's average; if 12 months ago it was 41, the trend is structural and likely traces to either a customer-base shift (more late-paying accounts) or a collections-process degradation.
5. **Cash Sales correctly excluded.** This merchant's mix includes 12% DTC prepaid orders booked as BV (cash-sale order type) which clear instantly. If included, DSO would compute artificially low because BV orders hit cash same-day. The card excludes them so the number reflects credit-customer behaviour only.

**T-codes / Fiori apps for drilling in:**

* FBL5N: Customer Line Items (per-customer open-item drill).
* F-30 / FB05: Cash application (Incoming payments).
* Receivables Management Cockpit Fiori app for the collections worklist.
* F.13: Automatic Clearing run (clears matched payments to invoices automatically).

## Sibling cards merchants should reference together

| Card                                                                                                                         | Why pair it with DSO                                        |
| ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------- |
| [Invoice Aging Summary](/nerve-centre/kpi-cards/sap/invoice-aging-summary)                                                   | The bucket detail behind DSO.                               |
| [A/R Aging Detail](/nerve-centre/kpi-cards/sap/a-r-aging-detail)                                                             | Per-customer detail.                                        |
| [Cash Collected](/nerve-centre/kpi-cards/sap/cash-collected)                                                                 | Receipts side. Strong cash-collected days reduce DSO.       |
| [Overdue Invoice Value](/nerve-centre/kpi-cards/sap/overdue-invoice-value)                                                   | Pressure target. Overdue % of AR drives DSO.                |
| [Cash Application Rate](/nerve-centre/kpi-cards/sap/cash-application-rate)                                                   | Operations efficiency: how fast cash hits open items.       |
| [Customer Credit Utilisation](/nerve-centre/kpi-cards/sap/customer-credit-utilisation)                                       | Predictive risk view from FSCM-CR.                          |
| [Top B2B Accounts by Revenue](/nerve-centre/kpi-cards/sap/sap-top-b2b-accounts)                                              | Concentration: who matters.                                 |
| [Sales Documents Blocked on Inventory or Credit](/nerve-centre/kpi-cards/sap/sales-documents-blocked-on-inventory-or-credit) | Credit-blocked documents reflect the same upstream problem. |

## Reconciling against the vendor's own dashboard

**Where to look in S/4HANA Cloud:**

> **Receivables Management Cockpit** Fiori app (`F0729`) DSO tile
> **Days Sales Outstanding** Fiori KPI tile (configurable in Receivables overview page)
> **SAP Analytics Cloud** standard Finance content pack: "DSO Trend" story
> **Saved query**: build via Embedded Analytics CDS view `I_CustomerARAging` and `I_BillingDocumentItem`

Direct deep-link: `https://my{tenant}.s4hana.cloud.sap/sap/bc/ui2/flp#ReceivablesMgmt-display`

**Why our number may legitimately differ from a manual SAP calculation:**

| Reason                        | Direction     | Why                                                                                                                                                                                                             |
| ----------------------------- | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Window selection**          | Either        | Some Finance teams use 90-day rolling, some use trailing 12-month, some use the last calendar quarter. Card defaults to 90-day rolling.                                                                         |
| **Cash Sales (BV) inclusion** | Card excludes | Including BV orders artificially deflates DSO because they clear instantly. SAP's standard tile includes or excludes based on customising; align the field map.                                                 |
| **Tax inclusion**             | Either        | Some calculations use net-of-tax in both numerator and denominator; others use gross. Card uses gross consistently (AR open items are gross of output VAT in SAP standard).                                     |
| **Multi-Company-Code scope**  | Either        | Card defaults to all CCs visible to the connected role. SAC tile may be scoped per CC.                                                                                                                          |
| **EBRR deferred revenue**     | Card lower    | If your tenant uses Event-Based Revenue Recognition, deferred revenue is excluded from Credit Sales (the denominator), keeping DSO from being artificially deflated by un-billed deferred recognition postings. |

**Cross-connector reconciliation:**

This card has no commerce-platform counterpart. Commerce platforms collect at order placement (Stripe / PayPal / wallets); DSO is meaningless because there is no Net-30 lag.

## Known limitations / merchant FAQs

**What is a "good" DSO for an SAP-running enterprise?**
Net-30 B2B target: 35 to 42 days. Net-60 target: 65 to 75. Net-90 target: 95 to 110. The healthy range is your terms + 5 to 15 days of slack. Anything beyond that signals collection or credit issues. Enterprise SAP shops typically have stricter terms than mid-market, so 35 to 42 is the realistic ceiling for healthy.

**Why is DSO rising even though cash collected is rising?**
Because Credit Sales (denominator) is rising faster than cash effectively, or AR balance (numerator) is rising disproportionately due to a few late-paying customers. Drill into [A/R Aging Detail](/nerve-centre/kpi-cards/sap/a-r-aging-detail) to see who.

**What is the difference between DSO and BPDSO?**
BPDSO = Best Possible DSO (sales fully collected within terms). Theoretical floor. DSO ÷ BPDSO ratio shows collection efficiency; >1.5 means collections are slipping.

**Should I include Cash Sales (BV order type)?**
No. Cash Sales clear instantly so they push DSO toward zero artificially. DSO is meant to measure credit-customer payment behaviour. SAP's standard configuration excludes BV; the card aligns.

**Multi-currency, FX impact?**
Each component (AR open items, Credit Sales) is translated to Group Currency at TCURR rate type M. The ratio is currency-neutral. FX shifts move both numerator and denominator proportionally so DSO is roughly insulated.

**Subscription / recurring billing on SAP?**
Each billing cycle is treated as a credit sale. SAP S/4HANA Cloud supports this via Convergent Invoicing or via standard scheduling-agreement-driven periodic billing. DSO captures whether subscribers pay on time. Healthy SaaS-adjacent businesses see DSO at terms + 0-5 days because subscriptions auto-charge via SAP Cash Application.

**Is 45 days the right alert threshold?**
Default. Tunable per workspace. Net-60 businesses should set higher (\~75-80). Net-30 with strict policy can set lower (40). Multi-jurisdiction merchants with India / Brazil exposure (longer cultural payment cycles) often run higher thresholds.

**Single-Company-Code vs multi-Company-Code Group Reporting?**
Identical formula. Group Reporting just consolidates AR and Credit Sales across CCs in Group Currency. The card respects the dashboard's scope.

**ASC 606 / IFRS 15 deferred revenue, does it bias DSO?**
Yes if you include it in Credit Sales. EBRR / RAR-deferred revenue not yet billed should not be in the denominator. The card uses Invoiced Revenue (billed only), so the bias is avoided.

**SAP Cash Application AI / FI-AR auto-clearing, does it affect this card?**
Yes positively. SAP S/4HANA Cloud's Cash Application machine-learning engine auto-matches incoming bank line items to open AR items, reducing the manual lag between bank-receipt and cash-applied. Higher auto-match rate = faster numerator reduction = lower DSO. Pair this card with [Cash Application Rate](/nerve-centre/kpi-cards/sap/cash-application-rate) to see the operations-side efficiency.

**FSCM-CR credit holds, do they bias DSO?**
No directly, but they delay the Sales Document from billing in the first place. A document blocked by credit hold never enters the AR aging until released, so it does not appear in either numerator or denominator. That is correct (it is not yet a credit sale), but it can mask a worsening collections situation if the credit team is over-aggressively blocking instead of collecting.

**T-codes vs Vortex IQ, which to use when?**
For headline: this card. For per-customer drill: FBL5N (customer line items). For collections action: Receivables Management Cockpit Fiori app. For cash application: F-30 / FB05.

***

### Tracked live in Vortex IQ Nerve Centre

*Days Sales Outstanding (DSO)* is one of hundreds of KPI pulses Vortex IQ tracks across SAP and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English.

[Start for free](https://app.vortexiq.ai/login) or [book a demo](https://www.vortexiq.ai/contact-us) to see this metric running on your own data.
