What it does

The billing surface, end to end.

Invoicing

Per session, per period, or batch. Therapists invoice their own self-pay clients. Practice administrators invoice across the practice. Voiding is gated by role.

Payment links

Stripe payment links generated per session and per invoice. Clients pay from email, SMS, or the portal. No friction.

Autopay

Stripe customer + saved payment method + card brand + last-4. Charging is fired via asyncio.ensure_future in create_client_invoice, never blocks the UI.

Per-therapist CPT rates

Practice defaults with COALESCE-safe per-therapist overrides. Different rates for different licensures or experience levels, handled cleanly.

AR aging

Aging buckets across the practice or per therapist. Identify old balances; trigger payment links or autopay nudges; export for accounting.

Attendance & AI usage

Attendance reports for utilization analysis. AI usage reports for cost allocation across therapists or practices.

Role-based access

Who can do what.

Billing is sensitive. Praxnote enforces role-based access on the server, not in the browser where it could be bypassed. Here's the matrix that the activity log reflects.

Role Create invoice Send invoice Void invoice View invoices
Therapist Own self-pay clients Yes No Own clients
Practice admin All Yes Yes Practice

Pluggable payment providers

Stripe today. More tomorrow.

Praxnote supports Stripe and Manual today, with each practice choosing the one that fits. No platform-level lock-in. Adding a future provider is a small, contained change, not a rewrite.

  • Stripe, Connect, customers, payment methods, payment links, autopay
  • Manual, for practices that handle payment outside the platform but want invoice tracking inside it
  • Future-ready: any provider that can mint a payment link and confirm a charge fits the interface
  • Practice-level configuration; no global lock-in

See an invoice flow

From session to payment, in five minutes.

On a demo we'll generate an invoice, send a payment link, enable autopay, and walk the AR aging report. You'll see why most practices migrate billing first.