Skip to main content

Stripe

FinDock integrates with Stripe, an international Payment Service Provider (PSP). Please note that your contractual limitations with Stripe apply with this integration, meaning that if your contract doesn’t cover a certain payment method, the FinDock extension won’t support it either.

Multi-merchantMulti-currency
yesyes
Payment MethodOne-timeRecurringRefunds
Credit Cardyesyesyes
BACS Direct Debityesyes--
SEPA Direct Debityesyes--
Idealyes--yes
Apple Payyesnoyes
Google Payyesnoyes

Pre-requisites

  • FinDock is installed and configured.
  • A source connector is installed and configured.
  • FinDock WebHub is connected and Notification Gateway configured.

Install and activate Stripe for FinDock#

Follow the standard procedure for installing and activating the Stripe payment extension.

Check and assign the required permissions for FinDock and Stripe features. Ensure all package-specific permission sets are correctly assigned.

Configure the FinDock extension#

After the Stripe payment extension is activated in FinDock, you need to link it to your Stripe account.

To link FinDock to Stripe:

  1. Launch the FinDock app and click Setup.
  2. Scroll down and click on the PaymentHub-Stripe tile to open the Stripe settings.
    Stripe for FinDock configuration
  3. Adjust the toggles as needed.
    • Is Default: enable if this account should be used as the default account for Stripe payments.
    • Use Stripe Connect: enabled automatically for API v2 connections.
    • Is Test: enable if you are setting up a test configuration.
    • Log Requests if you want to log all interaction with Stripe in the PaymentHub Log object.
  4. Click Connect with Stripe. You are redirected to the Stripe Connect login page where you need to select your Stripe account that you want to use for this integration and enter your credentials.
    warning

    Do not use the skip this form option!

  5. Wait to be redirected back to FinDock and click Save.

If you are using multi-merchant accounts, you can click the Add Account button and repeat the steps above to connect connect a second Stripe account.

note

If you migrating your Stripe integration from the FinDock Payment API v1 to v2, or otherwise had an existing Stripe integration with FinDock, you need to manually delete the webhooks used with FinDock in your Stripe account.

Paying with Apple Pay and Google Pay#

Stripe enables payments with an Apple Pay or Google Pay digital wallets. No extra configuration is required to enable this for FinDock.

To use Apple Pay and Google Pay:

  1. Create an Installment with Payment Method ‘CreditCard’ and Payment Processor ‘PaymentHub-Stripe’.
  2. Redirect the user to the Stripe (CreditCard) ‘checkout’ payment page on their Android or Apple device or in their Chrome browser logged in with their Google Account.
    • If the Installment was created through the FinDock API, please use the RedirectURL provided in the response.
    • If the user has a digital wallet installed, Stripe automatically recognizes the wallet and shows an Apple Pay or Google Pay button.
      stripe_applepay-473x1024
  3. If the payer clicks this button:
    • If data like ‘Billing address’ and ‘email address’ is missing: prompted to add these from this screen:
      stripe_applepay_prompt_for_info-473x1024
    • Prompted to pay with Passcode
      stripe_applepay_passcode-473x1024
  4. User is redirected to:
    • SuccessURL if the payment is successful
    • FailureULR if the payment was cancelled or unsuccessful

FinDock updates the original installment with the status of the payment and stores a payment attached to the original installment with a Payment Profile containing the wallet details from Stripe. Since both debit and credit cards can be used with wallets, the type of card is stored in the ‘Funding Type’ field.

Setting up direct debits#

You can use Stripe to process BACS or SEPA Direct Debit payments. For these, you need the FinDock Payment API or Giving Pages, and payment schedules.

A Stripe Direct Debit can only be initiated through the FinDock Payment API, either by your own online payment or FinDock Giving Pages. Once initiated and registered at Stripe, the Direct Debits can be collected in bulk through Payment schedules. Just use Payment Method ‘BACS Direct Debit’ and select PaymentHub-Stripe as Payment Processor (or ensure Stripe is set as the default processor for the Bacs or SEPA Direct Debit payment method).

The Stripe API payment flows are described in detail in the Stripe docs here.

Payment API messages#

The following are example messages for single and recurrent payments using the Payment API.

One-time payment with credit card#

{    "SuccessURL": "https://www.example.com/success",    "FailureURL": "https://www.example.com/error",    "Payer": {        "Contact": {            "SalesforceFields": {                "FirstName": "Eric",                "LastName": "Johnson",                "Email": "eric@johnson.com"            }        }    },    "OneTime": {        "Amount": "36"    },    "PaymentMethod": {        "Name": "Creditcard",        "Processor": "PaymentHub-Stripe"    },    "Settings": {        "SourceConnector": "PaymentHub"    }}

Recurring payment with credit card#

{    "SuccessURL": "https://www.example.com/success",    "FailureURL": "https://www.example.com/error",    "WebhookURL" : "https://webhook.site/9b9e84ca-1026-434e-a4a0-0d9f93a29587",    "Payer": {        "Account": {            "SalesforceFields": {                "Name": "Eric Johnson account",                "BillingStreet": "1234 Some Steet",                "BillingCity": "Some City"
            }        }    },     "Recurring": {          "Amount": "25",          "Frequency": "Monthly",          "StartDate": "2021-04-01"     },    "PaymentMethod": {        "Name": "CreditCard",        "Processor": "PaymentHub-Stripe"    },    "Settings": {        "SourceConnector": "PaymentHub"    }}