For optometrists
Just practise. Bill your patients directly.
Medical-aid switching for optometrists is not yet live on iScript. We are in discussion with switching partners, and your practice flips it on the day one is signed, with nothing to migrate. Until then iScript runs your whole practice free: records, diary, dispensing and stock, AI notes that draft themselves with consent, prescriptions, a patient app under your name, invoicing, statements and online card payment through Paystack. Your patients pay from the invoice on their phone.
Or talk to us first- POPIA & HPCSA aligned
- Built by practising clinicians

HPCSA board
Optometry and Dispensing Opticians
Medical aids: where we stand
- Claims for optometrists: not yet switched; in discussion with switching partners
- Everything else on the platform: live and free
- The day a partner is signed you flip claims on; no migration
In short
iScript.live is a South African practice platform for optometrists that holds the refraction and clinical examination, the spectacle or contact-lens dispense, NAPPI-coded optical stock, invoicing and online card payment in one record, with two-year recall running from the clinical record. Medical-aid switching for optometrists is not yet live; the practice flips claims on the day a switching partner is signed, with nothing to migrate.
iScript.live is a multi-tenant, AI-native healthcare practice platform built in South Africa by Lighthouse iScript (Pty) Ltd. This page is about what iScript.live does for optometrists practising in South Africa. Optometrists in South Africa are regulated by the Health Professions Council of South Africa under the Health Professions Act 56 of 1974, through its Professional Board for Optometry and Dispensing Opticians.
An optometrist examines the eyes, measures refractive error, detects ocular disease and prescribes and often dispenses spectacles and contact lenses. Optometry is one of the few disciplines in which a clinical examination and a retail dispense happen in the same visit, to the same person, on the same account.
This page covers what iScript.live does for an optometry practice: the clinical examination record, the prescription, the dispense, frame and lens stock, and an invoice that has to carry both a clinical and a retail component.
At a glance
- Platform
- iScript.live, built by Lighthouse iScript (Pty) Ltd
- Profession this page is about
- Optometrists
- Regulating council
- Health Professions Council of South Africa
- Governing statute
- Health Professions Act 56 of 1974
- Professional board
- Optometry and Dispensing Opticians
- Country of practice
- South Africa
No registration-number prefix is published here. It could not be verified against an authoritative source, and a wrong one would be worse than none.
What actually gets in the way
Where the day goes in optometrists' practice
None of this is a software problem in the abstract. Each of these is an hour, a rejected claim or a clinical decision made with less information than it deserved.
Patient balances collected after the fact
Where the practice bills the patient directly, the balance is settled by statement and phone call rather than on the day, and the dispensary usually finds out when the patient is already out the door.
The clinical record and the dispense are separate systems
The refraction is recorded clinically and the spectacle order is written up in a retail package, so the prescription is transcribed by hand between the two — the most consequential retype in the practice.
Frame and lens stock counted, not tracked
Frames on a display board, lenses on order from a laboratory and contact lenses in a drawer are three different inventory problems, and most practices resolve all three with a spreadsheet.
Laboratory orders that fall into a gap
A lens order sits with an external laboratory for a week with no status against the patient record, so the patient phones and nobody in the practice can answer.
Recall two years out
The next examination is due in two years. Almost no practice has a reliable mechanism that survives that long, which is why optical recall is the most commonly lost revenue in the discipline.
A day in the practice
What a working day looks like on iScript.live
An optometry practice is two businesses sharing a doorway. The software problem is that most systems are good at one of them.
Before the appointment
The price settled before the frames come out
The dispense is quoted against the recorded prescription before the frames come out, so what the patient can actually leave with is settled on the day rather than discovered afterwards.
Examination
The clinical record is a clinical record
Refraction, ocular health findings and the prescription are captured as structured values rather than as a note attached to a sale, so a change in prescription two years later is a comparison rather than an assertion.
LiveDispensing
The dispense comes off the same record and the same shelf
Frames, lenses and contact lenses are stock items. Dispensing moves inventory and posts to the general ledger, so the optical side of the practice reconciles to clinical activity rather than to a count.
At the till
One account, two kinds of line
The consultation and the optical dispense sit on one invoice with the correct coding on each, and the patient settles online from the invoice on their phone through Paystack.
LiveCollection
The patient is told the job is ready by the practice
Messaging over WhatsApp Business API goes out from the record, so collection and recall are driven by the job and the examination date rather than by a diary note.
LiveTwo years later
Recall knows when, and knows what changed
The examination history and the prescription history are both in the record, so recall is driven from the clinical event and the review has the previous refraction in front of it.

