---
title: "Flutterwave Card Processing"
slug: "flutterwave-card-processing"
updated: 2026-02-27T08:15:41Z
published: 2026-02-27T08:15:41Z
canonical: "docs.apcopay.com/flutterwave-card-processing"
---

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

# Flutterwave Card Processing

## Supported Transaction Types

- [x] Authorisation `AUTH`
- [x] Capture `CAPT`
- [x] Purchase `PURC`
- [x] Refund `PARTIALREFUND`
- [x] Void `GENERALVOID`
- [ ] Payouts `ORIGINALCREDIT`
- [x] Recurring `AUTH` / `PURC`

## Integrations Supported

**Deposit - Authorisation / Purchase**

- [x] [Hosted Payment Page](https://apcopay.redoc.ly/#tag/Hosted-Payment-Page)
- [x] [Direct Connect ( server-to-server)](https://apcopay.redoc.ly/#tag/Payment-Operations)

**Capture, Void, Refunds, Payouts, Recurring**

- [ ] [Hosted Payment Page](https://apcopay.redoc.ly/#tag/Hosted-Payment-Page)
- [x] [Direct Connect ( server-to-server)](https://apcopay.redoc.ly/#tag/Payment-Operations)

## Supported Wallet

- [ ] GooglePay
- [ ] Applepay

## Currencies & Countries Supported

| Title | Description |
| --- | --- |
| **Currencies Supported** | USD, EUR, GBP, NGN, GHS, XAF, XOF, ZAR, KES, MWK, RWF, TZS, UGX, SLL, MAD, COP, CLP, EGP, CAD and others |

## Additional attributes to process Deposits

You must include the following JSON Attributes to the payload. These attributes inform us to proceed with the redirection to Flutterwave to finalise the payment process.

if you are using our **Hosted Payment Page**

| Description | Hosted Payment Page |
| --- | --- |
| **Transaction Type** | "TransactionType": "AUTH" or "PURC" |
| **Force Transaction Routing** | “Routing”:{ "ForceBank": "FLUTTERWAVECARDS” } |
| **Client Details** | "Client": { "FirstName": "Apco", "LastName": "Test", "ClientAccount": "testing", "City": "Valletta", "IPAddress": "1.1.1.1", "Email":"apcotest@test.com", "ZIPCode":"te12345", "State": "State", "Street": "Street1", "Country":"MLT" } |
| **Test Indicator** | "isTest”: true |

Sample requests using our Hosted Payment Page can be viewed here.

```json
 {
  "TransactionType": "AUTH",
  "Amount": 10.00,
  "Currency": "EUR",
  "OrderReference": "34323",
  "RedirectionURL": "https://www.yourURLhere.com/Redirect",
  "FailRedirectionURL": "https://yourURLhere.com/FailRedirect/",
  "UniqueReference": "4b8da4f0-d3b4-44ae-8019-8c66905ffad7",
  "CallBackURL": "https://www.yourURLhere.com/Listener",
  "Routing": {
    "ForceBank": "FLUTTERWAVECARDS"
  },
 "Client": {
    "FirstName": "Apco",
    "LastName": "Test",
    "ClientAccount": "testing",
    "City": "Valletta",
    "IPAddress": "1.1.1.1",
    "Email":"apcotest@test.com",
    "ZIPCode":"te12345",
    "State": "State",
    "Street": "Street1",
    "Country":"MLT"
  },
  "IsTest": true
}
```

If you are using our **direct connect solution** (server-to-server)

| Description | Direct Connect |
| --- | --- |
| **Transaction Type** | "TransactionType": "AUTH" or "PURC" |
| **Force Transaction Routing** | “Routing”:{ "ForceBank": "FLUTTERWAVECARDS” } |
| **Client Details** | "Client": { "Email": "apcotest@gmail.com", "FirstName": "Frictionless", "LastName": "Processed", "Country": "MLT", "MobileNo": "12345678", "Street": "Street1", "City": "City", "State": "State", "IPAddress": "214.21.134.79", "ZIPCode":"te12345" } |
| **Card Details** | "PaymentCredentials": { "PaymentSource": "Card", "CardType": "VISA", "CardNumber": "5061460410120223210", "CvV2": "780", "ExpMonth": "12", "ExpYear": "2030", "CardHolderName": "auth pin" } |
| **Browser details** | "BrowserDetails": { "UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "JavaEnabled": true, "ScreenColorDepth": "1", "ScreenWidth": "1080", "ScreenHeight": "840", "TimeZone": "2", "AcceptHeader": "application/json", "BrowserLanguage": "en" } |
| **Test Indicator** | "isTest”: true |

Sample requests using **Direct Connect** can be viewed here.

```json
 {
  "TransactionType": "PURC",
  "Amount": 10.23,
  "Currency": "EUR",
  "IsTest": true,
  "OrderReference": "123",
  "RedirectionURL": "https://www.yourURLhere.com/Redirect/",
  "FailRedirectionURL": "https://yourURLhere.com/FailRedirect/",
  "UniqueReference": "4b8da4f0-d3b4-44ae-8019-8c66905ffad7",
  "CallBackURL": "https://www.yourURLhere.com/Listener",
  },
  "Client": {
    "Email": "apcotest@gmail.com",
    "FirstName": "Frictionless",
    "LastName": "Processed",
    "Country": "MLT",
    "MobileNo": "12345678",
    "Street": "Street1",
    "City": "City",
    "State": "State",
    "IPAddress": "214.21.134.79",
    "ZIPCode":"te12345"
  },
  "Configuration": {
    "Profile": "termsandconditions"
  },
  "PaymentCredentials": {
    "PaymentSource": "Card",
    "CardType": "VISA",
    "CardNumber": "5061460410120223210",
    "CvV2": "780",
    "ExpMonth": "12",
    "ExpYear": "2030",
    "CardHolderName": "auth pin"
  },
  "BrowserDetails": {
    "UserAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",
    "JavaEnabled": true,
    "ScreenColorDepth": "1",
    "ScreenWidth": "1080",
    "ScreenHeight": "840",
    "TimeZone": "2",
    "AcceptHeader": "application/json",
    "BrowserLanguage": "en"
  }
}
```

### Requesting a Capture, Refund or Void

If you wish to `Capture` a transaction of type `Authorisation` or a `Refund` or `Void` Below are the mandatory fields.

| Description | Direct Connect |
| --- | --- |
| **Transaction Type** | "TransactionType": "CAPT" or "GENERALVOID" or "PARTIALREFUND" |
| **Transaction Reference** | "PspID": "342342” |

Sample request for processing a `capture` request.

```json
{
"TransactionType": "CAPT",
"Amount": 10.00,
"CallBackURL": "https://www.yourURLhere.com/Listener",
"IsTest": true,
"UniqueReference": "6514441d-8abe-4d7b-9e0c-3aa386333b34",
"PspID":"839791" 
}
```

### **Requesting a Recurring transaction**

The mandatory fields are required to process a recurring transaction using our direct connect integration. Note that we use a transaction reference as payment credentials since a recurring transaction is linked to an original deposit.

| Description | Direct Connect |
| --- | --- |
| **Transaction Type** | "TransactionType": "AUTH" or "PURC" |
| **Payment Credentials** | "PaymentCredentials": { "PaymentSource": "TransactionReference" } |
| **Client** | "Client": { "Email": "test@mail.com", "FirstName": "Apco", "LastName": "Test", "Street": "High Street", "City": "Virtu", "ZipCode": "BCCG1234", "Country": "MLT", "MobileNo": "00441234567", "IPAddress": "1.1.1.1" } |
| **Transaction Reference** | "PspID": "342342” |
| **Test Indicator** | "isTest”: true |

**Sample Request of a Recurring Transaction**

```json
{
  "TransactionType": "PURC",
  "Amount": "1.00",
  "Currency": "EUR",
  "OrderReference": "Repeat PURC",
  "RedirectionURL": "https://api.dev.apspglobal.com/technicalsupporttool-fe/Redirect/",
  "CallBackURL": "https://api.dev.apspglobal.com/technicalsupporttool-fe/Listener",
  "IsTest": "True",
  "PspId": "967468",
  "PaymentCredentials": {
    "PaymentSource": "TransactionReference"
  }
}
```

**Test Credentials**

Test Card details below. You must use a future expiry date and use “Frictionless Processed” as the cardholder name. For more test information on different card use cases [here](/v1/docs/test-card-numbers).

| Card Details |
| --- |
| 4200000000000000 |
| 4711100000000000 |
| 5555555555554444 |
