Rosario’s name is typed once.

Kalinga is practice-management software for independent clinics and diagnostic centres in the Philippines, sold per branch, per month. The chart, the invoice and the lab result are one record — a patient’s details are entered at booking and never re-keyed at the desk, the bench, or the claims office.

PATIENT Rosario DimaculanganRECORD Illustrative — no real patient appears on this pageThis page is her Saturday — scroll to walk it with her.The 25 modulesSkip to pricing

Most clinics aren’t missing a system. They’re running four — a logbook, a spreadsheet, a chat thread and someone’s memory — and paying for the gaps between them.

The journey below is where those gaps live. Follow one patient through a diagnostic centre; the software appears where it actually works.

TUESDAY · 18:41

Booked

STATION 01 — from her phone

The journey starts before the front door. Rosario books a CBC and a lipid panel for Saturday 09:00. The slot she takes comes off the same calendar the front desk works from, so it cannot be given twice — and the details she types here become the record everything else in this page attaches to.

KALINGA · ONLINE BOOKING — TANDANG SORA BRANCHPUBLIC PAGE
PATIENTRosario DimaculanganSERVICECBC · Lipid panelDAYSaturday 30 Aug
08:0008:3009:0009:3010:1511:0011:3013:00

A reminder goes out the evening before — by email only; Kalinga does not send SMS today, and we’d rather tell you that here than in a contract. If she cancels, the waitlist offers her slot to the next patient.

SATURDAY · 08:52

Arrived

STATION 02 — the front desk

The desk already knows she’s coming. One tap moves her from Booked to Arrived; nothing is written into a logbook, because the row below is the logbook — and the same row shows her paid and settled within minutes of reaching the counter, with her results and verification following as the morning continues.

KALINGA · FRONT DESK — TODAYSAT 30 AUG · 08:52
BOOKED
24
ARRIVED
18
NO-SHOW
3
COLLECTED
₱41,200
TimePatientServiceStatusBalance
09:00Rosario DimaculanganCBC · Lipid panelReleased₱0
09:30Marisol OntiverosAnnual physicalIn progress₱1,850
10:15Benedicto VillaruelChest X-rayWaiting₱950
11:00Corazon MaglinaoFBS · HbA1cHMO claim filed₱2,400
Behind the counter, the med tech drawing her blood clocked in on the same system that will pay her on the 15th — one roster, one time clock, one payroll run.

SATURDAY · 09:04

Billed & paid

STATION 03 — at the counter

Priced and invoiced before anyone is called in. Rosario settles at the counter and the official receipt prints; her Senior Citizen entitlement is applied here, not reconciled later. A patient cannot be seen until the visit is settled — paid, on a payment plan, or covered by a filed claim.

KALINGA · INV-2026-08417 · OR 5521PAID · GCASH
ItemAmount
Consultation₱500
12-lead ECG₱600
CBC₱450
Lipid panel₱1,100
Subtotal₱2,650
VAT — exempt₱0
Senior Citizen — 20%−₱530
Total₱2,120
09:0009:1509:3009:4510:0010:15

09:05 — the path forks.

One visit becomes three concurrent workstreams: a doctor, an imaging room, a bench. None of them start until the visit is billed and settled at the counter — paid, on a payment plan, or covered by a filed claim. From here, left to right is the clock — keep scrolling and the morning advances. Every lane writes into the same chart, so nothing has to be collated later.

  • CONSULTATION — 09:15
  • IMAGING — 09:30
  • LABORATORY — 09:45
LANE B · IMAGING09:30

X-ray, ultrasound, 2D echo, ECG — whatever the requisition says. Rosario’s 12-lead is captured and filed against this visit in the vault; the tracing never leaves the record, and any branch she visits next can pull it.

LEAD II · 25 mm/s · SINUS RHYTHM 72 BPM

LANE C · LABORATORY09:45

The specimen becomes the record.

This is the moment Kalinga exists for. On the left, Rosario’s smear under bright-field. On the right, what the med tech keys in — reference ranges applied as the values land, out-of-range results flagged before a human signs anything.

PERIPHERAL SMEAR · BRIGHT-FIELD ×100

RESULT ENCODING — CBC · LIPID PANEL · MRN-2026-0184
AnalyteResultUnitReferenceFlag
WBC11.2×10⁹/L4.0–10.0H
RBC4.61×10¹²/L3.8–5.2—
Hemoglobin128g/L120–160—
Platelets214×10⁹/L150–400—
Total cholesterol232mg/dL<200H
LDL164mg/dL<130H
HDL51mg/dL>40—
Triglycerides138mg/dL<150—

10:05 — three streams, one chart.

The lanes rejoin. Consultation notes, the tracing and the encoded results are already the same record — nothing to staple, photocopy or re-type into a results logbook. What’s left is the part patients actually wait for: verification, release, the bill, the claim.

