Overview
Most of what makes Statements work — the object, its fields, its tabs — ships ready to use. As an administrator, you still need to grant access, put the quick actions on page layouts, and decide a handful of defaults through Custom Metadata.Prerequisites
- Access to Permission Sets, Object Manager, and Custom Metadata Types in Salesforce Setup.
Granting Access to Statements
Statement and Statement Financial Event access is granted through the same permission sets that control other Commerce objects:FC_Commerce_View_Business_Data— read access to Statements, Statement Financial Events, and their fields.FC_Commerce_Manage_Business_Data— create/edit access to Statements, Statement Financial Events, and their fields.
Adding the Quick Actions to Page Layouts
The Statement quick actions ship in the Commerce package itself. The page layouts for Account, Contact, Statement, and Statement Financial Event ship from the fusionCore Layouts package. The table below summarizes which quick actions go to which object page layouts.
The instructions below cover how to add them if they are missing.
1
Open the page layout
In Setup → Object Manager, open the object (Account, Contact, Statement, or Statement Financial Event), then open Page Layouts and select the layout you want to edit.
2
Add the quick action
Drag the quick action from the palette into the Salesforce Mobile and Lightning Experience Actions section, then save the layout.
Custom Metadata Settings
Statement behavior is tuned throughFCORE_BASE__Constant__mdt records, reached at Setup → Custom Metadata Types → Constant → Manage Records.
Field Set Constants
Two field sets on the Statement object drive the Statement Manager UI, named in the two Constant records below:FCORE_PAY__Statement_Manager_Highlighted— the fields shown in the Statement Manager’s header (Name, Statement Customer, Statement Date, Statement Business Unit, Prevent Paying On Orders by default).FCORE_PAY__Statement_Manager_Settings— the fields shown in the Statement Settings modal, including the address fields.
FCORE_BASE__Text_Value__c at it, to change what the Statement Manager shows.
Behavior Constants
The remaining four settings control how Statements behave in the system — the Value When No Record Exists column are the OOTB values that come shipped with the package - they are also the values that the system falls back to IF the custom metadata records do not exist. If the constant is missing, create a newFCORE_BASE__Constant__mdt record with the exact name below to override one:
The
FC_Set_Payment_Amount_To_Balance_Due constant, also used on Order payments, applies to the Statement payment screen as well — when checked, it pre-fills the payment amount with the Statement’s balance due. Like the four settings above, it ships with no Constant record — create one with FCORE_BASE__Checkbox_Value__c checked to turn it on.
Field Sets
Two field sets on the Statement object drive the Statement Manager UI, named in the two Constant records above:FCORE_PAY__Statement_Manager_Highlighted— the fields shown in the Statement Manager’s header (Name, Statement Customer, Statement Date, Statement Business Unit, Prevent Paying On Orders by default).FCORE_PAY__Statement_Manager_Settings— the fields shown in the Statement Settings modal, including the address fields.
FCORE_BASE__Text_Value__c at it, to change what the Statement Manager shows.
The Stale Statement Deletion Job
A scheduled job named FC: Delete Stale Statements runs daily at midnight and is registered automatically when the package installs. It deletes Draft Statements older thanFC_Stale_Statement_Deletion_Age_Days — unless the Statement has Prevent Automated Deletion checked, or it already has financial events recorded against it.
Confirm the Job Is Scheduled
Check Setup → Scheduled Jobs for FC: Delete Stale Statements. See Scheduled Jobs in fusionCore for the general pattern fusionCore jobs follow. If it’s missing, schedule it yourself:1
Open the Developer Console
Click the Settings gear in the top right, then Developer Console.
2
Open the Execute Anonymous window
Go to Debug → Open Execute Anonymous Window.
3
Run the scheduler
Clear any existing code, paste the line below, and click Execute.
0 0 0 * * ? (daily at midnight) — re-check Setup → Scheduled Jobs afterward to confirm it now appears.
Multi-Currency Considerations
If your org uses multiple currencies:- A Statement’s currency is locked as soon as it has a linked Order — changing it afterward returns
Currency cannot be changed on a Statement that has linked Orders. - An Order can only be linked to a Statement whose currency matches the Order’s own currency.
- Enable
FC_Use_Customer_Currency_New_Statementif you want new Statements to default to the customer’s currency instead of your org’s default currency.
Limitations and Common Pitfalls with Statement Configuration
- Quick actions don’t appear until added to a layout. All Statement and Statement Financial Event quick actions ship with the package but need to be placed on the relevant page layout before staff see them.
- The stale-deletion job only ever removes Draft Statements. An Open or later-status Statement is never touched by it, regardless of age.
- A Statement with any financial event is never auto-deleted, even if it’s still in Draft and past the age threshold — the job skips Statements that have already had money move against them.

