← All Docs

API Reference

CorePort exposes a REST API under /api/v1. All endpoints accept and return JSON. Use these endpoints to query rates, create payments, and check system status.

Base URL

All API requests are made to your CorePort instance under the /api/v1 prefix. Responses use standard HTTP status codes — 200 for success, 4xx for client errors, 5xx for server issues.

Health & Ping

Check if the service is running.

  • -- GET /api/v1/ping — Returns a simple pong response. Use this to verify connectivity.
  • -- GET /api/v1/health — Returns system health status with service details.

Exchange Rates

Query live exchange rates between fiat and stablecoin currencies.

  • -- GET /api/v1/rates/{base} — Returns all available rates for the given base currency.
  • -- GET /api/v1/rates/{base}/{target} — Returns the rate for a specific currency pair. Add ?type=daily for historical daily rates, or ?date=YYYY-MM-DD for a specific date.
Rates are sourced from the exchange_rates database and updated continuously. Stablecoin tickers (USDX, EURX, etc.) are resolved to their fiat equivalents automatically.

Info Endpoints

Retrieve configuration and metadata used by the payment forms.

  • -- GET /api/v1/info/assets/{type} — Returns available assets for the given type (purchase or unwrap), including tickers, names, and rate pairs.
  • -- GET /api/v1/info/quote?asset={ticker}&amount={value}&action={enter|exit} — Returns a fee breakdown and estimated receive amount for a given transaction.
  • -- GET /api/v1/info/payment-types — Returns supported payment types and their configuration.
  • -- GET /api/v1/info/locations — Returns available location/region data.
  • -- GET /api/v1/info/onramp — Returns on-ramp provider configuration.
  • -- GET /api/v1/info/offramp — Returns off-ramp provider configuration.
  • -- GET /api/v1/info/intra-providers — Returns available intrabank transfer providers.

Payments

Create and manage payment sessions. Each payment method has its own endpoint.

  • -- POST /api/v1/payments/stripe — Create a Stripe card payment session (card → USDC onramp). Returns a redirect URL for the customer to complete payment.
  • -- GET /api/v1/payments/stripe?order_id={id} — Check the status of a Stripe card payment.
  • -- POST /api/v1/payments/payto — Create a PayTo (peer-to-peer) payment. Returns the deposit address and payment details.
  • -- GET /api/v1/payments/payto/{id} — Check the status of a PayTo payment.
  • -- POST /api/v1/payments/payto/cross-currency — Create a cross-currency PayTo payment where sender and receiver currencies differ.
  • -- POST /api/v1/payments/payto/cross-currency-estimate — Get a conversion estimate for a cross-currency PayTo payment before creating it.
  • -- POST /api/v1/payments/corepay — Create a CorePay (direct blockchain) payment.
  • -- GET /api/v1/payments/corepay/{id} — Check the status of a CorePay payment.
  • -- GET /api/v1/payments/corepay/status/{paymentId} — Get detailed status for a CorePay payment.

On-Ramp

Endpoints for buying stablecoins with fiat.

  • -- POST /api/v1/onramp — Create an on-ramp order. Specify the target stablecoin, amount, and wallet address.
  • -- POST /api/v1/onramp/bank — Create a bank transfer on-ramp with WallMoney.
  • -- POST /api/v1/onramp/forex-estimate — Get a conversion estimate for cross-currency on-ramp payments. Returns charge amount, exchange rate, and liquidity status.

Off-Ramp

Endpoints for converting stablecoins to fiat or cryptocurrency.

  • -- POST /api/v1/offramp — Create an off-ramp order.
  • -- POST /api/v1/offramp/bank — Create a bank withdrawal off-ramp. Optional bank_account_id selects the payout account; with several eligible accounts and no id, answers 409 account_choice_required.
  • -- GET /api/v1/offramp/bank/accounts — List the payout accounts registered to a core-id for a given offramp currency (feeds the account picker).
  • -- POST /api/v1/offramp/bank/cancel — Cancel an unfunded bank off-ramp order (requires the order access token).
  • -- POST /api/v1/offramp/estimate — Get an estimate for an off-ramp conversion.
  • -- POST /api/v1/offramp/reverse-estimate — Calculate how much to send to receive a specific fiat or crypto amount.
  • -- POST /api/v1/offramp/proceed-partial — Proceed with a partial off-ramp when the deposited amount differs from the requested amount.
  • -- POST /api/v1/offramp/reject/{id} — Reject an off-ramp request.

Webhooks

CorePort uses webhooks to notify your system when payment events occur. Webhook endpoints are called by external providers and should not be called directly.

  • -- POST /api/v1/payments/stripe/webhook — Receives Stripe onramp session confirmations.
  • -- POST /api/v1/payments/payto/webhook — Receives PayTo deposit confirmations.
  • -- POST /api/v1/payments/corepay/webhook — Receives CorePay payment events.
  • -- POST /api/v1/onramp/webhook — Receives on-ramp completion events.
  • -- POST /api/v1/offramp/webhook — Receives off-ramp completion events.
All webhook payloads are verified using HMAC signatures before processing. Do not expose webhook secrets publicly.

Other Endpoints

  • -- GET /api/v1/referrer-meta — Returns metadata for a referral address, including fee splits and originator info.
  • -- GET /api/v1/fintag — Fetch and proxy a remote .well-known/fintag.json (array of FinTag entries).