One API. Bitcoin & Lightning. Self-custody settlement direct to your AQUA wallet. No self-hosting required.
First 5 payments free · No credit card required
If you can make an HTTP request, you can integrate AvoPay.
Add Bitcoin as a subscription payment option. Receive payment.confirmed webhooks to activate accounts.
Per-transaction settlement, no custodial risk. Create a payment per order, webhook on confirmation.
In-person and remote payments with the same API. Display a QR from lightning_invoice on any screen.
Trigger a new payment per billing cycle. Metadata carries your user_id and plan through the webhook.
Programmatic account creation and payment via Lightning. Machine-readable onboarding →
Headless checkout — render lightning_invoice and liquid_address in your own UI. Or redirect to hosted checkout.
Three steps from signup to first confirmed payment.
Call POST /api/v1/payments from your backend. You receive a Lightning invoice, a Liquid BTC address, and a hosted checkout URL — all in one response.
Hosted checkout: redirect to checkout_url — AvoPay handles the UI, QR codes, and polling.
Headless: render lightning_invoice and liquid_address as QR codes in your own UI. Use invoice_sats for the Lightning amount display.
Both modes use the same payment object. You can switch between them without changing your backend.
AvoPay sends a signed payment.confirmed event to your endpoint. Verify authenticity with the X-AvoPay-Signature: sha256=... header.
Set your webhook URL in your dashboard, or configure it via the Webhooks API.
Three payment rails, one API call. The methods array tells you which are available for each payment.
Secret keys (ak_live_) for backend calls. Generate, rotate, and revoke from your dashboard.
payment.confirmed and payment.expired events with HMAC-SHA256 signatures. Four automatic retries.
Send Idempotency-Key: your-order-id to safely retry without creating duplicate payments.
Attach any JSON to a payment at creation. It comes back in every webhook so you never lose context.
PDF invoices auto-generated on settlement. Download via API or retrieve the buyer receipt URL.
Create reusable payment links programmatically with Bearer ak_live_ — no dashboard session required.
Machine-readable spec at /openapi.yaml. Generate a typed client in any language with openapi-generator.
The REST API is part of Website Checkout Pro — not a standalone purchase. Sign up once, use everything.
POST /payments — create payments from your backendStarter plan ($9/mo) includes payment links and webhooks but not POST /payments.
First 5 payments free · No credit card
See full pricing →Get API keys in 60 seconds. First 5 payments free. No credit card required.