Loading

How to Get Started with Salesforce Billing Best Practices

Date de publication: Nov 25, 2025
Description

Salesforce Billing allows you to automate complex billing requirements and electronic payments. Following are some of the best practices to help make your implementation a success. This is not a substitute for having an experienced partner scope, design and implement your Billing solution.

Résolution

Training Resources


Automation
When setting up your Org to use Salesforce Billing, there are several processes that should and can be easily automated. The easiest and most scalable solution is to use a Flow that is triggered when the record is created and runs as either a Fast Field Update or Actions and Related Records. Salesforce Billing is a managed package and has triggers on a number of objects. Adding a trigger to these objects is not recommended since the order of operation of a custom trigger and the managed trigger are not controllable. The following is a suggested start for automation:

  • Set Matching Id on Usage Summary upon create. It must be unique to that order product so using the Order Product number or record Id works well.
  • Set Legal Entity on Order Product upon create.
  • Set Legal Entity on Order Product Consumption Schedule upon create.

Be very mindful when adding triggers to the Order and/or Order Product objects and test these thoroughly. Order and Order Products are updated when an invoice and invoice line are created and when they are updated. Also, there is a tax callout on order product if a tax integration is in use. If your Revenue Recognition Treatment is configured to create a Revenue Schedule on Order Activation, this is done asynchronously.

If you do add automation, make sure that it does not fire or update records when any of the following picklist status fields are set to "Queued". Queued means that the record is waiting for an update from an asynchronous process. Updating the record before it completes will create a 'stuck' record with missing or incorrect data.

  • Tax Calculation Status on Order Product
  • Tax Status on Invoice, Invoice line, Credit Note Line and Debit Note Line
  • Revenue Transaction Status on Revenue Schedule
  • Revenue Schedule Status on Order Product, Invoice Line, Credit Note Line and Debit Note Line.
  • Revenue Agreement Allocation Status on Revenue Schedule.



For more information on implementing automation in Salesforce Billing, please see this section in the help documentation

Salesforce Billing can be implemented without a Legal Entity if you will not be using a tax integration. Best practice is to start with a Legal Entity since, if the need arises, it will be easier to add a Legal Entity to an org that is already using one. It's much more work to add a Legal Entity later to an org that is not using one.  

Field Tracking is easy to set up and can be valuable to help troubleshoot issues. This article provides a good starting point for Salesforce Billing.

Test to make sure the correct Billing Treatments and Tax Treatments are populated on the Order Product. If using a tax integration, make sure tax is calculated correctly.  

It is best practice not to add custom values to managed picklist fields. The values supplied upon installation are typically the only ones that work and other values can cause unpredictable results. One exception is Payment Terms. See this article for a way to set up custom payment terms .  

Data Model
There are a significant number of Objects that have a Master-Detail relationship to the Account or to an object that is Master-Detail to Account. This affects the following for implementations:

  • Record sharing, particularly if the Sharing Settings for Account are Private or Read Only, must be considered and tested for non-system admin users.
  • Roll Up Summaries to Account from Invoices (link to article here), while convenient, can trigger automation on Account when invoices are created or updated. This can result in slower updates and possible row lock errors during Invoice Runs. The same is true for Payments and Payment Runs, and to a lesser extent, Credit Notes and Debit Notes.
  • Enable the Billing Package Setting for Consecutive Invoice Post Batch Jobs for better performance when using Post All Invoices when there are multiple invoices on the same account on the same invoice run and when using an external tax integration

Contracting and Amending

  • Always Contract from the Order to ensure that amendment order products maintain the linkage to the original order product. 
  • Always post or cancel draft invoices related to a contract before amending the contract.
  • Contract generation must be completed before invoicing the amendment order and related order (revised order product).
  • Cancellation Order Products must be the same as the original order products. Do not add or remove discounts or change the Billing Frequency or Charge Type.
  • For Amendments to work consistently and correctly, Subscriptions must be set up with Charge Type = Recurring.

Error Logs

  • Create list views using date literals to make troubleshooting easier. Created Date equals TODAY and Created Date equals THIS WEEK are good choices.
  • Add the Error Logs related list to page layouts if not already there. This can be done for the System Administrator profile only if desired. 
  • Set up a process for notification and to track corrections.
Scale Testing
Salesforce Billing is a managed package and is subject to Salesforce Execution Governors and Limits. Certain processes are resource intensive and should be tested to make sure they scale in your org design. For example, to Cancel and Rebill a posted invoice, at least four objects are modified and two new records are created for every invoice line. This will also trigger custom automation on these objects. It is best practice to test in a full sandbox the cancel and rebill process for invoices with the maximum number of invoice lines anticipated for production.

Upgrades
Salesforce Billing upgrades automatically for the annual Spring, Summer, and Winter releases. Sandboxes are upgraded approximately a month before production which allows time for testing. Testing is best accomplished in a recently refreshed full sandbox which provides the closest environment to production and can surface issues well in advance giving time to resolve them before the upgrade.

If you are planning a data or metadata migration from Sandbox to Production during one of these times, there is a possibility that the data migration will fail due to the version in Sandbox being higher than the version in Production. See the Upcoming Releases tab in this page for details. Please plan migrations and go live accordingly.
Numéro d’article de la base de connaissances

000389327

 
Chargement
Salesforce Help | Article