Connect a provider
Connect Stripe or Polar so neonFin can charge for credits.
neonFin never holds money. A payment provider - Stripe or Polar - owns
checkout, payment methods, invoices, taxes, and subscription billing. neonFin
owns products, credits, credit codes, and webhook fulfillment. This step is the
same whether you use the hosted instance at pay.vantezzen.io or self-host.
Connect a provider from the dashboard under Providers. neonFin creates and syncs the product catalog inside your provider account for you - you never manage the catalog in the provider dashboard.
Use a dedicated Stripe or Polar account for neonFin-managed products if you can. neonFin creates catalog objects automatically, and a dedicated account keeps them clearly separate from anything you manage by hand.
Stripe
- In Providers → Connect provider, choose Stripe and paste an API key.
Use
sk_test_…while developing; use a live key from the account that should own the products and prices in production. - Add the webhook endpoint neonFin shows you. Subscribe to:
checkout.session.completedinvoice.paidcharge.refundedcustomer.subscription.deleted
- Paste the webhook signing secret back into neonFin.
For local development, forward events with the Stripe CLI - neonFin shows the exact command, e.g.:
stripe listen --forward-to https://pay.example.com/api/webhooks/stripe/acct_123Polar
- In Providers → Connect provider, choose Polar and paste an organization access token that can manage catalog, checkout, customer sessions, and webhooks.
- Add the webhook endpoint neonFin shows you. Subscribe to:
order.paidorder.refundedsubscription.canceledsubscription.revoked
- Paste the webhook signing secret back into neonFin.
Test before going live
- Create a product and price in neonFin.
- Start checkout from a test app.
- Complete payment in the provider's test mode.
- Confirm the order becomes paid in neonFin.
- Confirm credits appear in the wallet.
- Trigger a refund and confirm the webhook log records it.