> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Stripe Checkout

> How to connect Stripe Checkout so customers can pay by card, wallet or bank debit, including Apple Pay setup.

## Overview

Stripe Checkout shows customers a Stripe payment form in a pop-up window inside the Members Portal or app, so they pay without leaving it. It supports recurring billing and is fully SCA compliant.

Customers see the payment methods you turn on in your Stripe account, such as cards, Apple Pay, Google Pay, and bank debits like BACS or ACH. Nexudus can't turn Stripe payment methods on or off for you: manage them in the Stripe Dashboard before you connect.

## Features

| Feature | Supported |
| - | - |
| Card payments | Yes |
| ACH / Direct debit | Yes, when turned on in Stripe (requires automatic recurrent payments) |
| Recurring payments | Yes |
| 3D Secure | Yes |
| Refunds | Yes |
| Sandbox mode | Yes |
| Apple Pay | Yes (requires Merchant Identifier) |

## Configuration Parameters

To configure Stripe Checkout, go to **Settings → Billing and payments → Payments and currency → Payment methods**, search for **Stripe Checkout** and select its tile.

### Required Settings

| Setting | Description |
| - | - |
| **Enabled** | Master switch to enable or disable Stripe Checkout. |
| **Publishable key (starts with 'pk\_')** | Your Stripe publishable API key (starts with `pk_`). |
| **Secret key (starts with 'sk\_')** | Your Stripe secret API key (starts with `sk_`). Don't use a restricted key (starts with `rk_`). |

### Optional Settings

| Setting | Description |
| - | - |
| **Enable automatic recurrent payments (recommended)** | Saves the customer's payment details in Stripe so future invoices are collected automatically. Required for direct debit and ACH through Stripe Checkout. |
| **Merchant Identifier (only for ApplePay)** | Your Apple Merchant ID. Required for Apple Pay. |
| **Domain verification file contents** | The contents of the Apple Pay domain verification file. |

## Setting up Stripe Checkout

1. Create an account at [stripe.com](https://stripe.com) and fully activate it, including your business and bank details.
2. In the Stripe Dashboard, turn on the payment methods you want to offer.
3. Go to **Developers > API keys** and copy your live **Publishable key** (starts with `pk_live_`) and **Secret key** (starts with `sk_live_`).
4. In Nexudus, open **Stripe Checkout**, turn on **Enabled** and paste your keys into **Publishable key (starts with 'pk\_')** and **Secret key (starts with 'sk\_')**.
5. Turn on **Enable automatic recurrent payments (recommended)** if you sell plans or want bank debits.
6. Select **Save changes**, then make a test payment.

<Warning>Use your standard **Secret key** (starts with `sk_`), not a restricted key (starts with `rk_`). Stripe may recommend creating a restricted key for third-party integrations, but Stripe Checkout won't work in Nexudus with one.</Warning>

<Warning>If the Stripe Dashboard shows a **Test mode** banner, or your keys start with `pk_test_` and `sk_test_`, the account can't take real payments. Activate the account and use your live keys.</Warning>

<Tip>To test Stripe Checkout, the test customer needs an unpaid invoice. See [Test a payment method](/platform/finance/payment-gateways#test-a-payment-method).</Tip>

### Test card numbers

In Stripe's test mode you can use these card numbers:

* `4242 4242 4242 4242` — Successful payment
* `4000 0000 0000 9995` — Declined for insufficient funds
* `4000 0025 0000 3155` — Requires 3D Secure authentication

<Note>Test keys only work with Stripe's test mode. Switch back to your live keys before customers start paying.</Note>

## ACH payments

Stripe Checkout is the way to take US ACH bank debits through Stripe. The separate **Stripe ACH** gateway is deprecated.

1. In the Stripe Dashboard, accept Stripe's ACH terms of service and turn on **ACH Direct Debit** under your payment methods.
2. In Nexudus, make sure Stripe Checkout is enabled and **Enable automatic recurrent payments (recommended)** is turned on. ACH can't be used without it.
3. Customers choose ACH in the Stripe payment form and link and verify their bank account. Nexudus then collects their invoices automatically when they fall due.

ACH payments take several working days to settle.

### Moving from the Stripe ACH gateway

If you still collect payments through the old **Stripe ACH** gateway, move to Stripe Checkout:

1. In the Stripe Dashboard, turn on **ACH Direct Debit** under your payment methods, and turn off any methods you don't want customers to see.
2. Enable Stripe Checkout in Nexudus with the same Stripe account, and turn on **Enable automatic recurrent payments (recommended)**.
3. Export your customer lists from Stripe and from Nexudus, and contact Nexudus support to migrate customers' ACH mandates to Stripe Checkout.
4. Remove the old ACH webhook from your Stripe account so payments aren't reported twice.
5. Ask customers to update their bank details in the Members Portal. Payments can't be collected from customers who don't.

## Apple Pay

Apple Pay works in the Members Portal and in white-label apps. It isn't available in the standard Passport by Nexudus app.

### In the Members Portal

1. Register an Apple Merchant ID in your Apple Developer account. Apple recommends a reverse-domain identifier, such as `merchant.com.yourappname`.
2. Add it to **Merchant Identifier (only for ApplePay)** in the Stripe Checkout settings.
3. Paste your Apple Pay domain verification file into **Domain verification file contents**.
4. Select **Save changes**.

### In your white-label app

1. Register your Apple Merchant ID and add it to Stripe Checkout, as above.
2. In the Stripe Dashboard, open the iOS certificate settings for Apple Pay, add a new application and download the Certificate Signing Request (CSR) file.
3. Contact Nexudus support to request an app update. Include your app's name, the CSR file and your Apple Merchant ID.

Customers can use Apple Pay in the app once the update is released. If you change your Merchant ID later, you need a new CSR and another app update.

## Troubleshooting

* **The payment form opens but payments fail** — Verify your API keys match (publishable and secret from the same Stripe account)
* **A payment method is missing from the Stripe payment form** — Turn it on in your Stripe Dashboard. Bank debits also need **Enable automatic recurrent payments (recommended)** turned on in Nexudus.
* **Recurring payments not working** — Ensure **Enable automatic recurrent payments (recommended)** is turned on
* **Apple Pay not appearing** — Check that the Merchant Identifier is configured and the domain verification file is set up correctly

## Related

* [Payment gateways](/platform/finance/payment-gateways)
* [Stripe Direct Debit](/platform/finance/payment-gateways/stripe-direct-debit)
* [Customer payment methods](/platform/finance/payment-gateways/customer-payment-methods)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.