Introducing the Chargebee CLI

Pay by Bank via Stripe

This feature is a Private Beta release. Contact Chargebee Support to enable Pay by Bank via Stripe for your live and test sites.

Chargebee supports Pay by Bank through the Stripe payment gateway, letting you offer customers in the UK and select European countries a familiar local payment experience at checkout.

Pay by Bank is an Open Banking payment method that lets customers pay directly from their bank account.

When a customer selects Pay by Bank during checkout:

  • They're redirected to their online banking to authenticate and authorize the payment.
  • After authorization, Stripe redirects the customer back to your Chargebee site.

Supported countries and currencies

Pay by Bank supports EUR (Euro) and GBP (British Pound). Supported countries differ for customers and for businesses (the Stripe account that accepts the payment).

Customer locations

Customers paying with Pay by Bank can be located in the following countries:

CountrySupported currency
FinlandEUR (Euro)
FranceEUR (Euro)
GermanyEUR (Euro)
IrelandEUR (Euro)
United KingdomGBP (British Pound)

Business locations

Businesses with a Stripe account registered in any of the following countries can accept Pay by Bank:

AT, AU, BE, BG, CA, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IT, LI, LT, LU, LV, MT, NL, NO, PL, PT, RO, SE, SG, SI, SK, US

Key features

  • Supports one-time payments (one-time charges) only.
  • Supports EUR (Euro) and GBP (British Pound) as the payment currencies.
  • Available to customers in Finland, France, Germany, Ireland, and the United Kingdom.

Prerequisites

Before you set up Pay by Bank in Chargebee:

Integration options

You can integrate Pay by Bank via Stripe using the following methods.

Integration methodDescription
Chargebee Hosted Pages (in-app checkout)Accept Pay by Bank payments using Chargebee's in-app hosted checkout with minimal integration effort.
Chargebee Hosted Pages (full-page checkout)Accept Pay by Bank payments using Chargebee's full-page hosted checkout.
Chargebee.jsEmbed Pay by Bank as a payment method in your custom checkout using Chargebee.js.
API (Payment Intent)Process Pay by Bank payments using Chargebee APIs for a fully custom checkout and payment flow.

Configure Pay by Bank via Stripe in Chargebee

To enable Pay by Bank payments through Stripe in Chargebee:

  1. Log in to your Chargebee Billing site.
  2. Go to Settings > Configure Chargebee > Payment Gateway.
  3. Select Stripe from the list of configured gateways.
  4. On the Configure Stripe page, turn on Pay by Bank.
  5. Click Apply to save your changes.

Configure Smart Routing

After you turn on Pay by Bank, follow these steps to configure Smart Routing for it:

  1. Go to Settings > Configure Chargebee > Payment Gateways.
  2. Click Manage Rules under Smart Routing.
  3. Under the For Pay by Bank section, set the rules to route GBP and EUR payments to your Stripe account, then click Save.

Configuring webhooks

To keep your Chargebee–Stripe integration in sync, configure webhooks in Stripe. Webhooks let Chargebee receive real-time updates from Stripe when important events, such as refunds, occur.

For this integration to work correctly, enable the following event:

This event notifies Chargebee when a refund transaction is created, fails, or is updated in Stripe, so refunds are reflected accurately in your Chargebee account.

Payment workflow

Your customer completes the following steps at checkout when paying with Pay by Bank via Stripe:

  1. The customer enters their email address on the Your order page and clicks Next.
  2. On the Add your account details page, the customer enters their name, email, and phone number, then clicks Next.
  3. The customer enters their billing address on the Add your billing address page and clicks Next.
  4. On the Add your payment details page, the customer selects PayByBank and clicks Continue with Pay By Bank.
  5. The customer reviews the order summary on the Complete your order page and clicks Pay.
  6. On the Pay by Bank payment page, the customer authorizes the payment through their online banking.
  7. The customer completes the authorization while the transaction is processed.
  8. Once the payment is authorized, the page automatically closes and the customer is redirected back to Chargebee.

These screenshots show the Pay by Bank checkout flow in Stripe's test environment. In production, customers complete the payment through their bank's online banking system.

Payment features

The following features are supported for Pay by Bank via Stripe.