ELAPSED, ARRIVAL → COMPLETE CHART1 h 13 min

Not a speed claim — a visibility one: the span is knowable at all only because a single record watched all three lanes. A logbook, a spreadsheet and a chat thread each saw a piece of the morning; none of them can count it.

SATURDAY · 10:29

Verified

STATION 04 — a second pair of eyes

Nothing leaves the lab on one signature. The encoded panel sits in a verification queue until a second qualified professional signs it — and because every access to a patient record is logged, reads as well as writes, the trail shows who looked, not just who typed.

KALINGA · VERIFICATION QUEUE2 PENDING
AccessionPatientPanelEncodedStatus
LAB-0830-014Rosario DimaculanganCBC · Lipid panel10:07 · MT SalgadoVerified 10:29 · MT Yuzon
LAB-0830-015Marisol OntiverosUrinalysis10:11 · MT SalgadoPending

The two H-flags from the bench travel with the result — the physician sees exactly what the analyzer and the med tech saw, in the same reference ranges.

SATURDAY · 11:10

Released

STATION 05 — who can see this?

Rosario gets an email — not the PDF itself, but a link that opens her result behind her own login. Release is the station where a careful buyer should stop and ask: who else can read this record? So here is that answer, published the way we publish a lab result — including what’s out of range. Read the full security page →

SECURITY PANEL · WHAT WE ENFORCE, WHAT WE DON’T HOLDSELF-REPORTED
AnalyteResultReferenceFlag
Tenant isolationRow-level security forced by Postgres on 105 tablesOne clinic can never read another’s records — enforced by the database, not the application—
Field encryptionAES-256-GCM on 8 individual columnsKeys held outside the database—
Access auditEvery access to a patient record logged — reads as well as writesComplete trail per record—
Sign-inTOTP MFA on any account; OIDC SSO per organisationAvailable to every role—
Plan gatingAll of the above on every plan, including FreeNever held behind an enterprise contract—
Data Privacy Act of 2012Patient access, portability and erasure are working endpoints; consent tracked per purposeThe regime we actually sell into (RA 10173)—
Third-party penetration testNot yet performedExpected by larger buyersL
SOC 2 · ISO 27001 · HITRUSTNone held — and none being pursued at this stageCertification audits not undertakenL
Published uptime historyNone — the status page reports current health only; no independent external prober yetEnterprise plans carry a negotiated availability commitment insteadL
L = out of range for what enterprise buyers usually ask. We publish what we don’t have rather than implying we do.
ACCESS TRAIL · LAB-0830-014 — MRN-2026-0184READS AND WRITES

A trail that records only changes cannot answer the question that matters after an incident: who looked. Kalinga logs reads with the same weight as writes — scrub through Rosario’s Saturday.

TUESDAY · DAY 3

Claimed

STATION 06 — PhilHealth, days later

Rosario’s part of this ended at the counter on Saturday — this station belongs to the clinic, not her. Her Konsulta package still owes PhilHealth its share, and someone has to file for it. The claim is generated from the same record everything else came from — so the diagnosis, the OR number and the result already agree with each other, because they were never separate documents. That’s the difference between filing a claim and reconstructing one, and it’s the back office the Max tier is built for.

KALINGA · PHILHEALTH CLAIM CLM-2026-0311KONSULTA PACKAGE
FieldValueSource
MemberRosario Dimaculangan · PIN 08-025xxxxx-xTYPED ONCE, TUESDAY 18:41
ServicesConsultation · ECG · CBC · Lipid panelTHE FORK, 09:05–10:10
Supporting docsVerified results · OR 5521STATIONS 03–04
StatusPrepared Transmitted Awaiting actionDAY 3
Next year, when her annual panel is due, the recall campaign already knows — the journey loops.

EVERY DAY

Support

STATION 07 — when we’re reachable

We’re online when your clinic is. Chat and phone support run on Manila time.

KALINGA · SUPPORT HOURSMANILA TIME
DayHours
Monday – Friday08:00 – 20:00
Saturday09:00 – 17:00
SundayEmail only

Outside these hours, send a message and someone follows up the next business day.

PHILIPPINES

Where we work

STATION 08 — no fixed address, real coverage

Kalinga is Philippines-based, building for clinics and diagnostic centres nationwide.

  • Philippines-based, building for clinics and diagnostic centres nationwide
  • Demo calls and onboarding sessions scheduled by appointment
  • New cohorts open on a rolling basis — no fixed intake dates

The 25 modules, read like a reference range.

Each band starts at the tier that unlocks the module and runs right through every tier above it. “Is payroll included, and where?” — find the row, see where the band begins.

Each plan includes everything to its left.

Core Records

Unified Patient ChartFREEFREE
Lab Results & EncodingFREEFREE
Document & Lab VaultPROPRO
Multi-Branch RecordsPROPRO

Scheduling

