Opportunity-Installment Field Mapper
The Field Mapper enables detailed customization of how the FinDock Installment and NPSP Opportunity records are synced at field level. The mapping eliminates the need for custom triggers or process builders to keep installments and opportunities synced. For example, if you have a custom field on Opportunity for “in memoriam” donations that needs to be copied to installments, you can define a mapping for that field rather than build custom automation.
FinDock cannot guarantee that every possible mapping works in practice due to all the configurations and customizations an org may have. We have seen, for instance, issues arise with custom @future methods and the execution order of triggers. Thoroughly test mapping before using it in production.
Create custom mappings
You can create custom mappings for any field except formula fields and fields managed by FinDock (see below).
The mappings only apply to installments with record type Receivable. Other installment record types (Payable and Gift Aid) are excluded.
Before you start, carefully consider the sync direction for each mapping. Two-way syncing requires more processing power. Using many two-way sync mappings can have a noticeable impact on performance. Use one-way syncing whenever possible.
To add a custom Installment - Opportunity mapping:
- Launch the FinDock app, and on the Setup tab, scroll down to the Source Connectors section and click on PaymentHub-for-NPSP.
- Click the Opportunity Installment Field Mapping tab.
- Click Add record to add a custom mapping.
- Select an Opportunity field to map from the list of available fields.
- Select the sync direction:
←: Only sync when the field changes on Installment
→: Only sync when the field changes on Opportunity
⇆: Sync when the field changes on either Installment or Opportunity - Select the Installment field to map to the selected Opportunity field.
- Select the type:
Always: Sync both on inserts and updates. Only On Insert: Sync only on insert actions. - Click Save to save the new custom mapping.
- Use the Delete button to delete a custom mapping if needed.
The existing Bank Statement Description mapping is added by FinDock to support certain direct debit transactions. We recommend leaving this mapping as-is in your configuration.
Mapping Opportunity Record Type
You can also create a mapping for Opportunity Record Type (Record Type Id) that can be used when opportunities are created from installments. For instance, you may have a specific record type for online donations. This could be handled by mapping an Installment text field to that record type so all installments created through your online donation form are automatically classified with the desired type.
If you have a special-purpose mapping requirement for this field, please keep in mind that:
- The mapping direction can only be from Installment to Opportunity.
- The syncing type can be Only On Insert.
- The selected Installment field must be a text field.
- If you also want the Record Type Id on Installment, it needs to be added manually or via automation to the text field on Installment.
Mappings managed by FinDock
Some fields are managed by FinDock, meaning these mappings are included in the FinDock solution and cannot be further customized.
Opportunity Stage and Installment Status are defined by the Status Mapping configuration.
Opportunity Field | Installment Field | Direction | Type |
---|---|---|---|
Id | npsp4hub__Opportunity__c | → | Only On Insert |
CloseDate | cpm__Original_Due_Date__c | → | Only On Insert |
CloseDate | cpm__Due_Date__c | → | Always |
npsp4hub__Mandate__c
| cpm__Mandate__c
| ⇆ | Always
npsp4hub__Recurring_Payment_QR__c
| cpm__Recurring_Payment_QR__c
| ⇆ | Always
npsp4hub__Generated_Payment_Url__c
| cpm__Pay_Url__c
| ⇆ | Always
npsp4hub__Generated_Payment_QR__c
| cpm__Payment_QR__c
| ⇆ | Always
CampaignId | cpm__Originating_Campaign__c
| ⇆ | Always
npsp4hub__Generated_Payment_Reference__c
| cpm__Generated_Payment_Reference__c
| ⇆ | Always
npsp4hub__Custom_Payment_Reference__c
| cpm__Custom_Payment_Reference__c
| ⇆ | Always
Name | If Installment is collected then ‘Donation ’ + Installment Last Collection Date, otherwise ‘Donation ‘ + Installment Due Date. (Opportunity Name is only set on creation). If NPSP Opportunity naming is enabled, that functionality defines the Opportunity name. | ← | Other
CloseDate | If Installment is collected, then Installment Last Collection Date. Else Installment Due Date | ← | Other
StageName | If the installment is created with status Collected, then the NPSP default closed status is used. For all other installment status options, NPSP status Pledged is used. With installment update changes, the FinDock status mapping is used. | ← | Other
When an installment is created from an opportunity and the opportunity is closed, then the mapping between Installment Status and Opportunity Stage is used. Otherwise, the status is New. With opportunity updates, FinDock Status Mapping is used. | cpm__Status__c
| → | Other
Always PaymentHub-for-NPSP | cpm__Source__c
| → | Other
Always Receivable | RecordTypeId | → | Other
AccountId | cpm__Account__c
| ⇆ | Always
npsp4hub__Recurring_Payment_Reference__c
| cpm__Recurring_Payment_Reference__c
| ⇆ | Always
npsp4hub__Recurring_Payment_Url__c
| cpm__Recurring_Pay_Url__c
| ⇆ | Always
npsp__Primary_Contact__c
| cpm__Contact__c
| ⇆ | Always
Amount | cpm__Amount__c
| ⇆ | Always
npsp4hub__Payment_Method__c
| cpm__Payment_Method__c
| ⇆ | Always
npsp4hub__Payment_Profile__c
| cpm__Payment_Profile__c
| ⇆ | Always
npsp4hub__Payment_Processor__c
| cpm__Payment_Processor__c
| ⇆ | Always
npsp4hub__Target__c
| cpm__Target__c
| ⇆ | Always
npsp4hub__Bank_Statement_Description__c
| cpm__Bank_Statement_Description__c
| ⇆ | Always