Stripe

Follow the standard PaymentsOS integration procedure, and then apply the relevant extra specifications in this section to integrate with Stripe.

API Version

Minimum required API version: 1.1.0

Payment Methods

The following table lists all supported payment methods.

Payment MethodPayment Method Type
American ExpressCards
DINERSCards
DISCOVERCards
JCBCards
MASTERCARDCards
VISACards

Currencies

See the Stripe documentation.

Features

The following table provides an overview of all supported and non-supported features.

FeatureSupported
3DS 2.0 ExternalNo
3DS 2.0 PaymentsOS-handledNo
3DS 2.0 Provider-handledNo
3DS 2.0 Self-handledNo
InstallmentsNo
Level 2 and 3 DataNo
Multi-seller PaymentsNo
Network TokensNo
Payment FacilitatorNo
PayU RiskNo
Pre-authorizationNo
Retrieve Supported Payment MethodsNo
Retrieve Supported PlansNo
Statement Soft DescriptorYes
Stored Credentials FlagNo
Transaction Processing without CVVYes

Requests

The following table lists all supported requests for card-based transactions. Use the bodybuilder to create a sample request body for each request type.

RequestPartial/MultipleMode
AuthorizePartial and multiple are not supportedSynchronous
Capture Partial is supportedSynchronous
Charge Not ApplicableSynchronous
Refund Both partial and multiple are supportedSynchronous
Void Not ApplicableSynchronous

Setup Procedures

The following table lists the setup procedures that are specific to this provider.

ConfigurationRequired/Optional
In the PaymentsOS Control Center, configure the following credentials:
  • api_key: The api_key provided by Stripe.
To see your Stripe account, open your Stripe dashboard and click API. Use the 'View Test Data' button to switch between your test and live Stripe Dashboards.
Required
Allow Stripe to safely accept tokens from PaymentsOS. For help, see Allowing Stripe to Safely Accept Tokens from PaymentsOS below.Required

Integration Procedures

The following sections list the integration procedures that are specific to this provider.

Allowing Stripe to Safely Accept Tokens from PaymentsOS

PaymentsOS is PCI DSS compliant, guaranteeing that all card data is securely stored. Stripe, however, is unaware of this PCI DSS compliancy accreditation when receiving tokens from PaymentsOS and will thus assume that you are sending credit card numbers directly to its API (which is considered to be unsafe). As a result, you will receive the following error in the provider_data object in the response data of your transaction request:

{
    "provider_data": {
        "provider_name": "Stripe",
        "response_code": "StripeInvalidRequestError",
        "description": "Sending credit card numbers directly to the Stripe API is generally unsafe. We suggest you use test tokens that map to the test card you are using, see https://stripe.com/docs/testing.",
    }
}

To circumvent this, you must configure Stripe to allow unsafe transactions. To do so, login to your Stripe dashboard. Then navigate to Business Settings > Integration and toggle on the Process payments unsafely option. You will be asked to confirm that you know what you are doing before you can apply the setting.

Support for Radar

Radar is currently not supported when integrating with Stripe.

Testing

Use the Test Cards in the Test card numbers and tokens page for testing.

Last modified December 7, 2021