How to Add Stripe as a Payment Method

Set up Stripe to take payments in Upmind

Stripe is a popular payment method that accepts credit and debit cards. It can be easily linked with Upmind as a payment method. Our implementation is transparent (as in the client is not sent off to Stripe's payment pages) and allows the clients to enter card data that is sent to Stripe and tokenised with them.

A token is then stored in Upmind, along with an identifier for the card (last four digits, card type, expiry date). The full card data is never stored by Upmind.

Getting API credentials

Before you add this payment method, log in to your Stripe account and copy the API key. Go to Developers and then:

  • Either copy your Secret Key as an API Key on Upmind and the Publishable Key as a Public Key in Upmind settings.
  • or generate a Restricted Key with the following write access:
    • PaymentIntents
    • Customers
    • PaymentMethods,
    • Prices
    • SetupIntents and
    • Charges

Adding a payment provider

Setting up Stripe is straightforward. Go to Settings > Payment providers in your admin area. Then click Add payment provider and choose Stripe.

Adding details

Scroll down the page and add details.

-Test Mode defines whether you want to be in Stripe test mode.
-Stored defines whether you want to allow clients to store cards or simply use them for one-time purchases.

  1. Enter a display name. We suggest Credit or debit card.
  2. Click the Test Mode field and select No.
  3. Enter the Secret Key and Publishable Key.
  4. Click the Stored field and select an option.
  5. Click the Test Credentials button to verify your account.
  6. Scroll through the list of credit cards and toggle off card types. The default setting is all On.
  7. Add currencies (optional).
  8. Enter payment instructions. (optional)
  9. Click Create.

Adding Stripe JS

Once you've completed entering the Stripe information as explained in the Adding Details section, the next step is adding the Stripe JS (In order to do that, you will need a public key. Here's an article where you can find out how.). There are two options for each question: yes or no. Here's a detailed explanation to help you understand:

  1. CREATE CUSTOMER FOR NON-STORED PAYMENTS (STRIPE.JS ONLY): Select "yes" if you wish to create a customer record for each payment made without storing their payment details for future transactions - Recommended YES
  2. REUSE STRIPE CUSTOMER FROM OTHER SAVED PAYMENT METHODS (STRIPE.JS ONLY): If you want to enable using saved payment methods linked to a customer's Stripe account for Stripe.js payments, select "yes." Recommended YES
  3. REUSE STRIPE CUSTOMERS BY EMAIL [FIRST MATCH] (STRIPE.JS ONLY): Select "yes" if you prefer linking customers' payments via their email addresses in Stripe for Stripe.js transactions. Recommended YES
  4. ACCEPT CARDS? (STRIPE.JS ONLY): Choose "yes" to accept card payments using Stripe.js on your website. Recommended YES
  5. ACCEPT PAYPAL? (STRIPE.JS ONLY): Opt for "yes" if you want to accept PayPal payments via Stripe.js integration and how you enable Paypal through Stripe you can use this article. Recommended YES

Your choices should align with your specific business requirements and the payment methods you wish to support through Stripe.js on your website.

Changing the Stripe statement description

The Stripe statement description can be changed under Settings > Payment Options> gateway settings > statement description

Indian Stripe customers

For Stripe customers in India that are not sole traders, you can only accept INR as a currency through Stripe. Stripe's error is as follows:

As per Indian regulations, only registered Indian businesses (i.e. sole proprietorships, limited liability partnerships and companies, but not individuals) can accept international payments. More info here:

Editing the payment method

You can change or update the payment method. Go to the Payment Providers page, click the three dots, and select Edit.