FeatureDescriptionSupportedDefault stateConfiguration or behavior
Integration sync modeDefines how payment requests are processed and statuses are communicated between Chargebee and Stripe.Yes (asynchronous)AsynchronousStripe processes Pay by Bank payments asynchronously. Chargebee receives the final payment status through Stripe webhooks. Webhook configuration is mandatory and is used to receive refund updates through the charge.refund.updated event.
Capture settingsPayment processing involves two stages: authorization and capture. Capture settings determine when funds are collected after authorization.YesAuto captureAuto capture is the default and only supported capture setting for Pay by Bank via Stripe. No additional configuration is required.
Verification modesDefines how payment methods are verified before processing.YesEnabledThe customer authorizes the payment through their online banking. No separate verification configuration is required in Chargebee.
Statement descriptorDisplays the business name on the customer's bank statement, helping them recognize charges and reducing disputes.NoNot applicableNot applicable to Pay by Bank via Stripe.
Chargeback managementHandles chargeback events and applies configured actions on invoices and subscriptions.NoNot applicableStripe does not provide a chargeback process for Pay by Bank. Issue refunds manually if needed.
Fraud managementUses gateway fraud signals to identify and flag high-risk transactions.NoNot applicableNo Pay by Bank-specific fraud configuration is available in Chargebee.
Transaction initiation typeIdentifies whether a transaction is customer-initiated (CIT) or merchant-initiated (MIT).NoNot applicablePay by Bank supports customer-initiated, one-time payments only. Merchant-initiated recurring charges aren't supported.
Error intelligenceProvides standardized categorization of payment failures.YesEnabledAvailable through Stripe payment responses. No configuration is required.
Gateway transaction detailsProvides access to raw gateway responses for transactions.YesEnabledAvailable on the transaction page under Error details. No configuration is required.
Adding payment methods in the Chargebee dashboardAllows a payment method to be added in Chargebee when details are collected outside checkout.NoNot applicableCustomers must complete the Pay by Bank checkout flow. Pay by Bank can't be added from the Chargebee dashboard.

Supported token formats

This section is relevant if you're building a custom checkout or migrating payment methods from another provider to Stripe.

Token typeDescriptionSupportedToken fieldToken format
Chargebee Payment IntentRecommended token format when building a custom checkout using Chargebee.js.Yespayment_intent[id]payment_intent_id
Chargebee tokenLegacy token format supported for selected payment methods and gateways with Chargebee.js. Not recommended for new implementations.Notoken_idNot applicable
Gateway permanent tokenPermanent reference provided by the gateway. Not applicable to Pay by Bank because it doesn't support stored credentials.Nopayment_method[reference_id]Not applicable
Gateway temporary tokenShort-lived token format that can be converted to a permanent token.NoNot applicableNot applicable

Testing

Sandbox testing

Refer to Stripe's Pay by Bank documentation for instructions on testing Pay by Bank in the Stripe test environment. Make sure webhooks are configured to receive the charge.refund.updated event for refund settlement updates.

Production testing

Before you go live:

  • Make sure Pay by Bank is enabled in your Stripe live account.
  • Verify that webhook configuration is complete (required for refund settlement updates).
  • Run end-to-end testing using a real bank account in a supported country with online banking enabled.

Reconciliation

For financial reconciliation between Chargebee and Stripe, use the Chargebee transaction field id_at_gateway, which maps to the Stripe PaymentIntent ID.

To reconcile transactions:

  1. Retrieve the id_at_gateway value from the Chargebee transaction details.
  2. Locate the corresponding transaction in your Stripe Dashboard or reports.
  3. Match transactions using this reference to keep your records consistent.

Limitations and important points

  • Pay by Bank can't be added as a payment method through the customer portal or the Chargebee app. Customers must complete the Pay by Bank checkout flow.
  • Pay by Bank doesn't support storing payment methods for recurring billing. Each transaction requires the customer to authenticate through their online banking.
  • Pay by Bank isn't suitable for automatic subscription renewals. To collect subscription payments with Pay by Bank, send email notifications with a Pay Now link when a new invoice is generated.
  • Pay by Bank is available to customers in Finland, France, Germany, Ireland, and the United Kingdom who have a participating bank with online banking enabled.
  • Stripe does not provide a chargeback process for Pay by Bank. Issue refunds manually if needed.
  • Transaction amounts must be between 0.50 GBP and 10,000.00 GBP, or between 1.00 EUR and 10,000.00 EUR, depending on the transaction currency.
  • Pay by Bank is available for EUR (Euro) and GBP (British Pound) transactions.