Skip to main content

Documentation Index

Fetch the complete documentation index at: https://partner-docs.contro.dev/llms.txt

Use this file to discover all available pages before exploring further.

Retrieve transaction history for any card issued through your partner account.

List card transactions

Fetch transactions for a specific card using cursor-based pagination:
curl "https://api.contro.me/v1/partner/cards/{cardId}/transactions?limit=20" \
  -H "x-contro-api-key: $CONTRO_API_KEY"

Query parameters

ParameterTypeDefaultDescription
pageinteger1Page number
limitinteger20Items per page (1–100)
statusstring-Filter by transaction status (e.g. accepted, pending, declined).
typestring-Filter by transaction type (e.g. purchase, refund, AUTH, debit).
fromstring-ISO 8601 start timestamp (inclusive).
tostring-ISO 8601 end timestamp (inclusive).

Response

{
  "data": [
    {
      "id": "tx_abc123",
      "type": "purchase",
      "maskedCardNo": "0000",
      "direction": "D",
      "amount": 42.50,
      "currency": "USD",
      "currencyPrecision": 2,
      "billingAmount": 42.50,
      "billingCurrencyCode": "USD",
      "billingCurrencyPrecision": 2,
      "billingTimestamp": "2026-03-20T14:35:00Z",
      "status": "completed",
      "merchant": "Coffee Shop",
      "timestamp": "2026-03-20T14:30:00Z"
    }
  ],
  "total": 1,
  "page": 1,
  "limit": 20
}

Transaction fields

FieldTypeDescription
idstringTransaction ID. Example: "tx_abc123"
typestringTransaction type. One of purchase, refund, withdrawal, fee
maskedCardNostring | nullLast 4 digits of the card number used. Example: "0000"
directionstring | nullTransaction direction. C: credit, D: debit
amountnumber | nullTransaction amount in the card’s currency unit. Example: 42.50
currencystring | nullISO 4217 currency code. Example: "USD"
currencyPrecisionnumber | nullDecimal precision of the transaction currency. Example: 2
billingAmountnumber | nullBilling amount in the billing currency. Example: 42.50
billingCurrencyCodestring | nullISO 4217 billing currency code. Example: "USD"
billingCurrencyPrecisionnumber | nullDecimal precision of the billing currency. Example: 2
billingTimestampstring | nullISO 8601 billing/clearing timestamp
statusstringTransaction status. One of pending, completed, declined, reversed
merchantstring | nullMerchant name. Example: "Coffee Shop"
timestampstringISO 8601 transaction timestamp. Example: "2026-03-20T14:30:00Z"

Pagination

To paginate through all transactions, pass the nextCursor from each response:
// The SDK handles pagination automatically
const allTransactions = [];
let page = await contro.cards.listTransactions(cardId, { limit: 100 });

allTransactions.push(...page.data);
while (page.hasMore) {
  page = await contro.cards.listTransactions(cardId, {
    limit: 100,
    cursor: page.nextCursor,
  });
  allTransactions.push(...page.data);
}

Real-time notifications

For real-time transaction updates, configure webhooks to receive events as transactions occur, rather than polling.