Skip to content
API reference

List payment methods

List every payment rail the shop can accept — one entry per retailer / bank / native method.

GET/api/v1/payment-methods
Step-by-step guideStep 1 of 3

Select a stage to see what happens.

Your integration
Request readyIllustrative example
GET/payment-methods
Authorization
Bearer ••••••••
Accept
application/json

Prepare the request

Use credentials for the selected environment and complete the required parameters.

Illustrative flow · no data is sent

How this endpoint works

Returns every distinct payment method enabled for the authenticated shop — one row per retailer, bank or native rail. SPEI, OXXO, Walmart, 7-Eleven, BBVA, Scotiabank all appear as separate entries with their own 4-digit `paymentMethodId`. The id is OURS (assigned starting at 1001, persisted server-side, never reused) and survives provider rotations: when we swap the upstream behind the scenes your stored id keeps working. The exact same field name is used on every surface: read `paymentMethodId` here, pass it back as `paymentMethodId` on POST /api/v1/payments, and the transaction record returned by GET /api/v1/payments echoes it back so the round-trip is fully visible. Use the `routable: boolean` flag (not `enabled`/`online`) to decide whether to surface a method in checkout — it returns `true` only when a real processor is configured for that exact retailer right now. Every entry also carries `iconUrl` — an absolute, public, cacheable URL to the method's icon hosted by us. Render it directly (`<img src={iconUrl}>`); it ALWAYS resolves (a custom logo when we have one, otherwise a generic category icon for the channel — bank, cash or card), so you never get a null or a broken image. Prefer `iconUrl` over the legacy relative `imageUrl`.

Any key
Authentication guide
Key2Pay Developer documentationAPI v1
Documentation
Dashboard