Skip to main content

NPSP workflows and recommendations

The Salesforce Nonprofit Success Pack combined with FinDock gives you a very wide range of options for customizing your donation management workflows. The article outlines how some of the basic workflows operate with standard NPSP and FinDock capabilities.

First, let’s recap the relevant objects and relations with an illustration.

InstallmentMandatePayment ProfilePayment
Recurring Donation
Recurring Donati...
GAU Allocation
GAU Allocation...

Here are the key points to keep in mind when working with NPSP and FinDock objects:

  • Payment data is synced between FinDock and NPSP automatically.
  • Field-level changes trigger syncing according to your Opportunity-Installment mapping.
  • FinDock payments track actual cash flow based on data from bank files and payment service providers.
  • Payment management data required by payment methods is stored in FinDock objects including Payment Profile and Mandate

Single opportunity with one payment

One-time donations are represented in NPSP by an Opportunity record with one linked Opportunity Payment record. The opportunity is represented by an Installment record in FinDock. The payment may be created automatically by NPSP, or it will be inserted when FinDock collects the full amount of the installment.

If there is no opportunity that matches a one-off donation that comes in, for example, through a bank statement, FinDock creates both the opportunity and installment as part of reconciliation.

Always keep in mind that there are two custom objects called “Payment” in the NPSP setup - the FinDock Payment (cpm_payment_c) and the NPSP Opportunity Payment (npe01__OppPayment__c). FinDock creates payments to track cash flow based on incoming payment data (such as inbound reports). FinDock only creates or updates Opportunity Payment records when the full amount of the related installment for the opportunity is collected or reversed.


If you manually add an installment, no opportunity is created. Opportunities are only created when the installment is generated through a FinDock process (e.g. Guided Matching or online payment collection through Giving pages). If an opportunity is created as Closed Won, installment creation depends on your FinDock for NPSP closed opportunity setting.

Single opportunity with multiple payments

While NPSP supports pledges with multiple payments, with the enhancements made to recurring donation capability, we recommend using recurring donations instead. Recurring donations are fully supported out-of-the-box by FinDock. If you use single opportunities with multiple records, additional customization and manual work is needed to ensure payment data is correctly synced between FinDock and NPSP.

Recurring donations

The NPSP Recurring Donation object manages everything that is needed for fixed-term or open-ended recurring donations. You need to use this object instead of the FinDock Recurring Payment object.

FinDock automatically creates installments for the opportunities generated by recurring donations. These are kept in sync according to your Opportunity-Installment mapping.

Gift Entry

NPSP Gift Entry is a tool for adding single or batch gifts. The gifts are represented as opportunities, so once created, FinDock handles them as normal single opportunities with single payments.

If you are going to use Gift Entry, it is important to ensure that payment-related fields used by FinDock are included in the Gift Entry template as needed. For example, you should include at least Payment Method (npsp4hub__Payment_Method__c) and Payment Processor (npsp4hub__Payment_Processor__c) on the template, preferably with default values.

Special considerations for NPSP payment records

If you are not using General Account Units or Accounting Subledger, you can disable automatic creation of NPSP payments. FinDock creates opportunity payments when an installment is fully paid, as well as negative opportunity payments for reversed installments.

See also our NPSP FAQs.