Stripe
This page provides an overview of the payments methods provided by the Stripe adapter in the IXOPAY platform. It also includes a full list of all configuration options available to you when integrating Stripe within your payments landscape, as well as an overview of the parameters required when submitting a transaction via IXOPAY's API.
Payment Methods
Payment Method | Transaction Flows | Transaction Types |
---|---|---|
Creditcard | payment.js Integration | All |
Giropay | Full-page Redirect | Debit |
iDeal | Full-page Redirect | Debit |
Sofort | Full-page Redirect | Debit |
Bancontact | Full-page Redirect | Debit |
DirectDebit | Server-to-Server | Register, Debit, Refund |
Pre-Authorized debit (ACSS) | Full-page Redirect & Server-to-Server | Register, Debit, Refund |
ACH | Full-page Redirect & Server-to-Server | Register, Debit, Refund |
ACH Credit Transfer | Server-to-Server and push-in transactions | Register, Debit (pushed via Stripe's Webhook), Refund |
NOTE: the payment.js integration differs from the general implementation.
Stripe does not support to render card number and CVC/CVV fields in different
DIV elements, but uses a standard widget to collect card data. Hence, only the
numberDivId
will be considered, and the cvvDivId
is ignored.
Additional Parameters
ACSS/Pre-Authorized debit ("PAD")
Prior to being able to charge the customer, the merchant must verify that the
account is owned by the customer and obtain a mandate. This may be either achieved
with a successful Register
transaction or aDebit
transaction with the
withRegister
flag set.
Additionally, the merchant is required to pass on the following data when trying to acquire the initial mandate.
Transaction fields | Required | Description |
---|---|---|
customer.email | true | |
customer.firstName | true | |
customer.lastName | true | |
extraData.acss_transaction_type | true | The type of the mandate. Valid values are personal (B2C) and business (B2B) |
extraData.acss_payment_schedule | true | The Payment schedule for the mandate. Valid values are spoardic , interval or combined |
extraData.acss_interval_description | true, if extraData.acss_payment_schedule is interval or combined | A description, based on which criteria the interval-related payments may be triggered (refer to Stripe's documentation). |
For subsequent transactions, these data are not required anymore.
ACH
Prior to being able to charge the customer, the merchant must verify that the
account is owned by the customer and obtain a mandate. This may be either achieved
with a successful Register
transaction or aDebit
transaction with the
withRegister
flag set.
Additionally, the merchant is required to pass on the following data when trying to acquire the initial mandate.
Transaction fields | Required | Description |
---|---|---|
customer.email | true | |
customer.firstName | true | |
customer.lastName | true |
For subsequent transactions, these data are not required anymore.
ACH Credit Transfer
In order to provision and retrieve a VBAN from Stripe, send a Register
transaction. The bank data are included in the response object.
Transaction fields | Required | Description |
---|---|---|
customer.email | true | for register transactions |
Creditcard
Parameter | Required | Description |
---|---|---|
extradata.isFinalCapture | false | Boolean parameter that can be sent with the `Capture' API request to indicate if it should be a final capture |
Postback Extra Data for Credit Card
Parameter | Value |
---|---|
authentication_flow | For authenticated transactions: how the customer was authenticated by the issuing bank. For possible values see Stripe API reference |
electronic_commerce_indicator | A protocol-level field indicating what degree of authentication was performed. For possible values see Stripe API reference |
exemption_indicator | The exemption requested via 3DS and accepted by the issuer at authentication time. For possible values see Stripe API reference |
exemption_indicator_applied | Whether Stripe requested the value of exemption_indicator in the transaction. For possible values see Stripe API reference |
result | Indicates the outcome of 3D Secure authentication. For possible values see Stripe API reference |
result_reason | Additional information about why 3D Secure succeeded or failed based on the result. For possible values see Stripe API reference |
transaction_id | The 3D Secure 1 XID or 3D Secure 2 Directory Server Transaction ID (dsTransId) for this payment. For possible values see Stripe API reference |
version | The version of 3D Secure that was used. For possible values see Stripe API reference |
Extended Authorization
Parameter | Required | Description |
---|---|---|
extraData.requestExtendedAuthorization | optional | Overwrites the connector configuration. Possible values: if_available , never |
Refer to https://docs.stripe.com/payments/extended-authorization
Postback/Response Extra Data for Extended Authorization
refer to https://docs.stripe.com/terminal/features/extended-authorizations
Extra Data Parameter | Value |
---|---|
charges.data.payment_method_details.card.extended_authorization.status | Extended authorization status |
charges.data.payment_method_details.card.capture_before | Validity window for an authorisation - UNIX timestamp |
Example
"extraData": {
"charges.data.payment_method_details.card.extended_authorization.status": "enabled",
"charges.data.payment_method_details.card.capture_before": 1732878746
},