Testing Collections

In Test/Sandbox environment, use the following test accounts to simulate different collection scenarios.

Mobile Money

Successful

Account Details:

  • Phone Number: 254712345678
  • External Reference: Unique Reference
  • Amount: Any Valid Amount
  • Currency: KES

Example:

{
    "externalReference": "test-reference",
    "amount": 300,
    "currency": "KES",
    "phoneNumber": "254712345678"
}

Failed

Account Details:

  • Phone Number: 254787654321
  • External Reference: Unique Reference
  • Amount: Any Valid Amount
  • Currency: KES

Example:

{
    "externalReference": "test-reference",
    "amount": 300,
    "currency": "KES",
    "phoneNumber": "254787654321"
}

Bank Transfer

Successful

Charge Details:

  • Email: [email protected]
  • External Reference: Unique Reference
  • Amount: Any Valid Amount
  • Currency: NGN
{  
    "externalReference": "test-reference",  
    "amount": 300,  
    "currency": "KES",  
    "email": "[email protected]"  
}

Failed

Charge Details:

  • Email: [email protected]
  • External Reference: Unique Reference
  • Amount: Any Valid Amount
  • Currency: NGN
{  
    "externalReference": "test-reference",  
    "amount": 1000,  
    "currency": "NGN",  
    "email": "[email protected]"  
}

Card Charge

Successful

Charge Details:

  • Card Number: 4242424242424242
  • CVV: Any 3 digits
  • Expiry Month: Any valid month (e.g. 12)
  • Expiry Year: Any valid 2-digit year (e.g. 26)
  • Amount: Any Valid Amount
  • Currency: NGN
{
    "externalReference": "test-reference",
    "amount": 300,
    "currency": "NGN",
    "email": "[email protected]",
    "firstName": "Test",
    "lastName": "User",
    "ipAddress": "127.0.0.1",
    "cardDetails": {
        "number": "4242424242424242",
        "cvv": "123",
        "expMonth": "12",
        "expYear": "26"
    }
}

Failed

Charge Details:

  • Card Number: 4000056655665556
  • CVV: Any 3 digits
  • Expiry Month: Any valid month (e.g. 12)
  • Expiry Year: Any valid 2-digit year (e.g. 26)
  • Amount: Any Valid Amount
  • Currency: NGN
{
    "externalReference": "test-reference",
    "amount": 300,
    "currency": "NGN",
    "email": "[email protected]",
    "firstName": "Test",
    "lastName": "User",
    "ipAddress": "127.0.0.1",
    "cardDetails": {
        "number": "4000056655665556",
        "cvv": "123",
        "expMonth": "12",
        "expYear": "26"
    }
}

3DS / Redirect (Succeeds after verification)

Charge Details:

  • Card Number: 5555555555554444
{
    "externalReference": "test-reference",
    "amount": 300,
    "currency": "NGN",
    "email": "[email protected]",
    "firstName": "Test",
    "lastName": "User",
    "ipAddress": "127.0.0.1",
    "cardDetails": {
        "number": "5555555555554444",
        "cvv": "123",
        "expMonth": "12",
        "expYear": "26"
    }
}

Returns stepRequired: redirect with a redirectUrl. Complete the redirect to finalise the charge.

OTP (Succeeds after verification)

Charge Details:

  • Card Number: 4562543755474674
{  
    "externalReference": "test-reference",  
    "amount": 300,  
    "currency": "NGN",  
    "email": "[email protected]",  
    "firstName": "Test",  
    "lastName": "User",  
    "ipAddress": "127.0.0.1",  
    "cardDetails": {  
        "number": "4562543755474674",  
        "cvv": "123",  
        "expMonth": "12",  
        "expYear": "26"  
    }  
}

Returns stepRequired: otp. Submit the OTP to finalise the charge.

PIN (Succeeds after verification)

Charge Details:

  • Card Number: 2223003122003222
{  
    "externalReference": "test-reference",  
    "amount": 300,  
    "currency": "NGN",  
    "email": "[email protected]",  
    "firstName": "Test",  
    "lastName": "User",  
    "ipAddress": "127.0.0.1",  
    "cardDetails": {  
        "number": "2223003122003222",  
        "cvv": "123",  
        "expMonth": "12",  
        "expYear": "26"  
    }  
}

Returns stepRequired: pin. Submit the PIN to finalise the charge.

Address Verification (Succeeds after verification)

Charge Details:

  • Card Number: 5200828282828210
{  
    "externalReference": "test-reference",  
    "amount": 300,  
    "currency": "NGN",  
    "email": "[email protected]",  
    "firstName": "Test",  
    "lastName": "User",  
    "ipAddress": "127.0.0.1",  
    "cardDetails": {  
        "number": "5200828282828210",  
        "cvv": "123",  
        "expMonth": "12",  
        "expYear": "26"  
    }  
}

Returns stepRequired: address_verification. Submit the billing address to finalise the charge.

The card scenarios are driven by the card number — CVV, expiry, and other fields can be any valid values. The step-required flows (3DS, OTP, PIN, AVS) all resolve to successful once the verification step is completed.