Skip to main content
Streamly billing is plugin-based. Install and configure payment methods from /admin/plugins. Keys are not in .env.example.
Streamly admin Stripe plugin configure sheet with encrypted API key fields.

Configure Stripe — publishable key, secret key, and webhook secret in Admin → Plugins.

Wired payment methods

Stripe fields (/admin/plugins → Stripe)

Webhook URL: https://YOUR_HOST/api/webhooks/stripe
Connect return/refresh: /dashboard/settings?stripe=return|refresh
Checkout APIs: /api/v1/billing/platform/checkout, /api/v1/billing/viewer/checkout, /api/v1/billing/connect

PayPal

Configure clientId, clientSecret, optional webhookId / environment on the PayPal plugin.
Webhook: https://YOUR_HOST/api/webhooks/paypal
Viewer API: /api/v1/billing/viewer/paypal

Bank transfer

  1. Enable payments.bank_transfer and set required instructions (shown to viewers).
  2. Viewer submits a bank-transfer payment.
  3. Operator approves (or rejects) under /admin/subscriptions (and related operator API /api/operator/bank-transfer/[transactionId]).
Bank transfer is not used to start a free trial — trials are card-free when enabled in Settings → Trial.

Free trials

Under /admin/settings → Trial: Trials do not auto-renew into a paid period without a later payment. See Settings and Billing FAQ.

Plans

Create tiers in /admin/plans. Viewers subscribe on /pricing and /subscribe. Manage renewals, history, PayPal/bank actions in Subscriptions.