Developers

Build on recovery-first payments

REST APIs, webhooks, and drop-in SDKs. Test in minutes, go live after KYC.

Quick start

Create a plan, generate a test API key, and charge your first subscription in under ten minutes.

  1. 1Sign up and complete the onboarding wizard
  2. 2Create a plan and copy your sk_test_ key from API Keys
  3. 3POST /v1/subscriptions or drop in DuroCheckout.open()
Get API keys
const res = await fetch('https://api.useduro.com/v1/subscriptions', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer sk_test_...',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    customerId: 'cus_...',
    planId: 'plan_...',
  }),
});

const subscription = await res.json();

Webhook events

Subscribe to events in your dashboard or via API. Verify signatures with the Duro-Signature header (t=timestamp,v1=hmac).

subscription_createdrenewal_failedretry_scheduledsubscription_activatedinvoice_createdcheckout_completed

Read the full documentation

Hosted checkout, subscriptions, dunning and recovery, payouts, the customer wallet, and every webhook event, with copy-paste examples and an interactive API reference.

Open documentation