Authorize.net
ย ย ย This PSP integration is currently in pilot. If you would like to participate, please contact FinDock Support.
FinDock integrates with Authorize.net, an global provider of payment services and subsidiary of Visa.
Multi-merchant | Multi-currency |
---|---|
Payment Method | One-time | Recurring | Refunds |
---|---|---|---|
Card |
Prerequisites
FinDock is installed and configured.
Working connections to ProcessingHub and WebHub.
Install and activate Authorize.net extension
Follow the standard procedure for installing and activating the Authorize.net for FinDock payment extension.
Check and assign the required permissions. If you are using custom permission set groups, ensure the package-specific permission sets are assigned.
Activate payment method and add account for Authorize.net
To integrate with Authorize.net, you need to add a merchant account in FinDock that defines named credentials and other details related to your customer account with Authorize.net. Details may vary depending on whether you are configuring a test or production setup.
To add a merchant account for Authorize.net:
- Launch the FinDock app and go to the FinDock Setup tab.
- In the left-hand menu, click Processors & Methods, then Authorize.net in the Installed Processors table.
- Click Add account and enter details for your merchant account. See below for further information.
- Under Payment Methods, click the toggle next to Credit Card to activate the payment method.
Authorize.net target settings
- Merchant Account Name (Target): This is the value that you see in Target picklists. The name does not need to match the name of your account in the Authorize.net portal, however, make sure it easily distinguishable from other accounts in the org. If you use multiple currencies, we recommend including the currency identifier in the name.
- Test Account: If you are configuring a test integration, mark this checkbox. The If checked the test endpoint will be used.
- Default Account: Toggle this setting on if you want this account to be used for new Authorize.net payments that do not include a specific target in the payment intent.
- Log Requests: Toggle this setting on if you want to capture all API requests between FinDock and Authorize.net. The requests are stored in Log object records.
- Notification URL: This is the webhook URL used by Authorize.net to notify FinDock of payment events. Copy-paste the URL generated by FinDock into the Webhooks configuration of your Authorize.net portal under Notification Settings > Webhooks.
- Currency: Select the currency used by your Authorize.net account. Each merchant account at Authorize.net supports a single currency. If you use multiple currencies, you need separate merchant accounts at Authorize.net (and in FinDock) for each currency.
- API Login ID: Copy-paste the unique API Login ID associated with the account you are integrating with FinDock. If you do not have the original email from Authorize.net with this information, you can find the ID in your account portal under General Security Settings > API Credentials & Keys.
- Transaction Key: Copy-paste the unique Transaction Key for the API Login ID you entered above. If you don't have the original email, you can generate a key under General Security Settings > API Credentials & Keys.
Using Authorize.net
You can set up and accept one-time and recurring payments through any of the following channels:
- Giving Pages: accept payments through Givings Pages configured to use Authorize.net for card payments
- PayLinks: create and share PayLinks for one-time or recurring payments
- Payment API: custom front-end integration to the Payment API to accept new payments and update existing commitments
New one-time payments are automatically processed, collected and reconciled like normal online payments.
When a new recurring payment is set up, you use payment schedules to collect future installments.
Payment API examples
The following are example payment intent messages for one-time and recurring card payments set up via the Payment API (with FinDock as source).
One-time card payment
{
"SuccessURL": "https://www.example.com/success",
"FailureURL": "https://www.example.com/error",
"Payer": {
"Contact": {
"SalesforceFields": {
"FirstName": "Test",
"LastName": "Payment",
"Email": "testpayment@findock.com"
}
}
},
"OneTime": {
"Amount": "100"
},
"PaymentMethod": {
"Name": "Creditcard",
"Processor": "AuthorizeNet-for-FinDock"
},
"Settings": {
"SourceConnector": "PaymentHub"
}
}
Recurring card payment
{
"SuccessURL": "https://www.example.com/success",
"FailureURL": "https://www.example.com/error",
"Payer": {
"Contact": {
"SalesforceFields": {
"FirstName": "Test",
"LastName": "Payment",
"Email": "testpayment@findock.com"
}
}
},
"OneTime": {
"Amount": "25",
},
"Recurring": {
"Amount": "25",
"Frequency": "Monthly",
"StartDate": "2025-04-01"
},
"PaymentMethod": {
"Name": "CreditCard",
"Processor": "AuthorizeNet-for-FinDock"
},
"Settings": {
"SourceConnector": "PaymentHub"
}
}