0Bit Documentation

Check payment and payout methods

Use documented capability checks to show buy-side payment methods and sell-side payout methods safely.

Payment and payout methods are flow-specific. Buy and on-ramp flows need payment-method support; sell and off-ramp flows need payout-method support. 0Gate exposes the hosted-flow checks in this guide, while 0Base has its own payment-method capability object where approved. Do not infer one product's method availability from another.

Method availability is not terminal state

A method can be listed and still fail later because of eligibility, session validation, customer action, or backend terminal state. Use method checks to shape the UI, then close attempts from signed events.

Method decision

Flow mapping

FlowCapability checkUI use
Hosted paymentPayment methods when the customer pays in.Show supported payment choices before checkout.
On-rampPayment methods.Let the customer choose how to pay for the crypto purchase.
Off-rampPayout methods.Show supported payout destinations or a generic unavailable state.
SwapUsually no direct payment or payout method selection.Keep the customer inside the hosted 0Gate swap flow unless product approval says otherwise.

Server pattern

async function listAllowedMethods(input: {
  flow: 'payment' | 'on_ramp' | 'off_ramp' | 'swap';
  countryCode: string;
  currency: string;
}) {
  if (input.flow === 'off_ramp') {
    return gateCapabilities.payoutMethods({
      countryCode: input.countryCode,
      currency: input.currency,
    });
  }

  if (input.flow === 'payment' || input.flow === 'on_ramp') {
    return gateCapabilities.paymentMethods({
      countryCode: input.countryCode,
      currency: input.currency,
    });
  }

  return [];
}

UI rules

SituationRecommended behavior
No method is availableShow a neutral unavailable state before session creation.
One method is availableYou can preselect it, but still let 0Gate own hosted confirmation.
Multiple methods are availableShow choices from your product UI, then create a constrained hosted session.
Method changes after country/currency changesClear the selected method and re-run checks.
The hosted flow returns failureShow retry or support; do not expose rail or provider diagnostics.

Guardrails

  • Keep exact method labels and availability dynamic.
  • Do not expose provider names, bank-routing internals, payout-operation details, or compliance rule names.
  • Do not create a final receipt from method availability alone.
  • Do not bypass the hosted 0Gate flow to build custom payment or payout collection.

On this page