List transactions
Returns transactions for the authenticated merchant, newest first. Supports cursor pagination via starting_after.
Authorization
apiKey AuthorizationBearer <token>
BAGS Agent API key from the dashboard. Standalone agentic keys manage products, payment links, and transaction reads.
In: header
Query Parameters
limit?integer
Maximum number of items to return. Clamped to [1, 100]; defaults to 25.
Range
1 <= value <= 100starting_after?string
Cursor — pass the id of the last item from the previous page.
Match
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Format
uuidmode?string
Filter by mode. Defaults to all modes the credential grants access to.
Value in
"live" | "test"curl -X GET "https://www.getbags.app/api/v1/transactions"{
"status": "success",
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"amount": 29.99,
"amountBaseUnits": "29990000",
"token": "USDC",
"network": "base",
"mode": "test",
"livemode": false,
"status": "completed",
"txHash": "0xabcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789",
"walletAddress": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb0",
"merchantWalletAddress": "0x1111111111111111111111111111111111111111",
"merchantId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"paymentLinkId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"customerEmail": "buyer@example.com",
"customerName": "Jane Buyer",
"customerAddress": "123 Market St, San Francisco, CA",
"customerCountry": "US",
"subtotalAmount": 29.99,
"taxAmount": 0,
"confirmedAt": "2026-04-16T12:34:56.000Z",
"settledAt": null,
"createdAt": "2026-04-16T12:34:56.000Z",
"updatedAt": "2026-04-16T12:34:56.000Z"
}
],
"hasMore": false
}{
"status": "error",
"code": "AUTH_MISSING_CREDENTIALS",
"message": "No API key or session token was provided.",
"hint": "Include a valid API key in the Authorization header: Bearer bag_live_sk_..."
}{
"status": "error",
"code": "AUTH_TENANT_MISMATCH",
"message": "The credential does not grant access to this resource."
}{
"status": "error",
"code": "RATE_LIMITED",
"message": "Too many requests. Back off and retry.",
"retryAfter": 60
}{
"status": "error",
"code": "INTERNAL_ERROR",
"message": "An unexpected error occurred. The incident has been logged."
}