Appointment CalendarFREEFREE
Online Self-BookingPROPRO
Waitlist & OverbookingPROPRO

Communications

Appointment RemindersPROPRO
Recall CampaignsPROPRO
Two-Way MessagingPROPRO

Billing

Invoicing & ReceiptsFREEFREE
PhilHealth & HMO ClaimsMAXMAX
Installment PlansMAXMAX
Corporate Accounts & APEEnterprise

Analytics

Front-Desk DashboardFREEFREE
Revenue & Volume ReportsPROPRO
Referral Source TrackingPROPRO

Workforce & Finance

Payroll & PayslipsMAXMAX
Time Clock & AttendanceMAXMAX
Staff SchedulingMAXMAX
Inventory & Stock ControlMAXMAX
Bills & ExpensesMAXMAX

Integrations

E-Signature Consent FormsPROPRO
Accounting Software SyncMAXMAX
API AccessEnterprise

Security is not in this table because it is not a module: row-level security, column encryption, access logging and MFA are on every plan, including Free.

Per branch, per month.

One price per branch. No per-seat arithmetic, no per-patient metering.

FREE
₱0
PER BRANCH / MONTH
Choose Free if you want one shared patient record, a calendar and receipts instead of a logbook and a spreadsheet.
PRO
₱2,800
PER BRANCH / MONTH
Choose Pro if you want patients booking themselves, reminders going out, and one record across every branch.
MAX
₱6,500
PER BRANCH / MONTH
Choose Max if the back office is the bottleneck — PhilHealth and HMO claims, payroll, inventory or staff hours.
ENTERPRISE
Custom
TALK TO US
Choose Enterprise if you bill companies for annual physical exams, or need an API.

Illustrative pricing, subject to change before general availability.

Join the waitlistFree tier has no expiry and needs no card.

STRAIGHT ANSWERS

The questions you would ask on a call.

Including the ones with answers we would rather were different. A limit you find out about here costs you a decision; a limit you find out about in week two costs you a migration.

What happens when the internet drops?

The front desk stops. Kalinga is a web application, so a brownout or a dead connection means no booking, no billing and no results until it comes back — there is no offline mode today, and we are not going to describe one that does not exist. If your branch loses power or connectivity often, weigh that honestly before you move your logbook onto anything web-based, ours included.

How long does setup take, and who does it?

We do it with you, in a scheduled session — not a signup form and a help article. We open clinics in small cohorts on a rolling basis for exactly this reason: onboarding a diagnostic centre means agreeing your services, your prices, your discounts and who on your staff can see what, and that is a conversation rather than a wizard.

How do our existing patients get in?

If your current system can export its records, we bring your patients across for you — demographics only: names, birth dates, contact details and identifiers, from a FHIR, HL7v2 or C-CDA export. Past visits and past results do not come across. If your system cannot produce one of those, we do the conversion with you during onboarding rather than handing you a file format and wishing you luck.

If we leave, can we take our data with us?

Every patient’s record exports as a file, and that is a working endpoint rather than a request form — the same mechanism behind the access and portability rights described on our security page. What we do not have yet is a single button that produces one archive of an entire clinic; ask us and we will produce it for you. We would rather tell you that than imply a button exists.

Do you send SMS reminders?

No. Email only, today. Appointment reminders and result notifications go to the patient’s email address, and if they do not have one they do not get reminded. In a market where a phone number is often the only reliable contact a clinic holds, that is a real gap and we would rather name it here than in a contract.

Is this for hospitals?

No. There is no inpatient functionality — no beds, no wards, no admissions, no operating-room scheduling. Kalinga is built for outpatient clinics and diagnostic centres, which is where a logbook, a spreadsheet and a chat thread are still doing the work.

Start where Rosario did.

You should not have to re-type your patient list to switch. If your current system can export its records — most can, even where nobody has ever asked it to — we bring your patients across for you. If it can’t, we do the conversion with you during onboarding rather than handing you a file format and wishing you luck.

What comes across is demographics — names, birth dates, contact details, identifiers — from a FHIR, HL7v2 or C-CDA export. Not past visits, not past results. We would rather say that here than let you discover it in week two.

No testimonials on this page, no logos, no badges — we don’t have customers yet, and we won’t invent proof. What we have is Rosario’s Saturday, booking to claim, and a Free tier you can run a real front desk on.

What happens after you send this

  1. We reply within two business days, Manila time — a person, not an autoresponder.
  2. We open new clinics in small cohorts, on a rolling basis rather than fixed intake dates, so that onboarding is done with you rather than mailed to you.
  3. There is an agreement to sign before your clinic’s records go in — a short one, signed electronically, covering what we may and may not do with patient data. You will see it before you commit to anything, not after.

Free is not a trial: no expiry, no card, no per-seat arithmetic. Pricing is per branch, per month.

We’ll only use this to reach you about the waitlist. See our Privacy Policy.