👥 Customers & VaultCustomers

Get customer payment methods

Retrieve all payment methods for a customer

GET/customers/{id}/payment-methods

Retrieve all payment methods for a customer


Related endpoints

  • GET /customers/{id}/state — Get customer billing state
  • POST /customers — Create a new customer
  • GET /customers — List customers
  • GET /customers/{id} — Get customer by ID
  • PATCH /customers/{id} — Update customer details

Common errors

  • 401 authentication_error — missing, invalid, expired, or revoked credential. Codes: authentication_failed, invalid_api_key, expired_api_key, api_key_revoked, session_invalid, merchant_required. Carries a WWW-Authenticate: Bearer challenge.
  • 404 resource_missing — the referenced resource does not exist or is not visible to your key.

Pagination

Offset-based with limit (default 25, max 100) and offset. The response pagination block includes total and hasMore. See the pagination guide for SDK auto-paging helpers.

x-api-key<token>

Your RevKeen merchant API key. Create and manage keys in Dashboard → Settings → Developer. Use rk_sandbox_* for staging/test and rk_live_* for production. The same key may be sent as Authorization: Bearer <key> if that suits your HTTP client better. A missing, invalid, expired, or revoked key returns 401 with a WWW-Authenticate: Bearer challenge; a valid key without the required scope returns 403.

In: header

Path Parameters

id*string

Customer UUID

Formatuuid

Response Body

application/json

application/json

application/json

application/json

Stuck on an error response? Ask the RevKeen assistant to explain it.
curl -X GET "https://api.revkeen.com/v2/customers/11111111-1111-4111-8111-111111111111/payment-methods" \
  -H "x-api-key: $REVKEEN_API_KEY"

Synthetic documentation data, validated against the response schema; not a live API result.

{  "data": [    {      "id": "550e8400-e29b-41d4-a716-446655440000",      "object": "payment_method",      "public_id": "pm_1a2b3c4d5e6f",      "type": "card",      "status": "active",      "customer_id": "00000000-0000-4000-8000-000000000001",      "is_default": true,      "card": {        "brand": "visa",        "last4": "4242",        "exp_month": 12,        "exp_year": 2028,        "funding": "credit"      },      "us_bank_account": {        "bank_name": "Chase",        "last4": "6789",        "routing_number_last4": "1234",        "account_type": "checking"      },      "bacs_direct_debit": {        "sort_code": "XX-XX-**",        "account_number_last4": "1234",        "bank_name": "Barclays",        "mandate_id": "00000000-0000-4000-8000-000000000001",        "mandate_ref": "string",        "mandate_status": "active"      },      "billing_details": {        "name": "string",        "email": "user@example.com",        "phone": "string",        "address": {          "line1": "string",          "line2": "string",          "city": "string",          "state": "string",          "postal_code": "string",          "country": "string"        }      },      "metadata": {        "property1": null,        "property2": null      },      "created_at": "2026-09-01T12:00:00Z",      "updated_at": "2026-09-01T12:00:00Z"    }  ]}

Put this endpoint to work