3.4.1 Billed Cost
Billed Cost represents the cost of a charge as invoiced by the invoice issuer in a given billing period.
For all charges, Billed Cost reflects all applicable pricing adjustments (e.g., reduced pricing from negotiated discounts or commitment discounts). For purchase charges, Billed Cost includes any portion invoiced in the given billing period. For usage charges, Billed Cost excludes any portion covered by related purchase charges (e.g., covering charges such as commitments, prepayments, or marketplace purchases), regardless of when those related charges are invoiced.
Billed Cost is denominated in the Billing Currency. Billed Cost is commonly used to support FinOps activities, including invoice reconciliation, cash-based forecasting, budgeting, and cost allocation.
3.4.1.1 Requirements
BilledCost MUST adhere to the following requirements:
- BilledCost MUST be of type Decimal.
- BilledCost MUST conform to NumericFormat requirements.
- BilledCost MUST NOT be null.
- BilledCost MUST be denominated in the BillingCurrency.
- BilledCost MUST reflect all applicable pricing adjustments, including but not limited to negotiated discounts, commitment discounts, and other applicable discount programs.
- BilledCost MUST NOT include any portion of a covered charge that is offset by a covering charge.
- BilledCost MUST be 0 for charges that are fully covered by one or more covering charges.
- The sum of BilledCost for a given InvoiceDetailId, InvoiceId, and InvoiceIssuerName MUST be equal to the payable amount provided in the corresponding entries on the issued invoice when InvoiceIssueStatus is "Issued".
- When comparing BilledCost aggregated by InvoiceId and InvoiceIssuerName with CostAndUsage.BilledCost aggregated by CostAndUsage.InvoiceId and CostAndUsage.InvoiceIssuerName, BilledCost MUST adhere to the following requirements:
- When ChargeCategory is not "Tax" and InvoiceIssueStatus is not "Open", the sum of BilledCost MUST NOT differ from the sum of CostAndUsage.BilledCost by more than
MAX(100 × Subunit, (SQRT(Rows) × 0.5) × Subunit)as defined in Rounding Variance Tolerance. - When ChargeCategory is "Tax" or InvoiceIssueStatus is "Open", the sum of BilledCost MAY differ from the sum of CostAndUsage.BilledCost.
- When ChargeCategory is not "Tax" and InvoiceIssueStatus is not "Open", the sum of BilledCost MUST NOT differ from the sum of CostAndUsage.BilledCost by more than
- When comparing BilledCost aggregated by InvoiceDetailId, InvoiceId, and InvoiceIssuerName with CostAndUsage.BilledCost aggregated by CostAndUsage.InvoiceDetailId, CostAndUsage.InvoiceId, and CostAndUsage.InvoiceIssuerName, BilledCost MUST adhere to the following requirements:
- When InvoiceIssueStatus is not "Open", the sum of BilledCost MUST NOT differ from the sum of CostAndUsage.BilledCost by more than
MAX(100 × Subunit, (SQRT(Rows) × 0.5) × Subunit)as defined in Rounding Variance Tolerance. - When InvoiceIssueStatus is "Open", the sum of BilledCost MAY differ from the sum of CostAndUsage.BilledCost.
- When InvoiceIssueStatus is not "Open", the sum of BilledCost MUST NOT differ from the sum of CostAndUsage.BilledCost by more than
3.4.1.2 Implementation Guidance
3.4.1.2.1 Handling Rounding Discrepancies
When validating InvoiceDetail.BilledCost against CostAndUsage.BilledCost, the totals may not be perfectly equal due to precision differences (e.g., 6 decimals in CostAndUsage vs. 2 decimals in InvoiceDetail). The requirement allows for a maximum rounding error based on the statistical probability of rounding variance, which grows with the square root of the row count. For more information, see the Rounding Variance Tolerance appendix entry.
3.4.1.5 Description
Cost of a charge as invoiced by the invoice issuer in a given billing period.
Constraints
| Property | Value |
|---|---|
| Column Type | Metric |
| Feature Level | Mandatory |
| Allows Nulls | No |
| Data Type | Decimal |
| Value Format | Numeric Format |
| Number Range | Any valid decimal value |