One API for cards, wallets, BNPL, payouts and KYC. Hosted-checkout-first with first-class direct-API support. Idempotent, signed webhooks, deterministic sandbox.
- https://maxfi-api.exezine.az โ Production (use sk_test_ keys for sandbox)
Create a checkout session
Tags: Checkout
Operation ID: createCheckoutSession
Get a checkout session
Tags: Checkout
Operation ID: getCheckoutSession
Effective method catalog for a hosted checkout session
Tags: Payment Methods
Operation ID: getCheckoutMethods
Returns the list of payment methods actually enabled for this session. This is the intersection of Merchant Connector Account (MCA) allowed methods, global Connector Method Capability (CMC), and per-merchant MCS overrides. Called by the MAXFI Checkout page on load. Fail-open to card-only if the catalog lookup errors โ end customers always see at least one method.
Submit a non-card payment method (SBP, SberPay, TPay, YooMoney, Apple/Google Pay, recurrent)
Tags: Payment Methods
Operation ID: submitCheckoutMethod
Called by the MAXFI Checkout page when the end customer picks any method other than card. Card payments continue to use the PCI SAQ A-EP /checkout/:sessionId/pay endpoint with the 2-phase 3DS flow. Response carries next_action telling the browser whether to render a QR code, open a deeplink, redirect, show an ACS iframe or poll. The checkout page polls GET /checkout/:sessionId/status until the session settles into a terminal state.
Bootstrap a widget session and return a hosted checkout URL
Tags: Widget
Operation ID: createWidgetSession
Called by the Widget SDK (Maxfi class, loaded from /widget/v1/maxfi.js) when the user clicks the Pay button. Creates a regular checkout session and returns its URL so the widget can embed /checkout/:sessionId in an iframe. Accepts initial_method to pre-select a tab on the checkout page โ handy when the widget renders its own method picker.
Effective method catalog for the authenticated merchant (widget context)
Tags: Widget
Operation ID: getWidgetMethods
Returns the same shape as GET /checkout/:sessionId/methods but keyed by merchant (no session required). Fail-open to card-only on any lookup error.
Full list of SBP (Faster Payments System) member banks
Tags: Payment Methods
Operation ID: listSbpMembers
Returns MAXFI's mirror of the public NSPK dictionary (qr.nspk.ru/proxyapp/c2bmembers.json). Includes every active SBP-connected bank with a 12-digit member_id (nspkId), localised names (en/ru/az), logo URL and iOS / Android deeplinks. Use this endpoint when you need to render your own bank picker before submitting an SBP payment, or when you want to validate a member_id server-side before calling MAXFI. No auth required โ list is considered public information.
Top-N popular SBP member banks
Tags: Payment Methods
Operation ID: listSbpMembersPopular
Curated subset of /sbp/members sorted by display_order. MAXFI Ops maintains the popular list so hosted checkout can render a compact grid (top-12 banks by SBP traffic share) instead of the full 200-bank catalogue. Returns the same entry shape as /sbp/members.
SBP member banks scoped to a hosted checkout session
Tags: Payment Methods
Operation ID: getCheckoutSbpMembers
Same list as /sbp/members/popular but tied to a running checkout session. Returns an empty array and currency_supported: false when the session currency is not RUB (SBP is a ruble-only rail). Used by the MAXFI hosted checkout page to render the bank picker grid inside the SBP tab.
SBP member banks for embedded Widget SDK
Tags: Widget
Operation ID: getWidgetSbpMembers
Authenticated with your publishable key. Returns the same popular-list shape as the public /sbp/members/popular endpoint, cached for 5 minutes on the CDN edge.
List payments
Tags: Payments
Operation ID: listPayments
Create a direct payment
Tags: Payments
Operation ID: createPayment
Get a payment
Tags: Payments
Operation ID: getPayment
Capture an authorisation
Tags: Payments
Operation ID: capturePayment
Refund a payment (full or partial)
Tags: Payments
Operation ID: refundPayment
Cancel an authorisation or pending payment
Tags: Payments
Operation ID: cancelPayment
Create a payout
Tags: Payouts
Operation ID: createPayout
Get your balance
Tags: Balance
Operation ID: getBalance
Per-currency balances of the authenticated merchant, in minor units (4900 = 49.00). available can be paid out, pending is waiting for settlement, reserve is the rolling reserve. An empty balances array means no ledger accounts yet โ they are created on the first successful payment. If the ledger is temporarily unavailable the API answers 503 BALANCE_UNAVAILABLE instead of zero balances: retry with backoff and never treat this response as an empty balance.
List channels
Tags: Channels
Operation ID: listChannels
Returns all channels of the authenticated merchant. By default soft-deleted channels are excluded.
Create a channel
Tags: Channels
Operation ID: createChannel
Slug (code) must be unique within your merchant. Returns the new Channel including the freshly minted public_id and webhook_secret (when set).
Retrieve a channel
Tags: Channels
Operation ID: getChannel
id accepts the UUID, the ch_xxx public id, or the merchant-defined slug.
Update a channel
Tags: Channels
Operation ID: updateChannel
Partial update โ branding, webhook URL/secret/enabled, currencies, name. The code of the default channel is immutable.
Soft-delete (default) or hard-delete (?hard=true)
Tags: Channels
Operation ID: deleteChannel
Soft-delete is reversible โ the row stays in DB and restore brings it back. Hard-delete is blocked when MCAs / API keys / transactions still reference the channel; the response is 409 with a references array enumerating the blockers. The default channel cannot be deleted at all.
Make this channel the default
Tags: Channels
Operation ID: promoteChannelDefault
Demotes the previous default channel in the same call. The new default automatically inherits any unscoped requests.
Pause a channel
Tags: Channels
Operation ID: pauseChannel
Temporarily hides the channel from routing without losing any history. The default channel cannot be paused.
Resume a paused channel
Tags: Channels
Operation ID: resumeChannel
Restore a soft-deleted channel
Tags: Channels
Operation ID: restoreChannel
Service health
Tags: Health
Operation ID: health
Authenticated session profile (now includes counterparty_role_codes)
Tags: Auth
Operation ID: authMe
Returns the merchant-portal session profile. Since v3.0 the response includes counterparty_role_codes โ the list of roles this counterparty currently holds in CRM. Merchant Portal access requires merchant to be in the list. During the rollout window tokens without the claim are accepted with a warning; once MERCHANT_ROLE_STRICT=true is set on the BFF the gate becomes hard.