Card Payout Status & Info

Retrieve the full state of a card payout — including status, decline reason, card details, and amounts.

Overview

Use the Payout Info endpoint to fetch the complete payout state.

Use this endpoint when:

  • A webhook was not received
  • You need to verify payout completion
  • You need full details for reconciliation or support

Webhooks are the primary and lowest-latency signal for payout completion. Use polling only as a fallback.


Endpoint

GET /api/v1/payouts/card/info/{id}

Retrieve full details of a card payout transaction.


Headers

HeaderValue
AuthorizationBearer {token}

Path Parameters

ParameterTypeDescription
idStringUnique payout transaction identifier

Important Notes

Use /info, not /status

  • /info/{id} returns declineCode on failure
  • Status-only endpoints do not include decline reasons

Key Response Fields

FieldDescription
transactionIdUnique payout identifier
transactionStatusCurrent status (PROCESSING, SUCCEED, FAILED)
declineCodeDecline reason (present on failure)
cardMaskMasked recipient card number
totalAmountAmount transferred
orderCurrencyRequested currency
processedCurrencySettlement currency (may differ due to FX)
createdAtISO 8601 timestamp

Full Response Fields

FieldTypeDescription
transactionIdStringUnique transaction identifier
requestIdStringIdempotency key
midStringMerchant account ID
transactionStatusStringCurrent status
declineCodeIntegerDecline reason (only when FAILED)
cardMaskStringMasked card number (e.g. 411111****1111)
cardHolderStringCardholder name
totalAmountNumberAmount transferred
callbackUrlStringWebhook URL for final result
createdAtStringISO 8601 timestamp
metadataMapCustom key-value data

Example Response

{
  "transactionId": "123456789",
  "requestId": "req-abc-123",
  "mid": "mid-001",
  "transactionStatus": "SUCCEED",
  "cardMask": "411111****1111",
  "cardHolder": "John Doe",
  "totalAmount": 100,
  "callbackUrl": "https://merchant.com/webhook",
  "createdAt": "2026-03-24T10:15:30Z",
  "metadata": {
    "payoutId": "PO-123"
  }
}

Error Responses

HTTP StatusDescription
400Bad Request — missing or invalid parameters
401Unauthorized — missing or invalid token
404Not Found — payout does not exist
500Internal Server Error — retry with backoff

Best Practices

  • Treat webhooks as the primary source of truth
  • Use /info only as a fallback
  • Always check declineCode when status is FAILED
  • Store transactionId and requestId for reconciliation
  • Stop polling after terminal status