/api/partner/v2/transactions

Returns a paginated list of on-ramp and off-ramp transactions that belong to your partner account.
Use optional query parameters to filter or paginate the results.


🔐 Headers

HeaderDescription
partner-api-keyAPI key associated with your partner account. Required. See API Key Generation Guide.

⚠️

This endpoint requires authentication with a valid partner-api-key.


📥 Query Parameters


ParameterTypeRequiredDescription
idstring🔘Transaction identifier.
statusstring🔘Filter by transaction status (FAILED, COMPLETED, PENDING, PENDING_PAYMENT, FIAT_PAYMENT_RECEIVED, FIAT_RECEIVED, CRYPTO_RECEIVED, CRYPTO_NOT_RECEIVED, COMPLETED_CRYPTO_RECEIVAL, EXPIRED, CANCELLED, IN_PROGRESS, BANK_TRANSFER_PENDING, READY_BANK_TRANSFER, AWAITING_MANUAL_CRYPTO_TRANSFER, AWAITING_MANUAL_FIAT_TRANSFER)
typestring🔘Filter by transaction type (ON_RAMP or OFF_RAMP).
fiatCurrencystring🔘Fiat currency code (e.g. MXN, USD).
userIdstring🔘Return transactions for a specific user.
skipnumber🔘Skip parameter for pagination.
limitnumber🔘Maximum number of items per page (1–100). Defaults to 20.
sortBystring🔘Field to sort by (e.g. createdAt).
sortOrderstring🔘Sort order (ASC or DESC).

📨 Example Request

curl --request GET \
     --url 'https://staging-api.capa.fi/api/partner/v2/transactions?id=8374f327-38bd-4b0b-b8a7-2524599eb903&type=ON_RAMP&fiatCurrency=MXN&userId=8374f327-38bd-4b0b-b8a7-2524599eb903' \
     --header 'accept: application/json' \
     --header 'partner-api-key: {{API-KEY}}'

📤 Response Body

FieldTypeDescription
successbooleantrue if the request was successful.
data.countnumberTotal number of transactions matching the filters.
data.data[]arrayArray of transaction objects. Each object includes the following fields:
idstringUnique ID of the transaction.
userIdstringUser ID associated with the transaction.
statusstringCurrent status of the transaction. Default is PENDING on creation
typestringTransaction type (ON_RAMP or OFF_RAMP).
tokenSymbolstringSymbol of the cryptocurrency used.
blockchainSymbolstringSymbol of the blockchain the crypto belongs to.
fiatCurrencystringFiat currency code (e.g., MXN, DOP).
fiatAmountnumberAmount of fiat currency after conversion.
cryptoAmountstring | numberAmount of crypto used (as string for precision).
exchangeRatestring | numberExchange rate used for the conversion.
premiumSpreadstring | numberPremium spread applied to the exchange rate.
createdAtstringISO timestamp when the transaction was created.
completedAtstring | nullISO timestamp when the transaction was completed, or null if pending.
destinationWalletAddressstringWallet address used for the crypto transfer.
bankAccount.isVerifiedbooleanWhether the bank account is verified.
bankAccount.accountIdentifierstring | nullCLABE (MX) or account number (DO).
bankAccount.countrystringCountry where the bank account is registered.
bankAccount.accountTypestring | nullType of bank account. Required for Dominican Republic.
bankAccount.bankNamestring | nullName of the bank. Required for Dominican Republic.
bankAccount.documentIdentifierstring | nullID document linked to the bank account.
invoice.transactionHashstring | nullBlockchain transaction hash, if available.
invoice.paymentUrlstring | nullPayment URL for on-ramp invoice payments.

📘 Example Response

{
  "success": true,
  "data": {
    "count": 2,
    "data": [
      {
        "id": "af6e3ab7-b982-4ce7-adf6-f54d4d8de10a",
        "userId": "d3127f5f-ff64-47f9-a9cc-ff603862eca6",
        "status": "PENDING",
        "type": "ON_RAMP",
        "tokenSymbol": "USDC",
        "blockchainSymbol": "OP",
        "fiatCurrency": "DOP",
        "fiatAmount": 12,
        "cryptoAmount": "0.197576",
        "exchangeRate": "60.73613361949396",
        "premiumSpread": "0.02",
        "createdAt": "2025-06-10T05:54:28.572Z",
        "completedAt": null,
        "destinationWalletAddress": "0xc003f42ae20560eb57949038df3542071c6e759b",
        "bankAccount": {
          "country": "DO",
          "accountIdentifier": "00112548542",
          "isVerified": false,
          "bankName": "Sample",
          "accountType": "SAVINGS",
          "documentIdentifier": "123456789013"
        },
        "invoice": {
          "transactionHash": null,
          "paymentUrl": null
        }
      }
    ]
  }
}

⚠️ Important Notes & Requirements

  • Partner API Key is mandatory: Include PartnerApiKey in the header.
  • Limit cap: limit must not exceed 100.
  • Scoped access: You can only retrieve transactions created via your own credentials.
  • Filtering: Combine filters such as status, type, and userId is valid.

✅ Use Cases

  • User dashboards: Show a list of past transactions per user.
  • Reconciliation: Fetch completed flows for accounting.
  • Customer support: Manually inspect and manage pending transactions.
Language
URL
Click Try It! to start a request and see the response here!