Before you start
GoodCRM works with two payment providers:
Stripe: card payments and digital wallets such as Apple Pay and Google Pay
GoCardless: Direct Debits
You'll need your own account with Stripe and GoCardless.
Connecting each provider has two parts:
Keys or tokens let GoodCRM create payments in your account.
A webhook lets your provider tell GoodCRM when a payment succeeds or fails. Without it, payments won't show up correctly in GoodCRM.
š Note: You need admin access to GoodCRM to change payment settings.
Open your Payment Settings
Choose Tools & Settings from the top-right menu.
Under System settings, click Payment settings.
The top of the page has a checklist showing what's connected. Each item gets a tick once it's set up:
Stripe is connected (card payments)
Digital wallets are enabled
GoCardless is connected (Direct Debit)
GoCardless webhook is set up
Stripe webhook is set up
Testing mode
If you've entered test keys generated by Stipe or GoCardless' own 'test mode', a Test Credentials panel reminds you that you're in test mode. In test mode you can pay with the card 4242 4242 4242 4242, with any future expiry date and any CVC, and you won't be charged. When you're ready to go live, replace your test keys with your live keys and set up the webhooks again in live mode.
Linking your GoCardless account
Connect GoCardless (Direct Debit)
š” Tip: Log in to your GoCardless account in another tab before you start.
Step 1: Create an access token
An access token lets GoodCRM read and write information in your GoCardless account.
In the GoCardless Access Token panel in GoodCRM, click the Click here link. This opens the GoCardless dashboard.
Give the token a name, such as GoodCRM.
Set the scope to Read-write access.
Click Create access token, then click Copy.
Back in GoodCRM, paste the token into GoCardless Access Token.
Step 2: Create a GoCardless webhook
In the GoCardless Webhook panel in GoodCRM, click the Click here link.
In GoCardless, name the webhook GoodCRM.
For the URL, use the notifications address shown on your GoodCRM settings page. It looks like
https://<your-crm-address>/subscriptions/notifications.Leave Secret blank and leave Webhook client certificate unticked.
Click Create webhook endpoint.
Click the new webhook in the GoCardless list to open it, and copy its secret.
In GoodCRM, paste it into GoCardless Webhook Secret box.
Remember to click Save when you've completed all steps to update your settings.
Connect Stripe (card payments and digital wallets)
š” Tip: Log in to your Stripe dashboard in another tab before you start.
Step 1: Add your Stripe API keys
In the Stripe Access Tokens panel in GoodCRM, click the click here link to open your Stripe API keys.
Check you're in live mode, not a sandbox or test mode, unless you're setting up for testing.
Copy your Publishable key and paste it into Stripe Publishable Key box in GoodCRM.
Under Secret key, click Reveal live key, copy it and paste it into Stripe Secret Key box in GoodCRM.
ā ļø Be careful: Your secret key gives full access to your Stripe account. Only paste it directly into GoodCRM. Never share it by email or chat.
Step 2: Create a Stripe webhook
The webhook lets Stripe tell GoodCRM when a recurring payment succeeds or fails.
Log in to Stripe. To go live, check you're in live mode, not a sandbox or test mode.
Open Workbench ā Webhooks (dashboard.stripe.com/webhooks) and click Add destination.
3. Next, select Your account as the Event destination scope.
4. For the payload format, choose Snapshot. For API version, choose your account's default version.
5. Under events, select invoice.payment_succeeded and invoice.payment_failed.
6. Click Continue, choose Webhook endpoint, then click Continue again.
7. Copy and paste in the Endpoint URL from your GoodCRM payment settings. It should look something like: https://<your-crm-address>/subscriptions/stripe-notifications. Add a description such as GoodCRM.
8. Create the destination. On its page, click Reveal secret and copy the signing secret. It starts with whsec_.
9. In GoodCRM, go to Tools & Settings ā Payment settings, paste it into Stripe Webhook Secret and click Save. A green tick appears once it's saved.
Click Save to save your payment settings. You should then see all items marked as completed on your Payment Settings page:










