Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Excerpt
hiddentrue

Stripe Payment is a popular payment gateway in North America, and Europe. Stripe is built for developers and offers flat fee processing. This integration supports 3DS and SCA.


Table of Contents
Table of Contents
maxLevel6
minLevel2
outlinetrue
classtoc

About Stripe Payments

Stripe is a global payment gateway built for developers. This implementation supports 3DS (3D Secure) and SCA (Secure Customer Authentication). Learn more about Stripe on their website at https://stripe.com/

Credit Card Processing Features

Local Storage

Token Storage

Process

Refund

Void

Status
colourRed
titleNo

Status
colourGreen
titleYes

Status
colourGreen
titleYes
Status
colourGreen
titleYes
Status
colourGreen
titleYes

* With Token Storage, credit card details pass through Blesta to Stripe's API. Blesta never stores the credit card number.

ACH Processing Features

Local StorageToken StorageProcessRefundVoid

Status
colourRed
titleNO

Status
colourGreen
titleYES

Status
colourGreen
titleYes
Status
colourGreen
titleYes

Status
colourRed
titleNo

Stripe will make 2 deposits to the checking or savings account which must be confirmed within the payment account before it can be used for payment.

Installing Stripe Payments

...

To install the Stripe Payments gateway, visit [Settings] > [Company] > [Payment Gateways] > Available, and click the "Install" button for Stripe Payments.

...

A message will be displayed, indicating that the payment gateway was successfully installed.


Note
titleDouble check migration

After running the migration, you should return to the management page and confirm that the "Accounts Remaining" is 0.  Even if you get a success message after running the migration, it only runs in batches of 15 accounts and may consider some accounts unmigratable.  If the number is not 0 then you should leave the old Stripe gateway installed.


Note

The migration section will only be shown if the old Stripe gateway is installed


Enter the details provided by Stripe.

Field NameDescription
API Publishable KeyEnter your API Publishable Key. This is the API Publishable Key provided by Stripe or your merchant account provider.
API Secret KeyEnter your API Secret Key. This is the API Secret Key provided by Stripe or your merchant account provider.
Accepted Currencies

Check the currencies that you would like to be processed through this payment gateway.

The following currencies are available:

AED,  AFN,  ALL,  AMD,  ANG,  AOA,  ARS,  AUD, AWG,  AZN,  BAM,  BBD,  BDT,  BGN,  BIF,  BMD,  BND,  BOB,  BRL,  BSD,  BWP,  BZD,  CAD,  CDF,  CHF,  CLP,  CNY,  COP,  CRC,  CVE,  CZK,  DJF, DKK,  DOP,  DZD, EEK,  EGP,  ETB,  EUR,  FJD,  FKP,  GBP,  GEL,  GIP, GMD,  GNF,  GTQ,  GYD,  HKD, HNL,  HRK,  HTG,  HUF, IDR,  ILS,  INR,  ISK,  JMD,  JPY,  KES,  KGS,  KHR, KMF,  KRW,  KYD,  KZT,  LAK,  LBP,  LKR,  LRD,  LSL, LTL,  LVL,  MAD,  MDL,  MGA,  MKD,  MNT,  MOP,  MRO, MUR,  MVR,  MWK,  MXN,  MYR,  MZN,  NAD,  NGN,  NIO, NOK,  NPR,  NZD,  PAB,  PEN,  PGK,  PHP,  PKR,  PLN, PYG,  QAR,  RON,  RSD,  RUB,  RWF,  SAR,  SBD,  SCR, SEK,  SGD,  SHP,  SLL,  SOS,  SRD,  STD,  SVC,  SZL, THB,  TJS,  TOP,  TRY,  TTD,  TWD,  TZS,  UAH,  UGX, USD,  UYI,  UZS,  VEF,  VND,  VUV,  WST,  XAF,  XCD, XOF,  XPF,  YER,  ZAR,  ZMW

When finished, click "Update Settings" to save the details. You have successfully installed and configured Stripe!

Note

A guide for testing can be found here https://stripe.com/docs/testing

Common Problems

  • The Credit Card field does not appear when attempting to make a payment.
    • Make sure you are accessing your Blesta installation over HTTPS and you have a valid SSL certificate.
    • Make sure your server/browser can negotiate TLS 1.2
  • Credit Card emails (e.g.  Payment Approved (Credit Card)) may have missing content when payment is made without saving the details as a payment method.  To help with this, replace "{card_type}" with "{card_type | set_default "credit card"}"and replace ", ending in {last_four}" with "{% if last_four %}, ending in {last_four}{% endif %}"
  • I'm running Blesta version 5.8.2 or older and transactions are not recorded in Blesta or the transaction number is missing
    • Make sure you created a webhook
    • Update /components/gateways/merchant/stripe_payments/stripe_payments.php and replace the loadApi() method with the following:

      Code Block
      languagephp
          /**
           * Loads the API if not already loaded
           */
          private function loadApi()
          {
              Loader::load(dirname(__FILE__) . DS . 'vendor' . DS . 'stripe' . DS . 'stripe-php' . DS . 'init.php');
              Stripe\Stripe::setApiKey((isset($this->meta['secret_key']) ? $this->meta['secret_key'] : null));
       
              // Include identifying information about this being a gateway for Blesta
              Stripe\Stripe::setAppInfo('Blesta ' . $this->getName(), $this->getVersion(), 'https://blesta.com');
       
              // Set API version
              Stripe\Stripe::setApiVersion('2022-08-01');
          }