What you get, and what is still being built
The platform, read from your side of the desk
5 of these 6 capabilities are in production today. The rest are labelled with the same status we publish on the roadmap, because a status label is the one thing a clinician should never have to interpret.
Refraction and examination as structured data
Structured clinical templates hold refraction, visual acuity, intraocular pressure, anterior and posterior segment findings and the resulting prescription as discrete values — so the prescription that goes to the dispensary is the one that was recorded, not a retype of it.
Structured consultation workflow
Invoicing, statements and online card payment
The invoice and the statement are raised from the record, and the patient settles from the invoice on their phone through Paystack. A balance can be messaged from the record rather than chased by phone. Medical-aid switching for optometrists is not yet live; the day a switching partner is signed, claims are flipped on with nothing to migrate.
Telehealth, e-prescribing and messaging
NAPPI-coded frames, lenses and consumables
A billing tariff library of 25 798 codes including NAPPI, and the full ICD-10 Master Industry Table, with validation edits when the line is coded — so an optical item is coded once, correctly, for both the invoice and the stock movement.
Coding and tariff intelligence
Clinical room and dispensary in one record
A production model of more than 150 entities spanning clinical, billing, inventory and claims with row-level tenant isolation. The dispense is part of the patient record rather than a parallel retail transaction.
Multi-tenant clinical core
Recall and order status to the patient
WhatsApp Business API messaging, transactional email, voice over IP and card payment collection, so a laboratory order update or a two-year recall goes out from the record that knows when the examination happened.
Telehealth, e-prescribing and messaging
Point-of-care integration at the device level
Driver-level integration over Bluetooth Low Energy, USB and serial with full provenance and quality-control state, and correct tariff and NAPPI mapping onto the claim. The current build targets glucose, HbA1c, lipids, C-reactive protein, cardiac markers and urinalysis; ophthalmic instrumentation is not yet in scope.
Point-of-care testing integration
Built today, or being built
What is live, and what is not, in one table
The same list as the cards above, in the form a sceptical reader wants it. Every status in the right-hand column is resolved from the platform roadmap at the moment this page renders. None of it is typed by hand.
| Capability | Platform capability it comes from | Status |
|---|---|---|
| Refraction and examination as structured data | Structured consultation workflow | Live |
| Invoicing, statements and online card payment | Telehealth, e-prescribing and messaging | Live |
| NAPPI-coded frames, lenses and consumables | Coding and tariff intelligence | Live |
| Clinical room and dispensary in one record | Multi-tenant clinical core | Live |
| Recall and order status to the patient | Telehealth, e-prescribing and messaging | Live |
| Point-of-care integration at the device level | Point-of-care testing integration | In development |
5 of these 6 capabilities are in production today, and 1 is in development. Anything in development is not available to buy, is not in a beta programme, and should not be counted on when you make a decision.
Why this is different
The prescription should never be typed twice
In an optometry practice the single highest-consequence data movement is the refraction leaving the consulting room and arriving at the dispensary. Every practice that runs a clinical package and a retail package does that by hand. iScript.live holds both in one record, so the dispense is created from the recorded prescription — and the same item carries its NAPPI code into the invoice, the stock movement and the ledger.
- One patient record spanning examination, prescription, dispense and invoice.
- Invoicing, statements and online card payment from the record rather than a separate retail till.
- Frames, lenses and contact lenses tracked as NAPPI-coded inventory, posting to the ledger.
What it replaces
What actually comes out of the practice
Optometry practices commonly run a clinical system, a retail or point-of-sale system, and a reconciliation between them performed by a person.
| What a practice runs today | What it becomes |
|---|---|
| A clinical record in one system and a point-of-sale in another | One record holding the examination, the prescription, the dispense and the account |
| Frame and lens stock counted, and shrinkage explained after the fact | Optical stock moving at the point of dispensing and posting to the general ledger |
| Patient balances collected by statement and phone call | The invoice raised from the record, settled online from the patient's phone through PaystackLive |
| Recall from a spreadsheet of examination dates | Recall driven from the clinical record, with the previous prescription attached |
| A collection call somebody has to remember to make | Messaging from the job on the record over WhatsApp Business APILive |
The reconciliation between the clinical and the retail side is the work that disappears, and it is usually a person's afternoon every week.
Billing and medical schemes
How optometrists actually get paid
Optometry on iScript today is a cash practice: the practice bills the patient directly, and the platform holds the clinical and the retail side on one account.
Medical-aid switching for optometrists is not yet live on iScript. We are in discussion with switching partners, and the practice flips claims on the day one is signed, with nothing to migrate. The tariff and NAPPI libraries are already in place, so there is nothing to rebuild when that day comes.
Until then iScript runs the whole practice free: records, diary, dispensing and stock, AI notes that draft themselves with consent, prescriptions, a patient app under the practice's name, invoicing, statements and online card payment through Paystack.
The consultation and the dispensed frames, lenses or contact lenses sit on one invoice with the correct coding on each line, and the patient settles online from the invoice on their phone. Optical stock moves on dispense and posts to the ledger from the same record.
The distinctive optometry risk is a correctly performed examination attached to an incorrectly coded dispense. Validation at the point of coding addresses that; the price itself is between the practice and the patient.
The billing mechanics, and their status
- Medical-aid claim switching for optometrists
- Not yet switched; in discussion with switching partners.
- NAPPI coding on dispensed items
- Live, from the loaded tariff library.
- Optical stock moving on dispense
- Live, posting to the general ledger.
- Online card payment collection
- Live, through Paystack.

