Skip to content

Objects and fields

The package namespace is ssfs. Field API names below are shown without the namespace prefix.

Entity relationship diagram

Entity relationship diagram: Opportunity, Payment, GAU Allocation, General Accounting Unit, Journal Entry and Accounting Period

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)