1. International Cards
Asteria API DOCs
  • Getting Started
  • Webhooks
  • Auth
    • Validate & Generate Access Token
      POST
  • Collections
    • Pay via Bank Transfer
      • Get Banks
      • Generate Dynamic VIrtual Account
      • Check Payment Status
    • Cards
      • Generate Payment Advice
      • Charge Card
      • Check Card Payment Status
    • Mpesa
      • Mpesa API
    • International Cards
      • Setup Card
        POST
      • Check Enrollment
        POST
      • Validate Challenge
        POST
      • Get Status
        GET
  • Payouts
    • Get Bank List
      GET
    • Validate Account
      POST
    • Initiate Transfer
      POST
    • Check Payout Status
      POST
  • Account
    • Get Wallet Balance
      GET
  1. International Cards

Check Enrollment

Developing
POST
https://api-dev.asteriatechnology.io/collections/intl-card/check-enrollment

2. Check Enrollment#

POST /collections/intl-card/check-enrollment
Call this after the DDC iframe has completed. Send the same card plus billing details.
Request:
{
  "txnRef": "435df745-6a24-4b39-8c81-9f89da1213a0",
  "cardNumber": "4456530000001005",
  "expiredMonth": "01",
  "expiredYear": "2029",
  "cvv": "123",
  "cardHolderName": "QA Test",
  "billingEmail": "qa@example.com",
  "billingPhone": "08012345678",
  "billingAddress": "8 Admiralty Road",
  "billingCity": "Lagos",
  "billingState": "LA",
  "billingCountry": "NG",
  "billingPostalCode": "100010"
}
billingState and billingCountry must be 2-letter codes.

Frictionless success#

nextAction is CONFIRM_STATUS. Call Status next.
{
  "responseStatus": "SUCCESSFUL",
  "data": {
    "txnRef": "435df745-6a24-4b39-8c81-9f89da1213a0",
    "authStatus": "FRICTIONLESS_SUCCESS",
    "stepUpUrl": null,
    "accessToken": null,
    "challengeForm": null,
    "csPaymentId": "7906722562756753903814",
    "approvalCode": "541485",
    "nextAction": "CONFIRM_STATUS"
  }
}

Challenge required#

Inject data.challengeForm so the customer can complete 3DS, then call Validate.
{
  "responseStatus": "SUCCESSFUL",
  "data": {
    "txnRef": "b99e4c10-7ec6-4a24-8826-f39cc7f041f1",
    "authStatus": "CHALLENGE_REQUIRED",
    "stepUpUrl": "https://centinelapistag.cardinalcommerce.com/V2/Cruise/StepUp",
    "accessToken": "eyJhbGciOiJIUzI1NiIs...",
    "challengeForm": "<iframe name=\"step-up-iframe\" ...",
    "csPaymentId": null,
    "approvalCode": null,
    "nextAction": "LOAD_CHALLENGE"
  }
}

Request

Authorization
Bearer Token
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
or
Body Params application/jsonRequired

Examples

Responses

🟢200Success
application/json
Bodyapplication/json

Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api-dev.asteriatechnology.io/collections/intl-card/check-enrollment' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "txnRef": "c8243a9e-d51e-4fea-b65e-8a4a05676235",
    "cardNumber": "4456530000001005",
    "expiredMonth": "01",
    "expiredYear": "2029",
    "cvv": "123",
    "cardHolderName": "QA Test",
    "billingEmail": "qa@example.com",
    "billingPhone": "08012345678",
    "billingAddress": "8 Admiralty Road",
    "billingCity": "Lagos",
    "billingState": "LA",
    "billingCountry": "NG",
    "billingPostalCode": "100010"
}'
Response Response Example
{
    "responseStatus": "00",
    "message": "Success",
    "data": {
        "txnRef": "c8243a9e-d51e-4fea-b65e-8a4a05676235",
        "authStatus": "FRICTIONLESS_SUCCESS",
        "stepUpUrl": null,
        "accessToken": null,
        "challengeForm": null,
        "csPaymentId": "7925908864646211204807",
        "approvalCode": "228757",
        "nextAction": "CONFIRM_STATUS"
    }
}
Modified at 2026-10-21 14:26:50
Previous
Setup Card
Next
Validate Challenge
Built with