Who else touches it
Who else in the practice uses this, and what they can see
A practice is not one person, and a clinical record that only the clinician can reach is a record somebody else will keep a second copy of. Roles are configured by the practice, not assumed by the platform, and every role is scoped at row level.
| Role | What they do, and what they can see |
|---|---|
| The practitioner | Consults, records, prescribes where the registration allows it, and submits. Sees the full clinical record for patients within the practice. |
| Reception and front desk | Books, checks members in, confirms eligibility before the appointment and takes payment. Sees the demographic, appointment and account layers, not the clinical note. |
| Billing and accounts | Works claims, item-level rejections, reversals and remittance advice, and reconciles what was paid against what was submitted. Sees coded lines, not free-text clinical content. |
| Practice manager or owner | Configures the practice, the sites, the fees, the templates and who may do what. Sees activity and financial reporting across every site in the group. |
| A supervisor, where the registration requires one | Countersigns and reviews the work of a practitioner practising under supervision, against the same record rather than a printed copy of it. |
| An assistant, associate or locum | Joins the practice as a provider rather than as a shared login, so their activity is attributable to them and ends when their association does. |
Every read, write and export carries the actor, the timestamp and the reason, so who saw what is answerable rather than reconstructed.
Getting started
From registration to a working practice, and what moving across involves
Onboarding is measured in days rather than in an implementation project. Nothing here requires a server, a site visit or a consultant. Migrating history is the separate question, and it is answered below rather than skipped.
Standing the practice up
01
Register the practice
Online registration produces your own tenant with your practice branding and subdomain, including several sites if you run a group.
02
Load frames, lenses and suppliers
Optical stock is set up against NAPPI coding so a frame or a lens is one item for the invoice, the inventory and the ledger.
03
Examine, then dispense in the same record
Refraction and examination findings become the prescription, and the dispense is created from that prescription rather than transcribed into a separate retail system.
04
Bill, fulfil and recall
The invoice and statement are raised from the record, the patient pays online from the invoice on their phone through Paystack, laboratory order status sits against the patient, and the next examination recall is scheduled from the clinical record.
Moving off your current system
Moving practice software is the part everybody underestimates, so it is worth being exact about what is quick and what is not. Standing the practice up, as set out above, is quick. Bringing a decade of history across is not, and is scoped as its own piece of work.
Step 1
Run in parallel for a short period
Most practices keep the outgoing system readable while they work live in the new one, rather than attempting a hard cut-over on a Monday morning. Nothing about the platform requires the old system to be switched off first.
Step 2
Bring patients across
Patient demographics, medical-aid details and balances import first, because those are what reception needs on day one. Clinical history follows, and how much of it comes across as structured data rather than as attached documents depends entirely on what the outgoing system will export.
Step 3
Move the money last
Open claims and outstanding debtors are the last thing to move, and usually the cleanest approach is to finish the claim cycle already in flight on the old system while new work starts on the new one.
Historic-data migration is quoted separately from the platform, because its length is a property of the outgoing system rather than of this one. A practice that exports well is a short piece of work. A practice whose history exists only as scanned paper is a decision about how much of it is worth carrying.
Regulation, record-keeping and compliance
What the record has to survive
Clinical software carries the most sensitive data a person has, and a regulator will eventually read what it produced. Compliance is designed into the platform rather than certified around it afterwards.
Registration authority
Professional Board for Optometry and Dispensing Opticians
Health Professions Council of South Africa, under the Health Professions Act 56 of 1974.
Keeping of patient records
Refraction, examination findings, the issued prescription and the dispense record are held as one auditable clinical record aligned to HPCSA guidance on the keeping of patient records, with an immutable audit trail.
POPIA
Consent, lawful processing, data residency and subject-access handling are built into the platform, including consent for recall and order-status messaging.
Scope and delegation
Optometrists, dispensing opticians and optical assistants are separate roles with separate permissions in the same record. What each role may examine, prescribe or dispense is configured by the practice in line with its practitioners' registration.
The record has to be attributable
Every clinical entry carries who made it, when, and against which consent, on an immutable audit trail. An entry that is later corrected shows as a correction rather than replacing what was there, because a record that can be silently rewritten is not evidence of anything.
The record has to be retrievable years later
Clinical records outlive software, staff and sometimes practices. Records are held as structured data with their coding intact and are exportable, so the practice is not dependent on this platform continuing to exist in order to read its own history. Statutory retention periods are set by the regulator and the relevant legislation, not by us, and are not restated on this page.
Consent is part of the record, not a filing cabinet
Consent to treat, consent to a remote consultation and consent to share are captured in the consultation and stored against it, so the consent that applied at the time is retrievable with the entry it applied to.
The examination is a clinical record, not a sales note
Refraction and ocular health findings are held as clinical data with their own audit trail, independent of the retail transaction that may have followed. A dispense being reversed does not alter the examination that preceded it.
Prescription history has to be comparable
Successive prescriptions are stored as structured values, so a change over years is a measurement rather than a recollection. That is what makes a referral for suspected pathology defensible.
What it costs
How this is priced, and what the quote depends on
The clinical platform is free, on every seat, permanently. You pay only for the medical claims you submit — at a rate that falls as you add modules — and optionally for the two business modules themselves. Every figure is published below rather than quoted on request.
01
CORE — the clinical platform, R0
The record, the diary, the billing, the claims workflow and the AI documentation, on every seat, at no cost and with no expiry. Not a trial and not a cut-down edition. Claims are R9.95 each on CORE, and that is the only charge.
02
R9.95, R8.95 or R7.95 per claim submitted
You pay for claims you actually send, from prepaid credits that never expire. The rate falls as you move up: R9.95 on CORE, R8.95 on STRIDE with one module, R7.95 on SUMMIT with both. Never a percentage of what the claim is worth, and never a percentage of what you earn.
03
STRIDE R699 a module, SUMMIT R1 199 for both
Website and Finance are optional business modules. They do not make you a better practitioner; they make you a better business, and they lower your per-claim rate while they are on. Neither is required to practise on the platform.
What the quote turns on
- How many medical-scheme claims you actually submit in a month — that is the only usage-based charge there is.
- Whether you want the Website module, the Finance module, both, or neither — which also sets your per-claim rate: R9.95 on CORE, R8.95 on STRIDE, R7.95 on SUMMIT.
- Nothing else. Seats are free, sites are free, storage is free, and support is not a tier.
- Migrating historic patient data from an outgoing system is scoped separately and quoted before any work starts.
- Nothing here is indexed to your turnover, your collections or the value of your claims.
For optometrists specifically
Optometry practices with a significant dispensing component should raise inventory and general-ledger posting in the first conversation, because it materially affects scope. Practices inside a host retail arrangement should also raise that, since it affects how the tenant is configured.
Every price on this site is published, not quoted. We never charge a percentage of what you earn. Registering a practice does not commit you to a contract.
Ask for a quote for your practiceObjections
The reasons not to do this, answered
Every one of these has been said to us by a practitioner in this profession or one adjacent to it. Where the answer is no, it says no.
Half my business is retail. Is this a clinical system that will fight me on that?
No, and the retail half is the reason the inventory and general-ledger integration matters here more than in most disciplines. Frames, lenses and contact lenses are stock items that move on dispense and post to the ledger. What it is not is a full-featured optical retail suite with frame-board merchandising analytics, and that is worth establishing before you move.
Will it handle a practice inside a retail chain's store?
The practice is its own tenant with its own isolated data regardless of where it physically sits, which is usually the point in that arrangement. What data the host arrangement requires you to share is a commercial matter between you and them, not something the platform decides.
LiveDoes it do lens ordering to my supplier?
Not as a direct supplier integration today. The dispense creates the stock movement and the account line; the order to the laboratory is currently placed the way you place it now. It would be misleading to describe that as integrated.
My recall list is my business. Can I trust it to migrate?
Recall is derived from examination dates and prescriptions in the clinical record, so it is only as good as what imports. That is precisely why patient demographics and clinical history are treated as a scoped migration exercise rather than a checkbox, and why the outgoing system stays readable while you verify it.
Questions practitioners actually ask
Optometrists and iScript.live
Short, direct answers, each written to make sense on its own if it is read without the question above it or the page around it.
Does iScript.live submit optometry claims to South African medical schemes?
Not yet. Medical-aid switching for optometrists is not yet live on iScript; we are in discussion with switching partners, and the practice flips claims on the day one is signed, with nothing to migrate. The tariff and NAPPI libraries are already in place, so there is nothing to rebuild when that day comes.
How do optometry patients pay on iScript.live?
From the invoice on their phone. The practice raises the invoice and the statement from the record, and the patient settles online through Paystack or by card in the rooms. Until medical-aid switching for optometrists goes live, the practice runs as a cash practice, with the software still free on every seat.
Does iScript.live manage optical stock such as frames and lenses?
Yes. Frames, lenses and contact lenses are held as NAPPI-coded inventory, and a dispense moves stock and posts to the general ledger through the platform's ERPNext integration — so the display board, the invoice and the books describe the same items.
Does the refraction carry through to the spectacle order automatically?
Yes. Refraction and examination findings are recorded as discrete values, and the dispense is created from the recorded prescription rather than retyped from it. That removes the transcription step that causes most dispensing errors in optometry practice. The same item then carries its NAPPI code into the invoice, the stock movement and the ledger.
Can iScript.live send two-year optometry recall reminders?
Yes. WhatsApp Business API messaging and transactional email run from the clinical record, so recall is scheduled from the date of the examination itself. Order-status updates to a patient waiting on a laboratory can go out through the same channel.
Does iScript.live work for a multi-branch optometry group?
Yes. Each practice is a tenant with row-level data isolation, and inside it a group can run per-site diaries, per-site stock and consolidated invoicing with shared patient records and role-based access across branches. Between separate practices no clinical data is shared, because isolation is enforced in the data model.
Does iScript.live integrate with optometric instruments such as auto-refractors?
Not yet. Point-of-care device integration is in development and the current build targets glucose, HbA1c, lipids, C-reactive protein, cardiac markers and urinalysis. Ophthalmic instrumentation is not in scope today and refraction values are entered by the practitioner. Driver-level integration over Bluetooth Low Energy, USB and serial is the intended route once that layer is proven.
Can an optometry practice manage frame and lens stock in iScript.live?
Yes. Frames, lenses and contact lenses are held as stock items, and dispensing moves inventory and posts to the general ledger through the platform's ERPNext integration. The optical side of the practice therefore reconciles to clinical activity rather than to a periodic count.
Does iScript.live keep the eye examination and the optical sale on one account?
Yes. The professional service and the dispensed items sit on one invoice with the correct coding on each line, including NAPPI on dispensed items, and the patient settles online from the invoice on their phone through Paystack. Medical-aid switching for optometrists is not yet live on iScript; the practice bills the patient directly until a switching partner is signed.
How does an optometry practice run patient recall on iScript.live?
Recall is driven from the examination date and prescription history in the clinical record rather than from a separate spreadsheet, and messaging goes out over WhatsApp Business API or transactional email from the same record. The previous refraction is available at the review.
The setting
What optometrists and their practices look like on this platform
Editorial images, chosen to show the setting the software is used in rather than a stock photograph of a laptop.





These are AI-generated editorial images. They depict no real practitioner, patient or premises, and are not photographs of anyone on this platform or of any of the practices named elsewhere on this site.
The same HPCSA board
Other professions registered with the Optometry and Dispensing Opticians board
Primary eye care and optical dispensing, where a clinical examination and a retail dispense happen in the same visit. If you have landed on the wrong page for your own registration, the right one is probably below.
All 28 professions, grouped by boardBring your practice onto the platform
Register your practice and run one examination through to the dispense
The test that matters is whether the prescription reaches the dispensary without being retyped. Register a tenant and try exactly that.


