Physiotherapy clinic software you shape to your own assessment and treatment course
Avinya Plus is configurable physiotherapy clinic software. You build your own assessment and progress-note forms in a Notion-style block builder, bill session packages as GST services from your own catalog, book each treatment-course visit with configurable appointment types, and read the whole course visit-by-visit on one patient timeline. India-first, in early access.
A treatment course lives across a card file, a session register, and a payment diary
A physio patient isn't one visit. It's a course of ten or twenty. The initial assessment goes on a printed proforma, range-of-motion and pain scores get scribbled in a card folder, and 'session 7 of 12' is a tick in a register nobody trusts. The package was paid up front, but which sessions are used lives in someone's head. Generic EMRs were built for a single walk-in consult and have no form that matches how you assess, no place to bill a package, and no way to read week three beside week one. You need forms that fit physiotherapy, a package that bills cleanly, and the whole course on one screen.
Built for how clinics actually work.
Build your own physiotherapy assessment in the block builder
There's no ready-made physio form shipping with Avinya Plus, and you don't need us to write one. The template engine is on by default for every clinic, so you build your own assessment proforma and progress-note sheet from 21 block types and 23 field types. Add a number field for each range-of-motion reading or grip strength, a number field with a 0-10 range for a VAS pain score, select fields for affected joint or posture findings, and rich-text for subjective and objective notes. It's your form, matching how you actually assess, not a rigid screen you raise a ticket to change.
A progress note that does the improvement maths for you
Re-assessing every few sessions means comparing today's numbers against the baseline. Add formula and rollup fields to your progress-note template and the engine runs the arithmetic: a formula column computes percentage change in ROM or pain score from the first reading, and conditional formatting flags a cell (green for improving, amber for stalled) using one of 9 semantic styles, first matching rule wins. The reassessment reads itself instead of you eyeballing a column of numbers, and it prints clean on your own A4 letterhead.
Bill a session package as a GST service from your own catalog
A physio package (say '12 sessions of manual therapy') is a service in your catalog with its own price, tax rate, and HSN/SAC code, filed under a category you create like 'Packages' or 'Therapy Sessions'. Put it on a bill and the tax auto-splits into CGST + SGST for an in-state patient or a single IGST line for out-of-state, printed as a real A4 tax invoice or an 80mm thermal receipt. Prefer to charge per visit? Add the session service with a quantity. The package and the single session are both just catalog lines, so your front desk bills either the same way.
Book each course visit with appointment types you configure
A treatment course is a run of visits, and each one is an appointment moving through scheduled, in visit, completed, cancelled, or no-show: the validated lifecycle that stops a finished session quietly reopening. Rename the seeded appointment types to your own (Assessment, Therapy Session, Review) and the status filter and daily dashboard counts (Total, Arrived, Waiting, In Consultation, Completed) show you who's in for treatment and who didn't turn up. No-shows in a course stop being invisible until the patient drifts away.
The whole course on one patient timeline, visit by visit
Every assessment, progress note, and session attaches to the same patient and lands on a chronological, categorised medical timeline ordered newest-first. Filter by record type to pull just the progress notes and read session 7 beside session 1, or scope to a single visit. Demographics, allergies, custom fields, and scanned referral letters or imaging (in a private bucket reached only through one-hour signed links) sit on the same record, so a locum covering your clinic sees the full course, not a folder of loose cards.
Your clinic's data walled off, every view accountable
Physiotherapy notes and the patient's history are isolated to your clinic by PostgreSQL Row Level Security (enabled and forced, not a filter in app code someone can forget) so a second branch or a shared therapist never reads another location's patients. Role-based access lets a front-desk assistant book sessions and take package payments without opening clinical notes, and an audit trail records who opened which record. Open a second branch and it's another isolated clinic you switch into from one login.
At a glance
- Physiotherapy assessment and progress-note forms are built in the configurable template engine (on by default) from 21 block types and 23 field types (including number fields for ROM, a 0-10 field for VAS pain, formula, rollup, and conditional formatting) and print to A4, A5, or thermal.
- Formula and rollup fields compute improvement (e.g. % change in ROM or pain from baseline); conditional formatting applies one of 9 semantic styles per cell by boolean rule, first match wins, to flag improving or stalled values.
- Session packages are entries in the services catalog with a base price, tax rate, and HSN/SAC code, filed under categories you create; billing auto-splits GST into CGST + SGST (same state) or IGST (inter-state) on A4 or 80mm thermal; per-session billing uses line quantity.
- Each course visit is an appointment with a five-state lifecycle (scheduled, in visit, completed, cancelled, no-show) and configurable appointment types; there is no automatic recurring-series scheduler, so visits are booked individually against one patient record.
- Every assessment, note, and session lands on a chronological, categorised patient timeline filterable by record type; attachments live in a private bucket (10MB cap) served only via one-hour signed URLs.
- Clinical data is isolated per clinic by PostgreSQL Row Level Security (enabled and forced), with role-based access and a PHI audit trail; one login covers multiple isolated branches.
See how it stacks up.
| Feature | Paper / Excel | Legacy EMR | Avinya Plus |
|---|---|---|---|
| Assessment & progress-note form that matches physiotherapy | Printed proforma | Rigid form | You build it |
| ROM / VAS pain fields with % improvement formula | By hand | No | Yes |
| Flag improving / stalled values automatically | No | No | Yes |
| Session package billed as a GST service line | Manual | Partial | Yes |
| Whole treatment course read on one timeline | No | Partial | Yes |
| Configurable appointment types (Assessment / Session / Review) | No | No | Yes |
| Per-clinic data isolation across branches | No | Partial | RLS |
Questions, answered.
Does Avinya Plus come with a ready-made physiotherapy assessment form?
No, and we won't pretend it does. There's no pre-built physio template shipping with the product. What you get is the configurable template builder, on by default, where you build your own assessment proforma and progress-note sheet from 21 block types and 23 field types: number fields for range-of-motion and grip strength, a 0-10 field for a VAS pain score, selects for affected joints, and rich-text for SOAP notes. It's your form, and you edit it any time without raising a ticket.
Can it calculate improvement between sessions?
Yes, if you build it that way. Add formula and rollup fields to your progress-note template and the engine runs the arithmetic, for example percentage change in ROM or pain score from the baseline reading. Conditional formatting then colours a cell, say green for improving and amber for stalled, using the first matching rule. The reassessment surfaces the trend instead of you re-counting a column, and it prints on your own A4 letterhead.
How do I bill a session package, like 12 sessions paid up front?
You set the package up as a service in your catalog with its own price, tax rate, and HSN/SAC code, under a category you create such as 'Packages'. Billing it produces a GST tax invoice that auto-splits into CGST + SGST for in-state patients or IGST for out-of-state, on A4 or an 80mm thermal receipt. To charge per visit instead, add the session service with a quantity. Note that Avinya Plus bills the package as a line item; it doesn't automatically decrement a session counter, so 'sessions used' is tracked through the appointments and the patient timeline, not a package balance meter.
Can I run a whole treatment course and see it in one place?
Yes. Each visit in the course is an appointment with a validated status lifecycle (scheduled, in visit, completed, cancelled, no-show), and you rename the appointment types to your own: Assessment, Therapy Session, Review. Every assessment and progress note attaches to the same patient and lands on a chronological timeline you can filter by record type, so you read session 7 beside session 1. There's no automatic recurring-series scheduler today, so you book each visit, but they all hang off one patient record.
Can my front desk take package payments without seeing clinical notes?
Yes. Access is role-based: a Front Desk role can register patients, book sessions, and take package payments while being blocked from medical records and progress notes, and the sidebar hides what a role can't open. Every record view is written to a tenant-scoped audit trail, and PostgreSQL Row Level Security isolates your clinic's data, so a shared therapist or a second branch never reads another location's patients.
Is Avinya Plus a physiotherapy-specialist EMR?
No, and we're upfront about it. Avinya Plus is a generic, configurable clinic platform; we don't claim physiotherapy clinical expertise or ship a physio-specific module. What's genuinely distinctive is that the real physiotherapy workflow maps cleanly onto live, configurable capabilities: you build the forms, you define the package services, you name the appointment types. It's India-first with GST billing and in early access.
Run your clinic on Avinya Plus.
Patient records, billing, and scheduling in one system your team will actually use.