FlowNoc

API

https://flownoc.com/api/v1 · JSON · credits required to create invoices.

Dashboard: Invoices → New.

Quick integration

  1. Create a merchant in the dashboard and copy the API key.
  2. POST /merchant/checkout-session with {"amount":10.5,"note":"order_ref"} — you get pay_url.
  3. Webhooks optional. Defaults: Merchants → Edit. Per request: notify_url, success_url, return_url.

Merchant default (dashboard) → maps to API behavior

Webhook URL — used when notify_url is omitted (server-to-server on paid).

Default success URL — used when success_url / return_success_url is omitted (redirect customer after success).

Auth

API key from Merchants in the dashboard.

X-Api-Key: YOUR_KEY
Authorization: Bearer YOUR_KEY

Webhook signing secret (shown once when the merchant is created) verifies X-FlowNoc-Signature on callbacks.

Create checkout

Send a fiat amount, get pay_url (same as checkout_url). Customer opens it and picks network; you get paid to your FlowNoc wallets.

POST /api/v1/merchant/checkout-session

curl -X POST "https://flownoc.com/api/v1/merchant/checkout-session" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: YOUR_KEY" \
  -d '{"amount":10.5,"note":"order_123"}'

Optional: currency (default USD), notify_url (overrides merchant webhook default), success_url (overrides merchant default success URL), return_url → cancel / back (or return_success_url / return_cancel_url aliases).

Invoices endpoint

POST /api/v1/invoices

Omit chain and token for hosted checkout; same body as checkout-session.

Fixed crypto: send chain, token, amount as a decimal string.

Read invoices

GET /api/v1/invoices/{public_id}

GET /api/v1/invoices?per_page=20

Webhooks

On paid: POST to invoice notify_url if set, else merchant Webhook URL. Optional for accepting payment; use for server notifications.

Verify HMAC on the raw request body with your signing secret (X-FlowNoc-Signature).

PATCH /api/v1/merchant/webhook

{"webhook_url":"https://yoursite.com/hook","callback_url":"https://yoursite.com/thanks"}

callback_url in this endpoint is the same field as Default success URL in the dashboard (used when checkout-session omits success_url).

Errors

401 — bad or missing key 403 — no transaction credits 422 — validation (see message)