Integrate with Stripe

Integrate with Stripe

There are two methods for integrating Stripe with MembershipWorks. The method most commonly used is our quick Connect Stripe method. However, in some cases you may need to integrate with Stripe manually using Restricted Keys instead.

Info
You will need to use Restricted Keys if:
  1. You have multiple MembershipWorks accounts that need to be connected to a single Stripe account. In this case, you will not be able to use the streamlined Connect Stripe method. Please contact us first to enable the use of Restricted Keys on your MembershipWorks accounts.
  2. You want to utilize a different Stripe account for an event using the payment gateway override. This is located under the event’s Advanced tab.

Step by Step Instructions

Integrate with Stripe Using the Connect Stripe Method

Step 1: Sign Into Stripe 

Sign up for or sign into your Stripe account at stripe.com. If you have not already done so, activate your Stripe account.

Step 2: Go to Integration Settings 

Go to MembershipWorks > Organization Settings and click the Integration link at the top.


Info
If you do not see the Integration link, this means you are not logged in as the primary admin. Only the primary admin is able to set up the payment integration.

Step 3: Connect Stripe 

Go to the section titled Payments. Next to Payment Gateway, select Stripe from the dropdown menu and click the Connect Stripe button.


Step 4: Select Stripe Account to Connect 

Under Select an account in the Stripe Apps window, click on the Stripe account that you would like to integrate with. In the screenshot below, there is only one account to select, however you may have multiple accounts listed so make sure to click on the account that you want to use to process payments from MembershipWorks.



Step 5: Install Stripe App 

Click the Install App button at the bottom of the pop-up window.


Step 6: Complete Installation 

When the installation is complete, you will see a message that you will be taken back to MembershipWorks automatically.


Step 7: Confirm Connection 

In MembershipWorks, you will see a message displayed in the Payments box confirming that your account is now connected to Stripe.


Integrate with Stripe Using Restricted Keys

Step 1: Sign Into Stripe 

Sign up for or sign into your Stripe account at stripe.com. If you have not already done so, activate your Stripe account.

Step 2: Go to Integration Settings 

Go to MembershipWorks > Organization Settings and click the Integration link at the top.


Info
If you do not see the Integration link, this means you are not logged in as the primary admin. Only the primary admin is able to set up the payment integration.

Step 3: Select Payment Gateway 

Go to the box titled Payments. Next to Payment Gateway, select Stripe from the dropdown menu. If you haven’t contacted us to let us know that you need to use Restricted Keys, you will see a Connect Stripe button below this.


You should not click the Connect Stripe button if you need to integrate with Stripe using Restricted keys. Instead, contact us and we will let you know once we have made the appropriate changes to your account.

After contacting us, you will see the fields where you will need to enter a Live Restricted Key and a Live Public Key instead.


Step 4: Obtain Stripe Publishable Key 

Go to the Stripe API Key page. Mouse over the Publishable Key and then click to copy it.


Step 5: Enter Live Public Key 

Go back to MembershipWorks > Organization Settings > Integration > Payments and paste the publishable key in the Live public key field.


Step 6: Create Stripe Restricted Key 

Go to the Stripe API Key page. Click the + Create restricted key button.


Step 7: Restricted Key Settings 

Under How will you use this API key?, select Providing this key to another website.


Step 8: Restricted Key Name

In the next box, under Name enter MembershipWorks. Under URL enter https://membershipworks.com and check the box next to Customize permissions for this key. Click Continue at the bottom.


Step 9: Restricted Key Permission Settings 

Select Write permission for the following resources and then click Create key:

  • All Core resources
  • All Checkout resources
  • All Billing resources
  • All Webhook resources
  • All Payment Link resources
  • All Terminal resources

(other resources can be set to None)


Step 10: Note Down Stripe Restricted Key 

Stripe will display the restricted key once and give you a chance to copy it. They will not display it in full again, so you should copy and paste it somewhere safe such as a password manager program.

Step 11: Enter Restricted Key Into MembershipWorks 

After copying the restricted key to a safe place, go back to MembershipWorks > Organization Settings > Integration > Payments and paste it into the Live restricted key field.


Step 12: Save

Click Save & Continue at the bottom.


Test Your Stripe Integration

Test your Stripe integration by actually signing up as a member on your website. You can always refund your own credit card afterwards. This is the only way to be assured that your signup form works. Make sure the transactions appear on the account timeline and the renewal date is updated correctly after signing up.

Info
Note that credit card transaction/processing fees associated with the original charge may not be returned when a refund is processed. 

Setup FAQ

Setup Webhook

The Webhook setting will allow Stripe to notify us when a payment is made, so your membership and event payment information will be kept up to date. MembershipWorks will normally setup a webhook automatically when you first integrate with Stripe. However if an error occurs, you may need to setup the webhook manually.

From your Stripe account, click on Developers from the left menu, then click on Webhooks. Create a new webhook endpoint using the URL "https://api.membershipworks.com/fi/pay". Click on "Receive All Events" and click "Add Endpoint". Note that the box should not show "TEST DATA" at the top, and confirm that once the endpoint is added to the list that it shows "LIVE" under the MODE column. If you are unable to add a LIVE mode webhook, then you have not yet finished activating your account.


Invalid API Key/Unsafe Errors & New Stripe Accounts Created After Oct 2017

As of Oct 2017, new accounts have to process payments safely by tokenizing credit card information. This requires that you have a SSL certificate installed on your website and that you force all payment checkout pages (ie. Member Sign Up, Member Manage, Events, Forms) on your website to load over SSL (HTTPS). If your web pages are correctly setup with SSL, there is no further action you need to take, our system will tokenize the credit card information for Stripe.

If you do not have SSL setup, and need to process payments for testing, you can type "PCI" in the search bar in the Stripe dashboard, then select Settings > Integration. Click on "Show advanced options" and enable "Handle card information directly". You will need to certify that you understand the risks and liability in not processing payments using tokenization, and provide the reason for not complying. You may not claim our integration does not support tokenization or that PCI compliance is handled by us. Securing your website with SSL is a basic requirement for PCI compliance.