← DocConvert

Billing & plans

Registration, plan upgrades, and usage metering are handled through Stripe.

Plans & monthly limits

PlanIncluded conversions / monthNotes
free50Default after subscription cancellation
starter1,000Flat + metered overage via Stripe
pro10,000Flat + metered overage
business100,000Flat + metered overage
paygUnlimited**No monthly cap; billed per conversion via meter

See pricing on the marketing site for list prices.

POST /v1/auth/register

Public endpoint — no API key required.

curl -X POST https://api-production-7d714.up.railway.app/v1/auth/register \
  -H "Content-Type: application/json" \
  -d '{"email":"you@company.com","name":"My App"}'

201 response:

{
  "success": true,
  "api_key": "dc_live_...",
  "plan": "payg",
  "checkout_url": "https://checkout.stripe.com/...",
  "message": "Save your API key — it will never be shown again..."
}

Redirect users to checkout_url. The key activates when Stripe sends customer.subscription.created.

POST /v1/billing/checkout

Authenticated — upgrade or change plan.

curl -X POST https://api-production-7d714.up.railway.app/v1/billing/checkout \
  -H "Content-Type: application/json" \
  -H "X-API-Key: dc_live_YOUR_KEY" \
  -d '{
    "plan": "starter",
    "success_url": "https://yoursite.com/billing/success",
    "cancel_url": "https://yoursite.com/billing/cancel"
  }'

Response: { "url": "https://checkout.stripe.com/..." }

Valid plan values: starter, pro, business, payg.

POST /v1/billing/portal

Authenticated — open Stripe Customer Portal (manage payment method, invoices, cancel).

curl -X POST https://api-production-7d714.up.railway.app/v1/billing/portal \
  -H "X-API-Key: dc_live_YOUR_KEY"

Response: { "url": "https://billing.stripe.com/..." }

Usage metering

For payg plans, each conversion is reported to Stripe's usage meter. For subscription plans, conversions beyond the included monthly limit are also metered as overage.

Webhooks

Stripe webhooks at POST /v1/webhooks/stripe are for server configuration only — not called by API consumers. They activate keys and sync plan changes after checkout.