Transactions
Card spend (swipes, online purchases, P2P, ACH events) is mirrored locally from provider webhooks.
GET/partner/cards/transactions
๐ Org key + secret๐ค User session
| Param | Default | Notes |
|---|---|---|
payment_card_id | โ | UUID; scope to one card. |
limit | 20 | |
offset / page | 0 / โ | page (1-indexed) overrides offset. |
search | โ | Free-text over merchant/description. |
200 ยท Response
{
"count": 47,
"results": [
{
"id": "uuid", "status": "completed", "amount": 12.50,
"posted_at": "2026-05-23T14:30:00Z", "description": "...",
"direction": "debit", "mcc": "5812", "merchant_name": "Chipotle",
"transaction_type": "purchase", "category_type": "dining_and_drinks"
}
],
"limit": 20, "offset": 0, "has_next": true, "has_previous": false, "total_pages": 3
}
category_type is Qwik's budget category โ auto-derived from the MCC, or your override (see categorize below).
GET/partner/cards/transactions/:externalTransactionId/status
๐ Org key + secret๐ค User session
Latest stored status for a provider transaction/payment id. Shape varies by transaction type but always includes status and external_transaction_id. Useful when polling a P2P/ACH after creating it.
PATCH/partner/transactions/:transactionId/category
๐ Org key + secret๐ค User session
Override the auto-classified category on one of the user's transactions. Path: transactionId โ accepts either the local row id or the provider external_transaction_id.
Body: { "category": <category> | null } โ null clears the override. Allowed categories:
Allowed categories
dining_and_drinks, groceries, entertainment, shopping, gas, transportation, healthcare, utilities, rent_and_housing, education, travel, personal_care, other
200 ยท Response
{ "transaction": { "id": 123, "external_transaction_id": "...", "platform_category": "groceries" }, "message": "Category set to groceries" }
404 if the transaction doesn't belong to this user.