Objects and fields¶
The package namespace is ssfs. Field API names below are shown without the namespace prefix.
Entity relationship diagram¶

Custom objects¶
Accounting Period (Accounting_Period__c)¶
A collection of journal entries, representing a distinct period in time, to be reconciled to the general ledger
| Field | Type and notes |
|---|---|
Approval_Status__c |
Picklist - The fitness of this accounting period to be posted to the general ledger. Accounting Events must have an Approval Status of 'Approved' to be closed. Values: Under Review/Approved/Rejected |
Approved_By__c |
Lookup (User) |
End_Date__c |
Date - The last day of the accounting period |
Start_Date__c |
Date - The first day of the accounting period |
Status__c |
Picklist - Pending/Open/Closed |
Journal Entry (Journal_Entry__c)¶
A discrete accounting event, representing a debit or credit to a particular account in the general ledger
| Field | Type and notes |
|---|---|
Accounting_Period_Status__c |
Formula (Text) - The status of the related Accounting Period |
Accounting_Period__c |
Lookup (Accounting Period) |
Account__c |
Lookup (Account) |
Amount__c |
Currency (10, 2) - The absolute value of the debit/credit amount |
Credit__c |
Formula (Currency) |
Date__c |
Date - The effective date of the journal entry |
Debit__c |
Formula (Currency) |
General_Accounting_Unit__c |
Lookup (General Accounting Unit) |
GL_Account_Name__c |
Text (80) |
GL_Code__c |
Text (50) |
Manual_Adjustment__c |
Checkbox - Indicates that this journal entry was part of a manual adjustment and not generated by the system |
Notes__c |
Text Area (255) |
Opportunity__c |
Lookup (Opportunity) |
Posting_Status__c |
Picklist - The posting status to the general ledger Supported values: Entered/Reviewed/Approved/Posted/Reopened/Denied |
Post_Date__c |
Date - The date that the journal entry was posted to the general ledger |
Type__c |
Picklist - Debit/Credit |
Fields added to NPSP objects¶
Opportunity¶
| Field | Type and notes |
|---|---|
Committed_Date__c |
Date - The date that revenue begins to be recognized for this opportunity |
Do_Not_Create_Journal_Entries__c |
Checkbox - If checked, new journal entries will not be created for this opportunity |
Journal_Entry_Queued_Date__c |
Date - The day of the latest change that queued this opportunity for the scheduled job. Journal entries the job creates for it are dated to this day. Cleared when the opportunity is processed |
Queued_for_Journal_Entry_Creation__c |
Checkbox - If checked, this opportunity will be re-evaluated for journal entry creation in the scheduled job |
General Accounting Unit¶
| Field | Type and notes |
|---|---|
GL_Code__c |
Text (50) |
Receivable_GAU__c |
Lookup (General Accounting Unit) - The account to debit for the open share of committed gifts allocated to this GAU. Leave blank to use the default receivables account Child Relationship Name: Receivable_For_GAUs |
Receivable_GL_Account_Name__c |
Formula (Text) - The GL account to debit for the open share of committed gifts allocated to this GAU. If a Receivable GAU is not defined, this returns the default receivables account name |
Receivable_GL_Code__c |
Formula (Text) - The GL Code to debit for the open share of committed gifts allocated to this GAU. If a Receivable GAU is not defined, this returns the default receivables account code |
Write_Off_GAU__c |
Lookup (General Accounting Unit) - The account to debit when payments allocated towards this GAU are written off Child Relationship Name: Written_Off_GAUs |
Write_Off_GL_Account_Name__c |
Formula (Text) - The GL account to debit when payments allocated towards this GAU are written off. If a Write-Off Account is not defined, this returns the default write-off account name |
Write_Off_GL_Code__c |
Formula (Text) - The GL Code to debit when payments allocated towards this GAU are written off |
GAU Allocation¶
| Field | Type and notes |
|---|---|
GL_Code__c |
Formula (Text) |
Receivable_GL_Code__c |
Formula (Text) - The GL Code to debit for the open share of this allocation while its opportunity is committed |
Write_Off_GL_Code__c |
Formula (Text) - The GL Code to debit when payments allocated towards this allocation's GAU are written off |
Payment¶
| Field | Type and notes |
|---|---|
Broker_Fee__c |
Currency (8, 2) |
Number_of_Shares__c |
Number (16, 2) |
Price_Per_Share__c |
Currency (10, 2) |
Stock_Notes__c |
— |
Stock_Sale_Amount__c |
Currency (10, 2) |
Stock_Sale_Date__c |
Date |
Stock_Symbol__c |
Text (5) |
Custom metadata types¶
Accounting State Mapping (Accounting_State_Mapping__mdt)¶
Mappings of opportunity stages to accounting states in the fundraising subledger
| Field | Type and notes |
|---|---|
Accounting_State__c |
Picklist - Uncommitted/Committed/Finalized |
Opportunity_Stage__c |
Text (50) |
Fundraising Subledger Setting (Fundraising_Subledger_Setting__mdt)¶
Global settings for the fundraising subledger
| Field | Type and notes |
|---|---|
Default_Payment_Account__c |
Entity Definition - The GL Code to use when a new payment's payment method does not have a corresponding global GL account |
Default_Receivables_Account__c |
Entity Definition - The receivables account for the open share of committed gifts allocated to GAUs with no Receivable GAU, and for any unallocated amount |
Default_Record_Owner_ID__c |
Text (18) - The default record owner for journal entries and accounting periods created in a record-triggered context |
Default_Write_Off_Account__c |
Entity Definition - The write-off account for written-off payments allocated to GAUs with no Write-Off GAU, and for any unallocated amount |
Journal_Entry_Calculation_Mode__c |
Picklist - Real-time or Scheduled. In real-time mode, journal entries are generated as data is recorded. In scheduled mode, they are generated by the scheduled accounting job, on the schedule set in Calculation Mode Settings |
Scheduled_Job_Cron_Expression__c |
Text (100) - The cron expression the scheduled accounting job runs on, built from the daily time chosen in Calculation Mode Settings. Blank runs every day at 1:44 AM |
Subledger_Enabled__c |
Checkbox - If false, journal entries will not be created, even if RunSubledger methods are active |
Accounting_Period_Interval__c |
Picklist - Supported values: Daily, Weekly, Monthly. The interval in which new accounting periods should be created. |
Accounting_Period_Name_Format__c |
Text (255) - The naming schema used when new accounting periods are system-generated. |
Date_Format__c |
Picklist - Supported values: Context User Locale, yyyy-MM-dd, M/d/yyyy The format to display dates. Select a specific convention or set to Context User Locale to use the locale of the running user. |
First_Day_of_Month__c |
Number (2,0) - For Monthly Accounting Period Intervals, the day of the month that new periods should start on. |
First_Day_of_Week__c |
Picklist - For Weekly Accounting Period Intervals, the day of the week that new periods should start on. |
Global GL Account (Global_GL_Account__mdt)¶
Represents a payment, receivable, or write-off GL account
| Field | Type and notes |
|---|---|
Active__c |
Checkbox |
GL_Account_Name__c |
Text (80) - The GL account name as it should appear in the ledger |
GL_Code__c |
Text (50) |
Type__c |
Picklist - Payment, Receivable or Write-Off. Payment accounts are edited from the Manage Payment Accounts tab, the receivable and write-off accounts from the Default Accounts tab |
Custom permissions¶
| Name | Grants |
|---|---|
Manage_Accounting_Periods |
Access to close and reopen accounting periods |
Manage_Fundraising_Subledger_Settings |
Access to manage global settings for the Fundraising Subledger |
Validation rules¶
| Object | Rule | Notes |
|---|---|---|
| Accounting Period | Unapproved_Periods_Can_Not_Be_Closed |
Accounting Periods must have an Approval Status of 'Approved' to be closed |
| Journal Entry | JEs_Can_Not_Be_Moved_To_Closed_Periods |
Journal entries can not be moved to a closed accounting period |
| Journal Entry | Posted_JEs_Can_Not_Be_Modified |
Posted JEs can only be modified by a system administrator |
Platform events¶
Deploy Result (Deploy_Result__e)¶
Publishes the result of a metadata deployment, including status, error messages, and deployment job details.
| Field | Type and notes |
|---|---|
Error_Message__c |
Long Text Area (10,000) |
Job_ID__c |
Text (18) - The job ID of the deployment |
Status__c |
Text (255) - The status of the deployment (e.g., Success, Partial Success, Failure) |