Admin: Stripe billing setup

Walkthrough for connecting Stripe live keys + webhook endpoint.

01

Step 1 — Get live mode keys

  • dashboard.stripe.com → Toggle 'Live mode' ON (top-right).
  • Developers → API keys → reveal Secret key (sk_live_…) + Publishable key (pk_live_…).
02

Step 2 — Set up webhook endpoint

  • Developers → Webhooks → Add endpoint.
  • URL: https://app.voxreach.com.au/webhooks/stripe
  • Events: checkout.session.completed, invoice.paid, customer.subscription.updated, customer.subscription.deleted, charge.refunded
  • Copy the Signing secret (whsec_…).
03

Step 3 — Set in VoxReach Admin → Secrets

  • STRIPE_SECRET_KEY = sk_live_…
  • STRIPE_PUBLISHABLE_KEY = pk_live_…
  • STRIPE_WEBHOOK_SECRET = whsec_…
04

Step 4 — Verify

  • Run: node -e "const Stripe = require('stripe'); const s = new Stripe(process.env.STRIPE_SECRET_KEY); s.accounts.retrieve().then(a => console.log(a.id, a.charges_enabled));"
  • Should print account ID + charges_enabled: true.
05

Step 5 — Test a real payment

  • Create a test tenant + send through the setup-fee Stripe checkout.
  • Watch /admin/audit for the webhook delivery — should show 'stripe.checkout.completed' within 2 seconds.

Still stuck?

Email hello@voxreach.com.au — we reply within 2 business hours during AEST hours.

Open a ticket