Loading

Billing: "Total amount for billing transactions exceeds billing schedule total" error when creating a new billing transaction

Publish Date: May 26, 2026
Description

This article explains why Salesforce Billing rejects new or updated Billing Transactions with the validation "Total amount for billing transactions exceeds billing schedule total. Enter a lower number or cancel this transaction" and how to resolve it. Customers describe this as: "the transaction status is already canceled but I'm still getting the error" and "The flow tried to create records: FIELD_CUSTOM_VALIDATION_EXCEPTION: Error: Total amount for billing transactions exceeds billing schedule total."

The error is raised by the Salesforce Billing managed package whenever the sum of the Amount [blng__Amount__c] (or Override Amount [blng__OverrideAmount__c] when populated) on all non-cancelled Billing Transactions related to a Billing Schedule [blng__BillingSchedule__c] would exceed the schedule's Total Amount [blng__TotalAmount__c]. The package's invoicing query explicitly filters with "blng__OverrideStatus__c != 'Cancelled'", so a Billing Transaction is only excluded from the running total when its Override Status [blng__OverrideStatus__c] field is set to the picklist value "Cancelled". The Status [blng__Status__c] field is system-controlled, read-only to users, and updating it (or its formula counterpart Calculated Status) does not exclude the transaction from validation.

Trigger conditions:
- A user or a Flow attempts to create or update a Billing Transaction directly, or via a process such as "Billing Schedules - Create Billing Schedules for Custom Installment".
- A previously unwanted Billing Transaction on the same Billing Schedule still has Override Status [blng__OverrideStatus__c] equal to null ("--None--") or any value other than "Cancelled".
- The combined Amount of those transactions plus the new transaction exceeds the schedule's Total Amount.

Scope: All editions of the Salesforce Billing managed package; behaviour is unchanged from Summer '24 onward.

Resolution

Follow these steps in order. Test in a sandbox first.

Cause 1: Unwanted billing transactions are not marked Cancelled on the Override Status field

  1. Open the Billing Schedule that is throwing the error. Navigate to App Launcher > Billing Schedules > [Billing Schedule Name].
  2. In the related list Billing Transactions [blng__BillingSchedule__r.Billing_Transactions__r], list every transaction and record its Amount [blng__Amount__c], Override Amount [blng__OverrideAmount__c], Status [blng__Status__c], and Override Status [blng__OverrideStatus__c].
  3. Compute the sum: take Override Amount when populated, otherwise Amount, for every transaction whose Override Status [blng__OverrideStatus__c] is not "Cancelled". Compare that sum plus the new transaction's amount to the Billing Schedule's Total Amount [blng__TotalAmount__c]. If the sum exceeds Total Amount, identify which existing transactions must be cancelled.
  4. Open each transaction to be cancelled. Click Edit, set Override Status [blng__OverrideStatus__c] to the exact picklist value "Cancelled", and click Save. Do not attempt to edit Status [blng__Status__c] — it is read-only and updates from the user are blocked by the package.
  5. If "Cancelled" is not selectable, navigate to Setup > Object Manager > Billing Transaction > Fields & Relationships > Override Status > Values and confirm that "Cancelled" is an active picklist value. Add it if missing.
  6. Retry creating the new Billing Transaction or rerun the failing Flow.

Cause 2: Override Amount is being used to scale down a transaction instead of cancelling it

  1. If you want to keep a transaction but reduce its contribution to the schedule total (for example, you billed less than originally planned), open the transaction and set Override Amount [blng__OverrideAmount__c] to the new lower amount and Override Billing Target Date [blng__OverrideBillingTargetDate__c] to the new date. Click Save.
  2. Verify that the new sum of effective amounts (Override Amount where populated, otherwise Amount) across all non-cancelled transactions is less than or equal to the Billing Schedule Total Amount [blng__TotalAmount__c].

Cause 3: Override Status picklist is null on existing data and Calculated Status is therefore blank

  1. The Calculated Status [blng__CalculatedStatus__c] formula returns the Override Status when set and the Status otherwise, but it relies on the Override Status picklist containing a "--None--" value. If your custom automation reads Calculated Status, navigate to Setup > Object Manager > Billing Transaction > Fields & Relationships > Override Status > Values and add "--None--" as an active picklist value.
  2. Update existing transactions whose Override Status is null to "--None--" via a data load so the formula returns the Status value.
  3. This step is only needed for orgs that depend on Calculated Status. It does not affect the package validation, which still keys off Override Status = "Cancelled".

Fix the Flow that triggered the error

  1. If the validation surfaced from a Flow ("Billing Schedules - Create Billing Schedules for Custom Installment"), navigate to Setup > Flows > [Flow Name] > Open.
  2. Add a step that, before creating new Billing Transactions, queries existing transactions on the same Billing Schedule and updates Override Status [blng__OverrideStatus__c] to "Cancelled" on any transactions superseded by the new transactions.
  3. Activate the new flow version.

Confirm the issue is resolved by reproducing the original action: create the new Billing Transaction (or rerun the Flow that failed) against the same Billing Schedule and verify it saves without the "Total amount for billing transactions exceeds billing schedule total" error and that Salesforce Billing no longer counts the cancelled transactions toward the schedule total.

Knowledge Article Number

005385180

 
Loading
Salesforce Help | Article