Please note: this project uses the new-ish Gift Entry Grid functionality. For the previous flow-based Gift Entry functionality see: https://github.com/FinDockLabs/findock-single-gift-entry
Please note2: this project is meant as implementation inspiration. It by no means contains production-ready code. Please adjust to your specific business process and architecture.
This project provides a basic wrapper for the FinDock Payment Component (Virtual Terminal / MOTO) to be used in the Gift Entry Grid. The FinDock Payment Component is used to authorize & capture Credit Card and Direct Debit payments by an agent from Salesforce. The Gift Entry Grid feature is part of the Salesforce Nonprofit Cloud (NPC).
For more information about the FinDock Payment Component, see: https://docs.findock.com/payments/configuring-findock-moto
For more information about Salesforce Nonprofit Cloud, see: https://help.salesforce.com/s/articleView?id=sfdo.fundraising_get_started.htm&type=5
The project consists of 3 layers:
Wrapper LWC Component
\_Wrapper Screen Flow
\_FinDock Payment Component
- The FinDock Payment Component provides the primary functionality.
- The Wrapper Screen Flow is used to show the FinDock Paymetn Component to the user, inject configuration into the component and provide a way to extend its functionality (e.g. orchestration across payment processors).
- The Wrapper LWC allows for the Screen Flow with Payment Component to be added to a Gift Entry Grid template
The Components and Flow work with both Gift Transactions and Gift Commitments. Currently the Flow prioritises Gift Commitments if both are entered in Gift Entry, but this can be adjusted by changing a formula.
- Configure NPC and Fundraising (make sure to have a Default Gift Designation)
- Install and Configure FinDock, including the FinDock for Fundraising Source Connector and at least one Processor that is supported by the Payment Component (pay special attention to permissions: have the FinDock Service Agent permission set group assigned)
- Deploy the LWC and Screen Flow
- Add the Wrapper LWC to a Gift Entry Grid Template:
- Go to Salesforce Setup
- Go to Feature Settings > Fundraising > Gift Entry
- Edit an existing Template or press "New Template"
- In the settings on the right hand side, scroll down to "Gift Entry Post Processing"
- Press "Add Step"
- Under "Lightning Web Component Name" select GE FinDock Payment Wrapper
- Add the following conditions (depending on what processor / methods you use): Payment Method Equals CreditCard; Payment Method Equals ACH Direct Debit
- If you selected multiple conditions, select "Any filter is true" under "Show component when:"
- Save the Post-processing settings
- Save the Template settings
- Set the new template as Default
- Go to "Gift Entry Grid"
- Enter the required details
- Press Process Gift
- Wait until the Gift Entry is saved, the Gift Transaction or Gift Commitment is created. A toast should show and a modal should pop up
- On the modal follow the instructions on the FinDock Payment Component
When contributing to this repository, please first discuss the change you wish to make via an issue or any other method with FinDock before making a change.
FinDock Labs is a non-supported group in FinDock that releases applications. Despite the name, assistance for any of these applications is not provided by FinDock Support because they are not officially supported features. For a list of these apps, visit the FinDock Labs account on Github.
This project is licensed under the MIT License - see the LICENSE file for details