> ## 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.

# Card Gateways (Spreedly)

> Connect a card payment gateway such as Stripe Payment Intents, Worldpay, Authorize.net, QuickBooks Payments or Mercado Pago through Spreedly.

## Overview

Nexudus connects to over a hundred card payment gateways through Spreedly, a payment service that stores card details securely and passes each payment to your gateway. Spreedly supports 3D Secure, so you can meet Strong Customer Authentication (SCA) rules when your gateway supports it too.

Nexudus manages the Spreedly connection for you. You don't need your own Spreedly account: you only need an account with the gateway itself, such as Stripe, Worldpay or Authorize.net.

<Note>
  Card gateways connected through Spreedly add a charge to your Nexudus subscription:

  * **\$10 / £10 / €10** per month
  * **\$0.04 / £0.04 / €0.04** per transaction

  Your gateway charges its own fees on top. See [Costs](/platform/finance/payment-gateways#costs).
</Note>

## Features

| Feature | Supported |
| - | - |
| Card payments | Yes |
| Recurring payments | Yes |
| 3D Secure | Yes, if the gateway supports it |
| Refunds from Nexudus | Yes |
| Transaction fees | Yes |

## How to access

Go to **Settings → Billing and payments → Payments and currency → Payment methods**. Under **Available payment methods**, search for your **gateway's** name, such as "Worldpay" or "Stripe Payment Intents". Don't search for "Spreedly".

To check whether a gateway works in your country and supports SCA, search [Spreedly's gateway directory](https://www.spreedly.com/gateways). For SCA, look for **Spreedly 3DS2 Global** or **Gateway Specific 3DS2**.

## Add a card gateway

1. Select the gateway's tile.
2. Under **Name & locations**, choose the location in **Owned by**. Only admins with access to that location can manage the gateway.
3. Enter a **Payment gateway name**. Customers see this name when they choose how to pay.
4. Optionally set a **Transaction fee** (see below).
5. Fill in the gateway's credentials. The fields come from the gateway and differ for each one; see [Gateway-specific notes](#gateway-specific-notes).
6. Select **Save changes**. The gateway now appears among your installed payment methods.
7. Open the installed gateway again. Under **This gateway is available at**, turn on each location that should use it.
8. Under **Payment method settings**, turn on **Enabled**, choose who can use it and whether to keep card details on file.
9. Select **Save changes**.

<Note>Each location uses one card gateway at a time. Turning a gateway on for a location replaces any other card gateway that location was using.</Note>

## Settings reference

### Name & locations

| Field | Description |
| - | - |
| **Owned by** | The location that owns the gateway. Only admins with access to this location can manage it. |
| **Payment gateway name** | The name customers see at checkout. |
| **Payment gateway type** | The gateway you selected. Read-only. |
| **This gateway is available at** | One switch per location. Turn it on in each location that should use this gateway. Shown after the gateway is first saved. |

### Transaction fee

| Field | Description |
| - | - |
| **Transaction fee** | A percentage of the amount paid, added as a **Transaction fee** line to invoices paid through this gateway. |
| **Financial account** | The financial account the fee is recorded against. |
| **Tax rate** | The tax rate for the fee, if tax applies. The fee amount includes this tax. |

<Warning>Surcharging card payments is not allowed in many countries, including the UK and most of the EU. Check your local rules before you set a transaction fee.</Warning>

### Payment method settings

| Setting | Description |
| - | - |
| **Enabled** | Turns card payments on for the current location. |
| **Available to members** | Lets members (customers with an active contract) pay by card. |
| **Available to contacts** | Lets contacts (customers without an active contract) pay by card. |
| **Keep card details on file for members** | Keeps each member's most recent card so future invoices can be charged automatically without re-entering it. |
| **Keep card details on file for contacts** | The same, for contacts. |
| **Reuse 3DS authentication data when possible** | Can reduce how often customers are sent to their bank to approve payments, but may increase the number of first-attempt declines. |

## Gateway-specific notes

### Stripe Payment Intents

Stripe Payment Intents is an SCA-compliant way to take card payments through Stripe via Spreedly. It needs your Stripe secret key plus a webhook.

<Steps>
  <Step title="Copy your secret key">
    In the Stripe Dashboard, go to **Developers → API keys** and copy your live secret key.
  </Step>

  <Step title="Create a webhook in Stripe">
    Go to **Developers → Webhooks** and add an endpoint with the URL `https://core.spreedly.com/stripe/webhooks`. Select these events: `payment_intent.succeeded`, `payment_intent.payment_failed` and `payment_intent.amount_capturable_updated`.
  </Step>

  <Step title="Copy the webhook details">
    Copy the webhook's ID (it starts with `we_`) and reveal and copy its signing secret.
  </Step>

  <Step title="Add them to Nexudus">
    Open the **Stripe Payment Intents** tile and enter the secret key in **Login**, the webhook ID in **Webhook Id** and the signing secret in **Webhook Signing Secret**. Save.
  </Step>
</Steps>

<Tip>Moving from another Stripe card gateway? Set up Stripe Payment Intents, test a payment, then delete the old gateway.</Tip>

### Authorize.net

Enter your **API Login ID** and **Transaction Key**, which you can generate in your Authorize.net merchant account. Authorize.net is available to businesses in the US, Canada and Australia.

<Note>The separate **Authorize.net (legacy)** tile is an older direct integration. Use the Spreedly-connected Authorize.net gateway for new setups.</Note>

### Worldpay

Have your Worldpay **Issuer ID**, **Login**, **Org Unit ID**, **HMAC Secret** and **Password** ready. Your Worldpay account manager can provide any you don't have.

### QuickBooks Payments

QuickBooks Payments takes cards and ACH payments in the US and Canada. It needs four values from an app you create in the Intuit Developer portal:

1. Sign in to [developer.intuit.com](https://developer.intuit.com) with your QuickBooks Payments login and create an app for **QuickBooks Online and Payments**, with the `com.intuit.quickbooks.payment` scope.
2. Complete the app's production settings and Intuit's app assessment questionnaire. When asked, say that the app is used to get credentials for another platform that integrates with QuickBooks.
3. In Intuit's OAuth Playground, select the production version of your app, copy the **Client ID** and **Client Secret**, authorise the `com.intuit.quickbooks.payment` scope and generate tokens. Copy the **Access token** and **Refresh token**.
4. In Nexudus, open the **QuickBooks** tile and enter the four values.

### PayPal (card gateway)

This option takes card payments through a PayPal business account without redirecting customers to PayPal. It needs your PayPal account's API credentials and signature. For other PayPal options, see [PayPal](/platform/finance/payment-gateways/paypal).

### Braintree

Enter your Braintree **Merchant ID**, publishable key and secret key. Set **Mode** to `blue`.

### Mercado Pago

1. In the [Mercado Pago developer portal](https://www.mercadopago.com.ar/developers/en/docs/your-integrations/credentials), copy your **Access Token** (it starts `APP_USR-`).
2. Open the **Mercado Pago** tile, enter the access token and your country code: `AR` (Argentina), `BR` (Brazil), `CL` (Chile), `CO` (Colombia), `MX` (Mexico), `PE` (Peru) or `UY` (Uruguay).

<Warning>Nexudus sends the customer's **Tax ID number** with every Mercado Pago payment. In most countries Mercado Pago declines payments without it, so make sure it is filled in on each customer's record.</Warning>

## Troubleshooting

* **Payments failing with token errors** — Verify your gateway credentials (API keys, merchant IDs) are correct and are live, not test, credentials
* **3D Secure not triggering** — Check that your gateway supports 3DS2 in Spreedly's directory
* **Card storage not working** — Check that "Keep card details on file" is enabled for the right customer type
* **The gateway shows a red badge** — It's installed but not enabled or connected in the current location. Turn it on under **This gateway is available at**.

## Related

* [Payment gateways](/platform/finance/payment-gateways)
* [Stripe Checkout](/platform/finance/payment-gateways/stripe-checkout)
* [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.