Help Center
Step-by-step guides for every Relify module, from EMR and appointments to billing, inventory and HQ reporting.
Common tasks
Each one opens the full walkthrough on this page.
Data migration
Moving from another system? We'll migrate your data for free.
Email support@relify.com.my and the Relify team will move your existing clinic data across at no cost, including suppliers, inventory, patients, appointments and payer records. We check it with you before you go live.
- Email usSend support@relify.com.my the system you're moving from and the data you'd like to bring over.
- We migrate it for youOur team maps and imports your suppliers, inventory, patients, appointments and payer records, free of charge.
- Review and go liveCheck the imported records with us, then start running your clinic on Relify.
Clinical, EMR & Documents
Consultations, diagnoses, ICD coding, vitals, medications, investigations, documents and completed visit records.
The EMR page is the doctor's consultation workspace. It is used to search and open a patient, start or continue the current visit, record vitals, allergies, chronic conditions, doctor notes, impression, diagnoses, medications, services, consumables, equipment, vaccinations, packages, investigation/lab orders, uploaded files, AI summaries, ICD codes, and final visit records. It is also where doctors create lab or investigation orders through the Investigation tab.
At a glance · Save a consultation
- 1Open the patient
- 2Document the visit
- 3Save Visit
Walkthrough · 25 steps
Copy link- 1
Open EMR from the sidebar.
- 2
Use the patient search bar or command palette to find a patient.
- 3
The patient search can show patients currently in the queue, now serving patients, checked-in appointments, and recent patients.
- 4
Click a patient to open their EMR.
- 5
Use Create Visit or Current Visit to start documenting the consultation.
- 6
In the first part of the visit, enter visit type, vitals, allergies, and chronic conditions.
- 7
Record vitals such as BP, temperature, weight, heart rate, oxygen saturation, respiratory rate, height, and BMI where available.
- 8
Use the notes area to enter doctor notes or consultation notes.
- 9
Use the Impression field to record the clinical impression.
- 10
Add diagnoses manually or use the diagnosis tools to add ICD-linked diagnoses.
- 11
Use the ICD suggestion button to suggest ICD-10 or ICD-11 codes from the impression or diagnosis.
- 12
Use AI diagnosis suggestion to get possible diagnosis support, suggested checks, tests, imaging, treatment, red flags, and follow-up notes.
- 13
Use Generate Full AI Summary to generate a visit summary from doctor notes, diagnoses, vitals, allergies, and chronic conditions.
- 14
If AI is disabled, enter a manual summary instead.
- 15
Add medications from inventory. Default dosage or instructions may auto-fill from inventory settings.
- 16
Add services, consumables, equipment, and vaccinations where needed.
- 17
Use packages to apply bundled medicines, services, consumables, equipment, or nested package items.
- 18
Use the Investigation or Quick Lab section to order lab tests for the patient.
- 19
When ordering investigations, choose the investigation group, select one or more tests, fill any required context fields, then create the lab orders.
- 20
Created lab orders appear in the Laboratory page for tracking, result entry, external lab sending, uploads, and completion.
- 21
Use file upload to attach supporting visit files such as images, PDFs, reports, or sketches.
- 22
Use voice note or transcription tools where available to help enter clinical notes faster.
- 23
Click Save Visit to save the completed consultation.
- 24
During Save Visit, the system validates stock, saves the visit data, updates insights, finalises the visit, and binds any investigation/lab orders to the saved visit.
- 25
If the visit contains a reportable disease, the system may show a notification/reporting modal after saving.
- EMR means Electronic Medical Records.
- Only doctors and locum doctors should access EMR.
- Branch admins or receptionists should not normally use EMR unless explicitly allowed by the system rules.
- Queue and EMR are connected: doctors can open a patient from the queue into EMR.
- Patients and EMR are connected: the patient profile stores previous visits, files, medical info, and visit history.
- Inventory and EMR are connected: medications, services, equipment, consumables, vaccinations, and packages can be selected from inventory during the visit.
- Pharmacy and EMR are connected: prescribed medications can be sent for dispensing or pre-dispensing where enabled.
- Labs and EMR are connected: lab/investigation orders are created in EMR, then managed in the Laboratory page.
- System Setup affects EMR because lab templates, note templates, MC templates, PDF templates, appointment colors, and clinic settings can change what appears or how documents are generated.
- AI summary is optional. If AI is enabled, the system can generate a full visit summary. If AI is disabled, the doctor can save a manual summary.
- ICD suggestions are support tools. The doctor should review and confirm the final diagnosis and code.
- AI diagnosis suggestions are support tools and should not replace clinical judgement.
- Visit files and sketches are saved with the visit and can later appear in the patient's Files & EMR area.
- Save Visit should be clicked only after reviewing diagnoses, medications, services, investigations, files, and summary.
- If stock validation fails, the doctor may need to adjust medication, consumable, vaccination, or equipment quantities.
- Consultation timer/current visit draft data may be used to track the active consultation before saving.
- After saving, the visit can be used for invoices, reports, insights, pharmacy, lab linkage, and patient history.
The Laboratory module is used to manage lab and investigation orders after they are created from the EMR. Staff can view pending, in-progress, and completed lab orders, enter internal lab results, send external lab requests, upload external lab reports, attach result files, print tube stickers, and track lab order status by month.
At a glance · Process a laboratory order
- 1Pending order
- 2Enter the result
- 3Completed
Walkthrough · 14 steps
Copy link- 1
Open Laboratory from the sidebar to view lab and investigation orders.
- 2
Use the month filter at the top-right to view lab orders for a specific month.
- 3
Switch between Pending, In Progress, and Completed tabs to track each order's status.
- 4
Pending shows new lab orders that still need action.
- 5
In Progress shows lab orders that have been sent out or are currently being processed.
- 6
Completed shows lab orders where results have already been saved or uploaded.
- 7
For an internal lab order, click Enter Result to key in structured result values.
- 8
For an external lab order that is still pending, click Send to Lab to choose an external lab and add optional instructions.
- 9
For an external lab order that is in progress, click Upload Result to upload the completed external lab report and optional summary.
- 10
For a completed order, click View Result to review the saved lab result.
- 11
Use the file upload area inside result forms to attach PDFs, images, or supporting documents.
- 12
Use the tube sticker button on an order card to print tube/sample stickers.
- 13
Lab order cards show the patient, test name, doctor, lab type, created time, and available action.
- 14
The page refreshes automatically, so new or updated orders can appear without manually reloading.
- Important: lab orders are created from the EMR page, not directly from the Laboratory page.
- To order a lab test for a patient, open the patient's EMR/current visit and use the Investigation tab.
- The Laboratory page is mainly for tracking, processing, entering results, uploading reports, and reviewing completed investigation orders.
- Investigations and lab orders are closely linked: the doctor requests them from EMR, then staff manage the workflow in Laboratory.
- Internal lab orders allow structured result entry directly in Relify.
- External lab orders can be sent to an outside lab, then the external result can be uploaded later.
- Result entry can include both typed result fields and uploaded files.
- The system uses lab templates to show the correct result fields for selected test groups and test types.
- Order badges show unseen or updated counts for Pending, In Progress, and Completed tabs.
- Lab orders are branch-specific and follow the signed-in user's branch.
- Doctors and authorised clinical staff may use EMR to request investigations, while lab/admin staff may use Laboratory to process and complete the orders depending on permissions.
Appointments, Patients & Queue
Register patients, schedule bookings, check patients in, manage the live queue and continue into the consultation workflow.
The Patient Centre — the searchable directory of everyone registered at the branch. From here staff add and edit patients, open a full patient profile (medical info, visits, files, appointments, payments and insurance), archive records, add a patient to the queue, and collect deposits.
At a glance · Add a patient
- 1Add Patient
- 2Enter details
- 3Save profile
Walkthrough · 7 steps
Copy link- 1
Find a patient with the search box at the top — it matches on name or patient ID.
- 2
Reorder the list with the Sort button: Name A–Z or Z–A, Last Visit newest or oldest, Date of Birth newest or oldest, or Patient ID low→high or high→low.
- 3
Narrow the list with the Filters button: filter by Gender, by a Date of Birth range (From / To), and by Status (Active patients, Archived only, or All patients). Active filters show as chips you can remove individually.
- 4
Add a new patient with the Add Patient button. The form has three steps — Personal (name, nationality, IC or passport, DOB, gender, race, discount tier), Contact (phone, address), and Emergency (emergency contact, and a guardian section that auto-appears for patients under 18).
- 5
Open a patient's full profile by clicking their name in the list.
- 6
Use the three-dot (⋮) menu on any row for quick actions: View profile, Edit, Archive, Add to queue, or Collect Deposit.
- 7
Change how many patients show per page with the Rows per page selector (10, 25, 50, 100) and move through pages with the pager at the bottom.
- A patient's profile has seven tabs: Overview, Medical Info, Appointments, Files & EMR, Visits, Payments, and Insurance.
- In Files & EMR you can upload lab results, medical records, and imaging/scans (PDF, JPG or PNG up to 10MB each) and view documents generated from EMR such as MCs and referrals.
- The Insurance tab is where you link and manage the patient's insurers and panels, including member/policy details, coverage limits, copay, and guarantee letters.
- The Appointments tab has a private self-booking link the patient can use to book themselves; it can be copied or sent over WhatsApp.
- When adding a guardian by IC, the system checks whether that person is already registered in the branch and links them automatically if so.
- Archiving hides a patient from the active list without deleting them — switch the Status filter to Archived only or All to see archived patients again.
- The Download button (for exporting the patient list) is only shown to branch admins.
The Appointment Centre — schedule and manage patient bookings for the branch. View bookings as a List, Week grid, or Month calendar; create appointments; open a booking to check a patient in, mark it done, flag a no-show, or delete it; and manage the appointment types and colours used across the calendar.
At a glance · Create an appointment
- 1Pick date & time
- 2Choose patient
- 3Save booking
Walkthrough · 6 steps
Copy link- 1
Switch how bookings are shown with the List / Week / Month toggle. List is a searchable, sortable table; Week is an hour-by-hour grid; Month is a full calendar overview.
- 2
Create a booking with the Create Appointment button (a + button on mobile), or by clicking an empty time slot in Week view or a day in Month view. Fill in title, visit type, date, start/end time, patient, and optionally a doctor and notes, then Save.
- 3
In List view, find a booking with the search box (matches patient, title, or notes), filter by doctor or by no-show status, pick a month, and sort newest or oldest first.
- 4
Open a booking to see its details and act on it: Check-in (adds the patient to the queue), Mark done, Mark/undo no-show, or Delete. In List view these are on the three-dot (⋮) menu; in Week/Month you click the appointment first.
- 5
To add, rename, recolour, or remove appointment/visit types, go to System Setup → Appointment Colors. Types are configured there, not on this page.
- 6
Link Calendar creates a read-only calendar feed you can open in Google Calendar or a phone calendar app.
- The four cards at the top summarise the current view: This Month total, Upcoming, No-Shows, and Completion rate.
- Appointment colours on the calendar reflect their type; completed bookings show green and past-due ones show red.
- Checking a patient in from an appointment places them straight into the Queue with a queue number.
- After saving a booking you can send the patient a confirmation over WhatsApp.
- Setting up online payment for appointments is done in System Setup, not on this page.
- Adding or editing appointment/visit types and their colours is done in System Setup → Appointment Colors, not on this page.
- In a multi-branch group you can switch to another branch to view its calendar, but other branches are view-only — you can't create, edit, or check in there, and the Create and Link Calendar buttons are hidden.
The live patient queue for the branch (the Queue Centre). Shows who is waiting, being seen, and done, with tools to call patients to a room, print tickets, mark visits done, and set up walk-in self-registration and the waiting-room TV display.
At a glance · Call a patient
- 1Patient waiting
- 2Call next
- 3Now serving
Walkthrough · 8 steps
Copy link- 1
See live counts at the top: Waiting, Consulting, Completed, Average Wait, and Completion Rate; switch the period with Today / 7D / 30D.
- 2
Find a patient with the search box (by name or queue number), or narrow the list with the All Status / Waiting / Called / Done filter.
- 3
View a different day with Prev / Next, jump back with Today, see everything with All, or pick a specific date by clicking the date label.
- 4
Call a patient: click Call on their row, choose a room in the popup, and confirm — this announces them and updates the TV display.
- 5
Print a queue ticket with the print button on the row; mark a patient Skip or Done with the matching buttons.
- 6
After marking a patient Done, you can send them a Google review request over WhatsApp from the popup, if a review link and the patient's phone number are set.
- 7
Set up the queue with the Settings button: choose announcement languages, toggle auto-announce/repeat, generate the patient self-registration QR (download or print a poster), and configure the TV Display (rotating health tips or a promo slideshow, plus a scrolling notice).
- 8
Open the waiting-room screen with the TV Display button, and export queue history with Download Audit (CSV).
- Doctors can click a patient's row to open that patient directly in EMR.
- Branch admins in a multi-branch group can switch branches from the branch selector; other branches are view-only — you can't call patients, change settings, or open the TV link there.
- The self-registration QR lets walk-in patients add themselves to the queue by scanning it.
Inventory & Procurement
Items, batches, FEFO, expiry, stock in, suppliers, reorder planning, stock take, packages, profitability and transfers.
The Inventory Centre is used to track and manage the clinic's stock, supplies, services, packages, suppliers, reorder planning, stock value, expiry, profitability, analytics, and stock transfers. It helps clinics monitor low stock, expired items, expiring batches, supplier links, package pricing, and physical stock take counts.
At a glance · Stock in a batch
- 1Open the item
- 2Stock In
- 3Batch & expiry
Walkthrough · 17 steps
Copy link- 1
Open Inventory from the sidebar to view the clinic's stock and supplies.
- 2
Use the Inventory tab to see all items such as medicines, consumables, equipment, vaccines, and services.
- 3
Use the search bar to find an item by name, SKU, category, or location.
- 4
Click Filters to narrow items by supplier, status, category, and sub-category.
- 5
Click + Add Item to create a new inventory record. Enter the item name, category, SKU, unit, location, selling price, cost price, quantity, low stock threshold, expiry date, supplier, and description.
- 6
For medicines, add default dosage, route, duration, and instructions so they can auto-fill during EMR prescribing. Doctors can still override these instructions during a visit.
- 7
For services, quantity and expiry are not needed because services do not use physical stock.
- 8
Open an item to view or edit its details, update price, upload an item image, check linked suppliers, view stock history, and add new stock batches.
- 9
Use Stock In to add received stock. Enter quantity received, cost per unit, batch code, expiry date, supplier, and storage location.
- 10
Use Restock to send procurement requests to suppliers through WhatsApp or Email using saved message templates.
- 11
Use Stock Take to perform physical stock counting. Enter the counted quantity, review gains or losses, save as draft, or commit variances to update inventory levels.
- 12
Use the Suppliers tab to add and manage supplier contacts, WhatsApp numbers, emails, and item links.
- 13
Use the Packages tab to create bundled treatment/service packages with included items, quantities, price overrides, and discount percentages.
- 14
Use the Reorder tab to review items that need replenishment.
- 15
Use the Profitability tab to compare selling price, cost price, margins, and item profitability.
- 16
Use the Analytics tab to review stock value, category breakdown, expiry timeline, batch history, supplier usage, and movement trends.
- 17
Use the Transfers tab to manage stock movement between branches if multi-branch transfer is enabled.
- The dashboard cards show Total Items, Stock Value, Low Stock, Expiring Soon, and Expired items.
- Low stock depends on the item's current quantity compared with its low stock threshold.
- Expired items are items or batches with expiry dates already past.
- Expiring Soon usually means batches expiring within the configured upcoming period, such as 30 days.
- FEFO means First Expiry, First Out. It helps the clinic use earliest-expiring batches first to reduce waste.
- Services can be sold through invoices and selected in EMR, but they do not require quantity or expiry tracking.
- Descriptions added to inventory items can appear in invoices, EMR selection, and package views.
- Packages can include medicines, services, consumables, equipment, and even nested package items if enabled.
- Stock Take can be saved as a draft before committing final count variances.
- Blind Count hides the expected quantity during stock take to make physical audits more accurate.
- Supplier links help staff reorder faster and keep purchase details such as preferred supplier and last purchase price.
- Inventory data is branch-specific, so users normally see stock for their signed-in branch unless they have multi-branch permission.
Billing, Payments, Claims & Payers
Invoices, deposits, payment methods, LHDN e-Invoice, claims, payer records, schemes, coverage and payer-specific pricing.
The Billing Centre for the clinic. Staff can create invoices, view and filter invoice history, manage paid/unpaid status, download invoice PDFs, share invoices through WhatsApp, collect patient deposits, and manage insurance/panel/corporate/TPA/government claims. It also supports LHDN e-Invoice / MyInvois status tracking when configured.
At a glance · Create an invoice
- 1Patient & payer
- 2Add items
- 3Review & save
Walkthrough · 14 steps
Copy link- 1
Open Invoices & Claims from the sidebar to enter the Billing Centre.
- 2
Use the top tabs to switch between Invoices, Claims, and Deposits.
- 3
Use the month picker, search box, and filters to find invoices by patient, invoice number, status, invoice type, payer, or date.
- 4
Click Create Invoice to start a new invoice. Step 1 is for patient, visit, date, invoice type, payer/coverage details, and basic invoice information.
- 5
In Step 2, add billable items such as medicines, services, equipment, consumables, or package items. The invoice preview updates the subtotal, discounts, tax, and total automatically.
- 6
Click Save as Draft if the invoice is not ready yet. Draft invoices can be reopened and completed later.
- 7
Click Save Invoice to create the final invoice. After saving, the success popup lets you view, download, or share the invoice.
- 8
To mark an invoice as paid, open the invoice and click Mark as Paid, then choose the payment method such as Cash, Credit Card, Online Transfer, QR Payment, Insurance Claim, Deposit, or Other.
- 9
To download a PDF, open the invoice and click Download PDF.
- 10
To send the invoice to the patient, use the WhatsApp share button after opening or saving the invoice.
- 11
Use Collect Deposit when the patient pays an advance amount before the final invoice is created.
- 12
Use the Claims tab to manage payer-related invoices such as insurance, panel, corporate, government, and TPA claims.
- 13
For split billing, choose the correct invoice type and payer/coverage details. The system can split the bill into a payer invoice and a patient cash invoice when deductible, co-pay, or coverage rules apply.
- 14
For LHDN e-Invoice / MyInvois, check the LHDN status area after saving or submitting. The result may show Valid, Pending, Rejected, Dry-run, or Not Sent depending on the configured submission mode.
- The Invoices tab is for normal invoice history and invoice creation.
- The Claims tab is for payer billing, claim tracking, and insurance/panel/corporate/TPA/government invoices.
- The Deposits tab is for advance payments collected before or separate from the final invoice.
- Invoices may be Cash, Insurance, Insurance Reimbursement, Panel, Corporate, Government, or TPA.
- Paid and unpaid invoices are shown with clear status badges.
- Patient discount schemes, package discounts, payer rule discounts, deductibles, co-pay, and coverage amounts can affect the final invoice total.
- Split billing can create two linked invoices: one payer invoice and one patient cash invoice.
- LHDN e-Invoice depends on the clinic's MyInvois/LHDN setup in settings. If it is not configured, the invoice can still be created but may not be submitted to LHDN.
- Rejected LHDN submissions usually mean clinic, patient, tax, address, TIN, MSIC, issue date/time, or total calculation details need correction.
- Branch admins usually see invoice statistics and billing summaries. Other roles may only see what their permissions allow.
- In multi-branch setups, invoice data should follow the selected/signed-in branch unless the user has permission to view multiple branches.
The Panels & Corporate module manages all third-party payers for the clinic, including insurance companies, panel companies, corporate employers, government payers, and TPAs. It is where staff add payer profiles, set claim contact details, configure billing terms, assign pricing schemes, create payer-specific pricing rules, and manage covered patients.
At a glance · Add a payer and pricing scheme
- 1Add Payer
- 2Payer details
- 3Pricing scheme
Walkthrough · 21 steps
Copy link- 1
Open Panels & Corporate from the sidebar to manage payers.
- 2
Use the top tabs to filter payer types: All, Insurance, Panel, TPA, Corporate, or Government.
- 3
Use the search box to find a payer by name, contact person, TIN, BRN, phone, email, or claims email.
- 4
Use the active filter to show active payers, inactive payers, or all payers.
- 5
Click Add Payer to create a new payer.
- 6
Choose the payer type: Insurance, Panel, Corporate / Employer, Government, or TPA.
- 7
Fill in Basic Info such as payer name, payer type, and active/inactive status.
- 8
Fill in e-Invoice / Tax details such as TIN, BRN, and SST registration number where applicable.
- 9
For corporate payers, BRN / registration number is required.
- 10
Add contact details such as contact person, phone, general email, claims email, and claim reference prefix.
- 11
Add the payer address for billing and e-Invoice purposes.
- 12
Set Billing Defaults such as billing cycle, payment terms, and credit limit.
- 13
For insurance, panel, and TPA payers, configure coverage mode such as no split, fixed copay, or percentage copay.
- 14
For corporate and government payers, the system treats billing as company/agency billing and hides patient-style copay fields.
- 15
Assign a Pricing Scheme or Rate Card if the payer follows a standard contract price list.
- 16
Open a payer row to view details, covered patient count, pricing rule count, billing information, and assigned scheme.
- 17
Use the Pricing tab inside a payer to add payer-specific pricing rules. These rules override inherited scheme rules.
- 18
Use Bulk Pricing to quickly set many item prices for that payer.
- 19
Use the Coverage tab to view or manage patients linked to that payer, where supported.
- 20
Use Deactivate if the payer is no longer used. Deactivated payers are kept for history instead of being deleted.
- 21
Use Schemes to create reusable pricing/rate cards that can be assigned to multiple payers.
- A payer means any third party that may pay for a patient's bill, such as an insurer, panel company, employer, government agency, or TPA.
- Corporate payers are usually employers or companies that pay for their staff's treatment.
- Panel payers are companies or organisations that have agreed billing arrangements with the clinic.
- TPA means Third Party Administrator. It manages claims or billing on behalf of insurers or employers.
- Pricing schemes act as reusable rate cards. Payer-specific pricing rules can still override the scheme.
- The module supports payer categories: insurance, panel, corporate, government, and TPA.
- The list shows payer name, scheme, payment terms, contact details, payer category, coverage mode, copay, covered patients, pricing rules, and active status.
- Corporate and government payers do not use insurance-style per-patient coverage splits in the form.
- For corporate payers, contract pricing is used when the company has agreed special prices with the clinic.
- For government payers, government rate cards can be used when the agency has fixed rates or contract prices.
- Billing cycle can be per claim, monthly, or quarterly depending on how the payer is billed.
- Payment terms are the number of days the payer is expected to take before paying the clinic.
- Credit limit is the maximum allowed outstanding amount for that payer, if the clinic wants to track it.
- Claim reference prefix helps generate consistent claim references for that payer.
- The invoice module uses these payer records when creating insurance, panel, corporate, government, or TPA invoices.
Expenses, Accounting & Tax
Track operating expenses, profit and loss, receivables, claims performance, SST and compliance-reference reporting.
The Expenses module is the clinic spending dashboard. It helps staff record, track, filter, analyse, and export clinic expenses by month, category, vendor, payment method, reference number, and receipt files. It includes monthly totals, expense trends, category breakdowns, average expense, top category, highest expense, and full expense records.
At a glance · Add an expense
- 1Add Expense
- 2Category & amount
- 3Attach receipt
Walkthrough · 16 steps
Copy link- 1
Open Expenses from the sidebar to view the Expenses Dashboard.
- 2
Use the month picker at the top-right to switch between months. The totals, charts, and expense records update based on the selected month.
- 3
Check the summary cards to see Total Expenses, Records, Average, Top Category, and Highest Expense.
- 4
Use the Monthly Trend chart to see expense movement across the year.
- 5
Use the Category Breakdown chart to see where the clinic's money is going.
- 6
Use the search box to find expenses by keyword, such as vendor, notes, category, reference number, or payment details.
- 7
Use the category filter to show only one type of expense, such as salary, rent, utilities, supplies, equipment, pharmacy stock, software, insurance, cleaning, marketing, training, or misc.
- 8
Use the sort dropdown to sort expenses by newest, oldest, highest amount, lowest amount, category A-Z, or vendor A-Z.
- 9
Click Clear to reset the search, category filter, and sort order.
- 10
Click Add Expense to record a new clinic expense.
- 11
When adding an expense, choose a category, enter the amount, date, vendor or payee, payment method, reference number, and optional notes.
- 12
Attach receipt files when available. Receipts can be uploaded as PDF, JPG, or PNG files.
- 13
Save the expense after checking the details.
- 14
To edit an expense, open the expense row and choose Edit. You can change the category, amount, date, vendor, payment method, reference number, notes, and receipts.
- 15
To delete an expense, choose Delete on the expense row and confirm the deletion.
- 16
Use export buttons, if shown, to download expense data as CSV or PDF for reports, audits, or accounting.
- Expenses are tracked by branch and by month.
- The page loads dashboard totals, charts, and expense records together for the selected month.
- The system supports pagination for expense records.
- Receipt uploads help with audit, tax, and accounting records.
- Up to 10 receipt files can be attached to an expense if the page upload limit is unchanged.
- The predefined categories include Staff Salary, Doctor Salary, Rent, Utilities, Medical Supplies, Equipment, Pharmacy Stock, Maintenance, Internet & Phone, Software, Insurance, Cleaning, Marketing, Staff Training, and Miscellaneous.
- The form fields can adapt based on the selected category.
- The dashboard comparison badge shows whether spending is up, down, or unchanged compared with the comparison period.
- The category breakdown chart shows spending distribution by category.
- The monthly trend chart shows expense movement across the year.
- Expenses are part of the Finance area, together with accounting and tax features.
The Accounting module is the clinic finance reporting centre. It shows profit and loss, revenue breakdown, accounts receivable aging, e-Invoice submission status, and claims performance. It helps branch admins and finance users understand revenue, expenses, net profit, margins, unpaid invoices, claim collections, and LHDN e-Invoice issues.
At a glance · Review P&L and A/R
- 1Pick a period
- 2Profit & loss
- 3Receivables
Walkthrough · 13 steps
Copy link- 1
Open Accounting from the Finance section in the sidebar.
- 2
Use the year selector to choose the reporting year.
- 3
Use the month selector to view a specific month, or choose Full Year for annual reporting.
- 4
The branch label is read-only and follows the signed-in user's branch.
- 5
Use the P&L Summary tab to view revenue, expenses, net profit, margin percentage, monthly trend, P&L statement, and monthly breakdown.
- 6
Use the Revenue tab to view revenue by invoice type and by payment method.
- 7
Use the AR Aging tab to review unpaid or outstanding invoices grouped by age: 0–30 days, 31–60 days, 61–90 days, and 90+ days.
- 8
Click an AR aging bucket to filter the outstanding invoice table by that bucket.
- 9
Use the e-Invoice tab to view LHDN/MyInvois submission statuses such as draft, submitted, pending, valid, invalid, or error.
- 10
Click an e-Invoice status card to filter the e-Invoice table by that status.
- 11
Use the Claims tab to review claim totals by status, submitted amount, approved amount, variance, and outstanding amounts by payer.
- 12
Click a payer row in Outstanding by Payer to open the Invoices Claims tab filtered to that payer, if the user has invoice access.
- 13
Use the Export button to download accounting reports such as P&L Statement PDF, Transaction Ledger CSV, or Monthly Summary CSV.
- P&L means Profit and Loss. It compares clinic revenue against expenses to calculate net profit.
- Net Profit is calculated as revenue minus expenses.
- Margin percentage shows profit as a percentage of revenue.
- Revenue data comes from invoices.
- Expense data comes from the Expenses module.
- AR Aging means Accounts Receivable Aging. It shows invoices that are still unpaid or outstanding.
- Older AR buckets such as 61–90 days and 90+ days usually need follow-up because payment is overdue.
- The e-Invoice tab helps staff find invalid or error submissions that may need correction.
- The Claims tab compares submitted and approved claim amounts, so staff can identify shortfalls or outstanding payer balances.
- Accounting is branch-specific. The page uses the signed-in user's branch and does not provide branch switching.
- Accounting belongs under the Finance area together with Expenses and Tax.
The Tax module is the clinic's finance tax centre. It helps staff view SST collection, taxable sales, exempt sales, SST payable, filing periods, and Malaysian compliance reminders. It includes an SST Summary, bimonthly Filing Periods, and a Compliance Calendar for SST, CP204, and e-Invoice reference deadlines.
At a glance · Review SST
- 1Pick a period
- 2SST collected
- 3Review totals
Walkthrough · 13 steps
Copy link- 1
Open Tax from the Finance section in the sidebar.
- 2
Use the year selector to choose the tax year.
- 3
Use the month selector to view a specific month, or choose Full Year to view the whole year.
- 4
The branch label follows the signed-in user's branch.
- 5
Use the SST Summary tab to view SST Collected, SST Payable, Taxable Sales, Exempt Sales, invoice count, SST rate, and SST registration status.
- 6
Check the SST Registration banner at the top to see whether the clinic is marked as SST-registered.
- 7
If the clinic is not marked as SST-registered, click Settings from the banner to update the clinic's tax configuration.
- 8
Use the SST Configuration panel to check SST status, SST registration number, tax label, service tax rate, and effective date.
- 9
Use the Monthly SST Collected chart to compare taxable sales and SST collected across months.
- 10
Use the Monthly Breakdown table to review each month's taxable sales, SST collected, gross sales, and invoice count.
- 11
Use the Filing Periods tab to view bimonthly SST periods, taxable sales, SST collected, invoice count, filing due date, and filing status.
- 12
Use the Compliance Calendar tab to view upcoming Malaysian tax-related reminders such as SST filing, CP204 instalments, and e-Invoice reference dates.
- 13
Click Export SST CSV to download SST summary data for accounting, audit, or tax filing preparation.
- SST means Sales and Service Tax.
- SST Collected is the service tax collected from taxable invoices.
- SST Payable is the amount expected to be remitted according to the clinic's tax settings.
- Taxable Sales are invoice amounts that are subject to SST.
- Exempt Sales are invoice amounts not treated as SST-taxable.
- The SST rate, tax label, SST registration number, and effective date come from the clinic's settings.
- The Filing Periods tab groups SST by bimonthly periods such as Jan-Feb, Mar-Apr, May-Jun, Jul-Aug, Sep-Oct, and Nov-Dec.
- Filing status may show Filing Due, Due Soon, Upcoming, No SST, Scheduled, or Past depending on the due date and SST amount.
- The Compliance Calendar is for reference only and should always be verified with the clinic's accountant or tax agent.
- CP204 reminders are shown for company tax instalment reference only. Relify does not calculate the CP204 amount.
- e-Invoice reminders are shown for reference only. Actual LHDN/MyInvois requirements depend on the clinic's applicable compliance status and settings.
- The Tax module is branch-specific and follows the signed-in user's branch unless multi-branch finance viewing is supported.
- Tax belongs under the Finance area together with Expenses and Accounting.
- Relify helps organise tax-related clinic data, but it does not provide tax advice. For legal or tax compliance decisions, users should consult a licensed accountant or tax agent.
Dashboards, Analytics & Reports
Branch performance, financial and operational analytics, trends, comparisons, report drill-downs and downloadable exports.
The Dashboard is the main performance overview after signing in. Normal clinic users see the dashboard for their current branch, while super admins are automatically taken to the Super Dashboard, which provides an HQ-level overview of every clinic and branch in their clinic group. The Super Dashboard shows group-wide patients, visits, revenue, outstanding payments, subscriptions, branch health, trends, branch details, and downloadable business reports.
At a glance · Read the branch dashboard
- 1Revenue
- 2Visits
- 3Queue
Walkthrough · 38 steps
Copy link- 1
For normal clinic users, check the four cards at the top for Today's Revenue, Today's Visits, Total Patients, and Average Queue Time.
- 2
Doctors see their own revenue and visit figures where doctor-level dashboard scoping is enabled.
- 3
Use the Revenue Trend and Patient Visits charts to review branch performance. Switch between Weekly and Monthly periods using the controls above each chart.
- 4
Use Today's Appointments to review upcoming bookings. Click See more to open the full Appointments page.
- 5
Use the Medications table to review commonly used medicines and switch between This Week, This Month, and This Year.
- 6
Branch admins can use Recent Activities to review Clinical, Billing, Operations, and System activity, or open the complete Audit Logs page.
- 7
Super admins are automatically shown the Super Dashboard instead of the normal single-branch dashboard.
- 8
Use the Overview cards to check Clinics Registered, Total Patients across all branches, Revenue This Month from invoices, and Outstanding Payments from unpaid invoices across the clinic group.
- 9
Check the percentage beside each Overview card to see how clinic registrations, patients, revenue, or unpaid balances changed compared with the previous comparison period.
- 10
In Platform Health, review Active Subscriptions, the paid and trial subscription breakdown, Average Revenue per Clinic, Total Visits month-to-date, and clinics at Churn Risk.
- 11
A clinic is counted as Churn Risk when it has had no recorded activity for more than 30 days.
- 12
Use Revenue Trend to review revenue across the clinic group.
- 13
Use Patient Registrations to review how many patients were registered across the group.
- 14
For either trend chart, choose Weekly, Monthly, or Custom. When Custom is selected, choose the From and To dates to load that exact period.
- 15
Use the Branches table to compare every branch by patient count, visits month-to-date, revenue, and subscription or activity status.
- 16
Click a branch row to open its full branch detail page.
- 17
At the top of the branch detail page, review Total Patients, Visits This Month, Revenue month-to-date, and Outstanding unpaid amount for that branch.
- 18
Use Branch Details to review the clinic name, location, clinic type, timezone, creation date, and whether the branch is marked as the HQ branch.
- 19
Use Contact & Registration to review the branch phone number, email, address, SSM number, SST number, and WhatsApp number.
- 20
Use LHDN / e-Invoice to check the branch's configured MyInvois environment and TIN.
- 21
Use Subscription to check whether the branch is Paid, Trial, or Unpaid and to see the Paid Until date where available.
- 22
Use Staff to review the branch's total staff count, branch administrator, and administrator email.
- 23
Use Recent Visits to review the latest visit date, patient, visit type, and doctor for the selected branch.
- 24
Use Recent Invoices to review the latest invoice date, invoice number, patient, amount, and paid or unpaid status for the selected branch.
- 25
Click Back to Dashboard to leave the branch detail page and return to the group overview.
- 26
Open Export Reports to download group-level or branch-specific CSV reports.
- 27
Choose Invoices Detail to export invoices grouped by branch, including payment and LHDN e-Invoice information.
- 28
Choose Visits Detail to export visits with clinical information such as diagnoses, medications, vitals, and linked invoice information.
- 29
Choose Patients to export the patient master list grouped by branch.
- 30
Choose Receivables (A/R) Aging to export unpaid invoices grouped into 0–30, 31–60, 61–90, and over-90-day age buckets.
- 31
Choose Revenue Leakage to compare visit activity, invoice conversion, collections, and estimated missed revenue.
- 32
Choose Branch Performance Snapshot to compare branch visits, invoices, paid revenue, and collection rates.
- 33
Choose Patient Retention to compare new and returning patients and calculate retention performance by branch.
- 34
Set the From and To dates for the report. Report dates use Malaysia Time where stated.
- 35
Select one or more branches to export only those branches. Leave the branch selection unrestricted when the report should cover the whole clinic group.
- 36
For invoice reports, use the Payment Status filter to export the required invoice status.
- 37
For visit reports, use Visit Type and Has Invoice filters to narrow the exported records.
- 38
Click Download CSV to generate and download the selected report.
- The normal Dashboard is branch-specific. The Super Dashboard is group-wide and is intended for super admins or HQ management.
- Super Dashboard access should not be given to normal doctors, nurses, receptionists, pharmacists, or branch admins unless the platform's permission rules explicitly allow it.
- Super Dashboard data is restricted to branches belonging to the signed-in super admin's clinic group.
- The Super Dashboard automatically refreshes its overview and trend data approximately every 10 seconds while the page is open.
- Revenue this month and branch revenue month-to-date are calculated from invoice data.
- Outstanding Payments represents unpaid invoice balances across the relevant branches.
- Average Revenue per Clinic is the current month's group revenue divided across clinics according to the dashboard calculation.
- MTD means month-to-date.
- A/R means Accounts Receivable. A/R Aging helps identify unpaid invoices that have remained outstanding for longer periods.
- A positive unpaid-balance growth is displayed as an unfavourable increase, while a reduction in unpaid balances is displayed as favourable.
- Branch status is based on subscription state: paid is shown as Active, trial is shown as Trial, and unpaid is shown as Inactive.
- The HQ badge identifies the clinic group's main or headquarters branch.
- Currency values use the branch or clinic group's configured currency symbol, with RM used as the fallback.
- The branch detail screen is primarily for viewing performance and setup information. It is not the page for editing clinic settings or creating a branch.
- To edit a branch's clinic, tax, branding, or integration settings, use System Setup.
- To create a new branch, use Billing. Manage Users can then be used to review the branch network and manage its administrator and staff.
- The Patients report filters by the patient's created date when a date range is supplied.
- For A/R Aging, the To date is treated as the report's as-of date.
- Revenue Leakage uses the selected date range and branch filter to compare visits, invoices, and collections.
- Patient Retention uses visit activity in the selected period to classify patients as new or returning.
- Dashboard figures depend on saved visits, invoices, patients, subscription records, and branch configuration. Missing or incomplete records can affect the displayed totals.
- The Dashboard and Super Dashboard are overview and reporting tools. Detailed records should be managed from their original modules, such as Patients, Invoices, EMR, Appointments, Expenses, or Manage Users.
The Insights page is the clinic analytics and reporting centre. It helps admins and authorised users understand clinic performance through analytics dashboards, reports, branch comparison, and a clinic geo map. It shows financial performance, patient activity, visit trends, doctor performance, payer mix, average visit duration, branch-level performance, and downloadable reports.
At a glance · Open a report and export
- 1Choose a report
- 2Filter
- 3Export
Walkthrough · 20 steps
Copy link- 1
Open Insights from the sidebar to view the Analytics page.
- 2
Use the top tabs to switch between Analytics, Reports, and Geo Map.
- 3
In Analytics, use the branch selector to choose the branch you want to review.
- 4
Use the year selector to change the reporting year.
- 5
Use the Weekly, Monthly, and Yearly toggle to change the analytics period.
- 6
Check the four top cards for Expenses, Revenue, Net Profit, and Per Patient value, including their change compared with the previous period.
- 7
Use the Financial Trend chart to review net profit movement for the selected branch, year, and period.
- 8
Use Top Performing Doctors to see which doctors are contributing the most activity or performance.
- 9
Use Payer Mix to see how paid invoices are distributed across payer types such as cash, insurance, panel, corporate, government, TPA, or reimbursement.
- 10
Use Avg. Visit Duration to understand consultation or visit time trends.
- 11
Use Visit Trend to review patient visit volume over time.
- 12
Click Compare to compare two branches side by side. Choose two different branches and apply the comparison.
- 13
Use Exit Comparison to return to the normal single-branch analytics view.
- 14
Open the Reports tab to view downloadable and previewable clinic reports.
- 15
Use report category filters such as Financial, Clinical, Operational, and Inventory to find the right report faster.
- 16
Click a report card to open its detail view. The detail view can show stat pills, a chart, and a detailed table.
- 17
Use the period buttons inside reports to switch between Monthly, Yearly, or Custom date ranges where supported.
- 18
Use CSV, PDF, or ZIP export buttons where available to download report data.
- 19
Use the Geo Map tab to view clinic or branch locations on a map and compare branch summary metrics.
- 20
In Geo Map, use the Clinic Summary table to compare branch, state, visits, patients, average visit duration, revenue, and top doctor.
- Analytics figures are branch-specific and depend on the selected branch, year, and period.
- The branch selector is especially useful for super admins or multi-branch clinic groups.
- If no branch exists yet, the page shows a no-branch message instead of analytics.
- Weekly means the recent weekly performance view, Monthly means the selected/current month view, and Yearly means the full-year trend view.
- Revenue values come mainly from invoice data.
- Expense values come from the Expenses module.
- Net Profit is calculated from revenue minus expenses.
- Per Patient usually means average revenue or value per patient for the selected period.
- Payer Mix is based on paid invoices and helps show how much revenue comes from each payer type.
- Average Visit Duration depends on visit or EMR timing data recorded in the system.
- Top Performing Doctors depends on visit, revenue, or performance data available for the selected period.
- Compare mode requires two different branches.
- Reports may include financial reports, revenue breakdowns, expense reports, patient activity, EMR visit reports, diagnosis and ICD reports, queue summaries, patient invoices, prescriptions, investigations, inventory reports, patient backups, patient files ZIP exports, and staff incentive reports, depending on what is enabled.
- Some advanced reports require a date range before export.
- Large ZIP exports may take longer and may have limits, such as a maximum number of files per download.
- The Geo Map uses branch location data. If a branch does not have location/state data, it may not show properly or may appear incomplete.
- Insights and Reports are mainly for admins, branch admins, finance users, or users with analytics/report permissions.
Setup, Users, Migration & Audit
Configure the clinic, add staff, manage permissions, migrate existing data, review logs and maintain account details.
The System Setup page is the main configuration centre for the clinic. It controls clinic identity, branch details, tax and SST settings, LHDN MyInvois e-Invoice integration, PDF templates, MC templates, note templates, lab templates, message templates, appointment colors, online booking rules, patient discount schemes, and branch-level workflow settings.
At a glance · Configure clinic settings
- 1Clinic details
- 2Hours & services
- 3Save settings
Walkthrough · 15 steps
Copy link- 1
Open System Setup from the sidebar.
- 2
Use the setup cards to choose what you want to configure.
- 3
Click Clinic Info to update clinic name, phone number, email, Google review link, review request message, clinic address, currency symbol, SSM number, SST number, invoice tax settings, and branding.
- 4
Click Patient Discounts to create and manage discount schemes such as clan, staff, gold-card, family, or membership discount tiers.
- 5
Click Clinic Branches to view or manage branch details. This card is for super admins only.
- 6
Click PDF Templates to configure document layouts such as invoices, MCs, and reports.
- 7
Click MC Templates to manage medical certificate scenario sentences such as fever, COVID, rest, or other common MC wording.
- 8
Click Note Templates to manage structured consultation note layouts used in EMR.
- 9
Click Lab Templates to configure lab test fields used when entering lab results.
- 10
Click Message Templates to edit WhatsApp or message templates such as birthday wishes, appointment reminders, restock alerts, and follow-up reminders.
- 11
Click Appointment Colors to add, rename, recolour, or remove appointment/visit types. This is where visit types used across the appointment calendar and EMR are managed.
- 12
Click Online Booking to configure booking hours, rules, appointment types, unavailable dates, and closed dates.
- 13
Click API Integrations to configure LHDN MyInvois e-Invoice integration.
- 14
Inside a setup section, click Edit to unlock fields, make changes, then click Save.
- 15
Use All settings or the back button to return to the main System Setup hub.
- System Setup is for clinic configuration, not personal user profile editing.
- My Profile is used to update the signed-in user's own account details.
- Manage Users is used to create staff, reset staff passwords, deactivate users, and manage permissions.
- Clinic Info affects invoices, e-Invoices, reports, receipts, branding, Google review messages, and branch identity.
- SST settings are branch-level and control how service tax appears on invoices.
- If SST Registered is turned off, no SST is charged.
- If SST Registered is turned on, tax applies based on the clinic's configured tax rules.
- Patient Discounts affect invoice pricing when a patient's discount scheme is applied.
- Lab Templates affect which result fields appear when entering lab results in the Laboratory page.
- Note Templates affect structured EMR consultation note layouts.
- Message Templates affect automated or reusable patient messages such as reminders and wishes.
- Online Booking settings affect what patients can book from the public booking page.
- Appointment Colors is where appointment/visit types are added, edited, recoloured, or removed. These types appear across the appointment calendar and when booking visits.
- LHDN MyInvois settings are used for Malaysian e-Invoice submission and testing.
- Clinic Branches is only shown to super admins.
- Some settings are branch-specific, so super admins must make sure the correct branch is selected or active.
- If a user cannot access System Setup, their role or permissions may not allow settings access.
The Manage Users page is used by branch admins to add, view, edit, activate/deactivate, reset passwords, and manage permissions for clinic staff. For super admins, the same page becomes the Branch Network view, showing all registered branches, active branches, total staff, branch administrators, branch details, recent visits, recent invoices, and branch status.
At a glance · Add staff and permissions
- 1Add staff
- 2Assign a role
- 3Set permissions
Walkthrough · 19 steps
Copy link- 1
Open Manage Users from the sidebar.
- 2
Branch admins see the normal Manage Users table for their branch staff.
- 3
Use the search box to find a staff member by name, username, email, role, or branch-related details.
- 4
Click Add User to create a new staff account.
- 5
When adding a user, fill in first name, last name, email, username, password, and role.
- 6
Choose the correct staff role such as Doctor, Locum Doctor, Nurse, Receptionist, or Pharmacist.
- 7
Use the three-dot action menu on a user row to open actions such as view, edit, manage permissions, reset password, deactivate, or reactivate.
- 8
Use View to open the user's full profile/details.
- 9
Use Edit to update the user's account details.
- 10
Use Manage Permissions to control which modules the user can access.
- 11
Use Reset Password to set a new password for the user. The new password must be at least 8 characters.
- 12
Use Deactivate to disable a user without deleting their record.
- 13
Use Reactivate to restore access for an inactive user.
- 14
Super admins see Branch Network instead of the normal staff table.
- 15
In Branch Network, check Total Branches, Active Branches, and Total Staff at the top.
- 16
Use the branch search box to find branches or branch administrators.
- 17
Click a branch card to open the branch detail view.
- 18
In branch detail view, review clinic details, contact details, branch administrator information, total patients, visits month-to-date, revenue month-to-date, outstanding amount, recent visits, and recent invoices.
- 19
For super admins, Add Branch sends the user to Billing because branches are created from the Billing page first.
- Only branch admins and super admins can access Manage Users.
- If a normal staff user tries to open Manage Users, access is denied.
- Branch admins manage staff within their own branch.
- Super admins manage the clinic group's branch network and branch administrators.
- A branch admin cannot create another branch admin from the normal Add User form.
- Creating a new branch is not done directly from Manage Users. Super admins should create the branch from Billing first.
- Deactivating a user disables their access but keeps their record for history.
- Reactivating a user restores access.
- If the user is a branch admin, deactivating or reactivating a branch admin may affect the branch status and staff access.
- The Permissions modal controls access to modules such as Dashboard, Queue, Patients, Appointments, EMR, Pharmacy, Invoices, Inventory, Expenses, Accounting, Tax, Panels, Insights, Lab, Manage Users, Logs, Settings, and related features.
- Some permissions may be blocked depending on the user's role. If a permission is blocked, the system shows a warning.
- Doctor labels can change depending on clinic type. For example, GP clinics use Doctor, physiotherapy clinics use Physiotherapist, dental clinics use Dentist, optometry clinics use Optometrist, and chiropractic clinics use Chiropractor.
- Use Manage Users when someone cannot access a page because their role or module permissions may need to be updated.
- Use Reset Password when a staff member forgets their password or needs a new login password.
- Use Billing, not Manage Users, when the question is about creating a new branch.
The My Profile page is where the signed-in user views and updates their own account, personal details, employment details, security settings, profile picture, and role-specific credentials. It is different from Manage Users: My Profile is for the current user's own profile, while Manage Users is for admins managing other staff accounts.
At a glance · Update My Profile
- 1Edit profile
- 2Update password
- 3Save
Walkthrough · 13 steps
Copy link- 1
Open My Profile or User/Profile from the sidebar or profile menu.
- 2
At the top, check the profile photo, full name, username, role, email, and branch.
- 3
Click the profile picture or edit badge to upload a new profile photo.
- 4
Use the Personal tab to view or edit name, email, username, phone, date of birth, gender, nationality, IC or passport details, address, and emergency contact details.
- 5
Click Edit in a section to unlock the fields.
- 6
Click Save to store the updated details, or Cancel to discard changes.
- 7
Use the Employment tab to view or update work-related details such as position title, employment type, join date, staff code, and shift where available.
- 8
Use the Security tab to change your password.
- 9
When changing a password, enter a new password that meets the password requirements, then complete verification if the system asks for a code.
- 10
Doctors can use the Doctor tab to manage doctor-specific credentials such as MMC number, APC number, APC expiry, NSR number, specialties, bio, and signature.
- 11
Doctors can draw and save a signature used on prescriptions and lab result PDFs.
- 12
Pharmacists, where enabled, can manage pharmacist-specific credentials such as pharmacy registration number, Poison A licence number, licence expiry, credential notes, and credential status.
- 13
Patient users see a simplified profile view with patient details such as full name, email, phone, gender, date of birth, and address.
- My Profile is for the current signed-in user's own details only.
- Manage Users is the correct page for branch admins or super admins to create staff, reset staff passwords, or change staff permissions.
- A user can usually edit their own personal/account fields, but cannot change their own role or branch from this page.
- Role labels include Doctor, Nurse, Pharmacist, Receptionist, Clinic Administrator, Super Admin, and Patient.
- The page fetches the latest user profile from the server before showing the profile details.
- The profile photo can be uploaded and is also synced to topbar/sidebar profile images.
- If no uploaded photo exists, the system can show an initials/avatar fallback.
- Username changes may require verification before saving.
- Password changes may require a 6-digit verification code.
- Doctor signature is used on clinical documents such as prescriptions and lab result PDFs.
- Patient users do not see the same staff-only fields as clinic staff.
- If the profile cannot load, the user may need to log in again.
The Data Migration page is used by branch admins to import and export clinic data. It helps clinics move existing records into Relify using CSV templates for suppliers, inventory, patients, appointments, and insurance or panel companies. It also includes an export area for generating backup/export files.
At a glance · Import clinic data
- 1Download template
- 2Validate CSV
- 3Upload
Walkthrough · 17 steps
Copy link- 1
Open Data Migration from the sidebar.
- 2
Only Branch Admins can access this page.
- 3
Use the Import tab to upload clinic data using CSV files.
- 4
Click Template on a card to download the correct CSV template for that data type.
- 5
Click Download all templates to download all available CSV templates.
- 6
Fill in the CSV template using the required column names.
- 7
Drag and drop the completed CSV file into the correct card, or click browse to select the file.
- 8
After selecting a CSV file, preview the rows shown under the upload card.
- 9
Click Validate to check whether the uploaded CSV has the required columns.
- 10
If validation passes, click Upload to import the data.
- 11
If validation fails, fix the missing columns in the CSV and upload again.
- 12
Use Reset to clear a selected file and start again.
- 13
Import Suppliers before Inventory for best results.
- 14
When importing Inventory, supplier names should exactly match supplier names already imported.
- 15
Use the Export tab when you need to export or back up clinic data.
- 16
For SQL export, click the export button and wait while the system generates the export file.
- 17
When the export is ready, use the download link provided by the page.
- Data Migration is designed for onboarding clinics or moving data from an old system into Relify.
- CSV files must use the Relify template format. There is no manual column mapping on this page.
- Each CSV file must be 10 MB or smaller.
- The supported import types are Suppliers, Inventory, Patients, Appointments, and Insurance & Panels.
- Supplier import should be done before Inventory import.
- If inventory supplier names do not exactly match existing suppliers, the system may create new supplier entries.
- Inventory import includes stock, prices, supplier, expiry date, location, and notes.
- Patient import includes demographics, IC/passport details, contact details, allergies, chronic conditions, and emergency contact details.
- Appointment import uses patient IC/passport, date, start time, end time, visit type, doctor email, status, notes, and timezone.
- Insurance & Panels import is used for insurers, panel companies, corporate payers, or third-party payer records.
- During upload, the modal shows upload progress, speed, ETA, processing status, and completion status.
- After upload, the system reports how many rows were created, updated, or skipped.
- Some rows may be skipped if they contain invalid or incomplete data.
- Migration is branch-specific and should be used carefully because imported data affects the clinic's live records.
- If a user is not a Branch Admin, the page shows an access restricted message.
The Audit Logs page is used to monitor system activity across the clinic. It records important actions made by users, such as creating, updating, deleting, restocking, changing statuses, uploading files, generating PDFs, sending external lab requests, and other tracked events. Admins can review who performed an action, what was changed, when it happened, and the before/after details where available.
At a glance · Investigate a change
- 1Find the record
- 2See who changed it
- 3Before & after
Walkthrough · 20 steps
Copy link- 1
Open Logs or Audit Logs from the sidebar.
- 2
Use the top summary cards to see Total Logs, Creates, Updates, and Deletes for the current filtered view.
- 3
Check the Activity over time chart to see log activity by day for the last 14 days.
- 4
Use the Filters button to show advanced filters.
- 5
Filter logs by Action, Date From, Date To, and User.
- 6
Use the month picker to view logs from a specific month.
- 7
Use the search box to search log user names, action names, entity types, summaries, or log details.
- 8
Click Apply filters to update the table based on selected filters.
- 9
Click Reset to clear filters and return to the broader log list.
- 10
Click Refresh to reload the latest logs from the server.
- 11
Click Download to export the currently filtered logs as a CSV file.
- 12
Use the rows-per-page selector to control how many logs appear per page.
- 13
Use pagination at the bottom to move between log pages.
- 14
In the table, review the User, Entity ID, Action, Type, Summary, Environment, and Timestamp.
- 15
Click the expand arrow on a log row to view detailed information.
- 16
For update logs, the expanded details can show before-and-after values and changed fields.
- 17
For stock or inventory-related logs, quantity changes may show as quantity deltas.
- 18
For create logs, the details may show the newly created item snapshot.
- 19
For delete logs, the details may show the deleted record snapshot.
- 20
For status changes, the details show the old status and new status.
- Audit Logs are mainly for accountability, troubleshooting, and tracking what changed in the system.
- Logs help answer questions like who changed something, when it was changed, and what values changed.
- Only users with Logs permission should be able to access this page.
- The page loads up to 1000 log records from the backend for filtering and display.
- The table can show different action types such as create, update, delete, accept, status_change, generate_result_pdf, generate_request_pdf, restock, upload_files, portal_upload, portal_link_created, send, deactivate, reactivate, bind_visit, and seen.
- Expandable details are more useful when the backend captured before, after, changed, or snapshot data.
- If no snapshot data was captured, the detail view may show that no additional details are available.
- The Download button exports the filtered logs currently shown by the page, not necessarily every log in the database.
- Environment shows where the action happened, such as production or another configured environment.
- Logs are useful when investigating mistakes, access issues, deleted records, stock changes, invoice edits, lab result actions, and user or branch changes.
- If a user asks why something changed or disappeared, Logs is the correct place to investigate.
HQ & Multi-branch Management
Read-only group-wide dashboards and detailed finance, operations and clinical analytics across clinic-group branches.
The HQ Clinical Dashboard is the read-only group-wide clinical overview for HQ Clinical users. It summarises consultations, patients seen, active doctors, appointment-to-EMR conversion, clinical activity, ICD coding, documentation completeness, medication and laboratory workflow, EMR drafts, appointments, workflow alerts, and branch-level clinical performance across the clinic group.
At a glance · Review HQ Clinical dashboard
- 1All branches
- 2Visits & diagnoses
- 3Compare
Walkthrough · 37 steps
Copy link- 1
Open Dashboard from the HQ Clinical sidebar to view the group-wide clinical overview.
- 2
Use Branch Scope at the top of the dashboard to include all branches, one branch, or several selected branches.
- 3
Open Branch Scope, tick or untick branches, and click Apply Selection to reload the dashboard using that branch selection.
- 4
Click Select All inside Branch Scope to restore every operating branch in the clinic group.
- 5
Use Week, Month, Quarter, or Year to change the dashboard reporting period.
- 6
Month is selected when the HQ Clinical Dashboard first loads.
- 7
Dashboard comparison figures show changes against the previous equivalent period.
- 8
Check Consultations to see the number of saved clinical consultations during the selected period.
- 9
Check Patients Seen to see the number of unique patients with saved visits during the selected period.
- 10
The Patients Seen card also shows the available new-patient and returning-patient breakdown.
- 11
Check Doctors With Visits to see how many doctors recorded saved consultations during the selected period.
- 12
Check Appointment to EMR to see the percentage and number of appointments linked to saved EMR visits.
- 13
Use Clinical Activity to review consultations, unique patients, diagnoses, medications, and laboratory orders over time.
- 14
Switch Clinical Activity between Line and Bar using the controls in the chart header.
- 15
Hover over the Clinical Activity chart to inspect values for a specific date or period.
- 16
Use ICD Coding to review the aggregate distribution of ICD-10 diagnoses, ICD-11 diagnoses, uncoded diagnoses, and coded diagnoses with a missing or invalid ICD version.
- 17
The ICD Coding card also displays the overall coding-completeness percentage for the selected period and branch scope.
- 18
Use Documentation Completeness to review diagnosis, ICD-coded visit, vitals, visit reason, impression, medication, service, allergy, and chronic-condition documentation rates.
- 19
Documentation Completeness is displayed as a horizontal percentage chart from zero to one hundred percent.
- 20
Use Clinical Workflow to review medication dispensing, laboratory orders, active EMR drafts, and appointment workflow.
- 21
Medication Dispensing shows dispensed and substituted records together with the number of prescriptions still pending.
- 22
Laboratory Orders shows completed and pending orders together with results awaiting review.
- 23
Active EMR Drafts shows how many drafts are stale according to the configured stale-draft threshold.
- 24
Appointments shows no-shows, cancellations, and the appointment-to-EMR conversion rate.
- 25
Use Attention Needed to review administrative and documentation workflow signals generated for the current period and branch scope.
- 26
Each alert shows its severity, title, supporting detail, and relevant value.
- 27
When no workflow alerts are present, the dashboard displays No workflow alerts for this period.
- 28
Use Branch Clinical Overview to compare clinical activity and workflow indicators across the selected branches.
- 29
The branch table shows consultations, patients, doctors, diagnosis documentation, ICD coding, vitals documentation, pending dispensing, laboratory results awaiting review, appointment-to-EMR conversion, and stale EMR drafts.
- 30
Branches are displayed with a numbered rank based on the order returned by the clinical dashboard report.
- 31
Documentation and conversion percentages are shown with status indicators to make lower or higher completion rates easier to identify.
- 32
Pending dispensing, laboratory-review backlog, and stale drafts are highlighted when their values are greater than zero.
- 33
Click a branch row to open that branch in HQ Clinical Insights for more detailed analysis.
- 34
When a branch is opened from the dashboard, the selected branch is carried into HQ Clinical Insights automatically.
- 35
Changing the reporting period or applying a new branch selection reloads the dashboard data.
- 36
The dashboard loads its headline information and trend series together before rendering the completed overview.
- 37
If the dashboard cannot load, retry the page. Persistent loading problems should be reported to support@relify.com.my.
- The HQ Clinical Dashboard is available only to the hq_clinical role when the clinic group's plan includes the hq_clinical feature.
- HQ Clinical accounts are read-only and cannot modify branch clinical or operational records.
- The dashboard is group-scoped and only includes branches belonging to the signed-in HQ Clinical user's clinic group.
- The branch selector supports multiple branches. At least one branch must remain selected.
- The dashboard uses aggregate clinical figures and does not display patient identities, consultation notes, laboratory results, or other individual clinical record content.
- Consultations refer to saved EMR visits. Active EMR drafts are reported separately and are not treated as completed consultations.
- Patients Seen refers to unique patients represented in the selected saved consultations.
- Doctors With Visits includes doctors who have saved visits in the selected scope and period.
- Appointment-to-EMR conversion means that an appointment was connected to a saved EMR visit.
- Documentation percentages are workflow-completion indicators only. They are not measures of doctor competence, clinical quality, patient safety, negligence, or legal compliance.
- ICD Coding reports the ICD version stored with each diagnosis. Records without a recognised stored version can appear under Version Missing.
- Attention Needed contains administrative and documentation signals. An alert does not by itself prove poor clinical care or non-compliance.
- A stale EMR draft is determined using the stale-after-hours value returned by the HQ Clinical dashboard API.
- Positive consultation, patient, or doctor changes indicate an increase from the previous equivalent period. They do not automatically represent an improvement in clinical quality.
- The Branch Clinical Overview is intended for comparison and prioritisation. Detailed investigation should continue in HQ Clinical Insights.
- Clicking a branch does not open an ordinary branch patient or EMR page. It opens the aggregate HQ Clinical Insights page with that branch selected.
- Dashboard results depend on properly saved visits, diagnoses, medications, laboratory orders, appointments, services, structured conditions, and EMR drafts.
- Missing or incomplete source records can affect dashboard totals and documentation rates.
HQ Clinical Insights is the read-only, group-wide clinical analytics centre for HQ Clinical users. It compares aggregate clinical activity across the clinic group's branches without opening ordinary branch patient or EMR pages. It covers saved consultations, patients, doctors, clinical documentation, ICD coding, medicines, dispensing, laboratory workflow, appointments, services, structured conditions, demographics, EMR drafts, workflow alerts, branch drill-downs, doctor drill-downs, and downloadable XLSX reports.
At a glance · Drill into clinical insights
- 1Pick a measure
- 2Drill into a branch
- 3Find the cause
Walkthrough · 45 steps
Copy link- 1
Open Clinical Insights from the HQ Clinical sidebar.
- 2
Use Week, Month, Quarter, Year, or Custom at the top of the page to choose the reporting period.
- 3
When Custom is selected, choose the From and To dates. The insights reload after a valid date range is selected.
- 4
Use Previous to compare the selected period with the immediately preceding period, or use YoY to compare it with the matching period from the previous year.
- 5
Use Branch Scope to analyse all operating branches, one branch, or several selected branches. Search the branch list when the clinic group has many branches.
- 6
Use the tabs to switch between Overview, Documentation, Diagnoses, Medicines, Labs, Appointments, Doctors, and Care Mix.
- 7
In Overview, check Saved Consultations, Unique Patients, Active Doctors, ICD Coding, Prescriptions, and Appointment to EMR conversion.
- 8
Unique Patients includes the available new-patient and returning-patient breakdown for the selected scope and period.
- 9
Use Clinical Activity to compare visits, patients, appointments, no-shows, and laboratory order activity over time.
- 10
Use Visits by Branch to identify branches with the highest saved consultation volume.
- 11
Review Attention Needed for administrative or documentation workflow signals that may require follow-up.
- 12
Use Branch Overview to compare visits, patients, doctors, visits per patient, diagnosis documentation, ICD coding, prescriptions, pending prescriptions, laboratory orders, results awaiting review, appointments, no-show rate, and appointment-to-EMR conversion across branches.
- 13
In Documentation, review diagnosis documentation, coded-visit rate, ICD coding completeness, vitals, visit reason, impression, visit summary, allergy documentation, and chronic-condition documentation.
- 14
Use Documentation by Branch to compare documentation-process completion rates across the selected branches.
- 15
Use Drafts by Branch to compare active EMR drafts, stale drafts, and the number of users with active drafts.
- 16
In Diagnoses, review the total diagnosis records, coded diagnoses, coding completeness, diagnosed visits, and coded-visit rate.
- 17
Use Code Detail to review aggregate ICD code activity, including the saved ICD version, diagnosis count, linked visit count, and distinct-patient count.
- 18
Use Coding by Branch to compare diagnosis records and coding completeness across branches.
- 19
In Medicines, review prescription volume, linked visits, prescribed quantity, pending records, dispensed or completed records, and medication completion rate.
- 20
Use Medicine Detail to review the medicines with the highest aggregate prescription volume in the selected scope.
- 21
Use Dispensing by Branch to compare dispense records, pending and completed actions, average dispensing time, inventory dispense movements, and units moved.
- 22
In Labs, review laboratory orders, completed and pending orders, results awaiting review, completion rate, and average turnaround time.
- 23
Use Test Detail to compare aggregate test orders, patients, completed orders, and completion rate by test.
- 24
Use Labs by Branch to compare order volume, pending workload, review backlog, completion, and turnaround across branches.
- 25
In Appointments, review appointment totals, completed appointments, no-shows, cancellations, online bookings, appointments converted to saved EMR visits, and conversion rate.
- 26
Use the appointment charts to review outcomes, appointment categories, and booking sources.
- 27
Use Appointment Flow by Branch to compare no-show and appointment-to-EMR conversion performance across branches.
- 28
In Doctors, review aggregate doctor coverage, saved consultations, patients, branches worked, diagnosis documentation, coding, vitals, prescriptions, services, and laboratory orders.
- 29
Use Consultations by Doctor to compare saved consultation volume across doctors.
- 30
Search the Doctor Overview table and click a doctor to open aggregate doctor detail.
- 31
Doctor detail shows saved visits, patients, branches, documentation-process rates, care activity, an activity trend, top ICD codes, top medicines, and top laboratory tests.
- 32
Click Download Doctor Workbook from doctor detail to export that doctor's aggregate report.
- 33
In Care Mix, review services, structured allergy and chronic-condition documentation, and privacy-safe age and gender aggregates.
- 34
Use Service Detail to review aggregate service records, quantity, linked visits, and branch coverage.
- 35
Use Structured Conditions to review aggregate allergy and chronic-condition activity without opening individual patient records.
- 36
Click Explore on a supported chart to open the Branch Explorer for that subject.
- 37
In Branch Explorer, search branches, sort by the available metric, compare branch rows, and click a branch to open its aggregate detail.
- 38
Branch detail shows visits, patients, doctors, coding, prescriptions, laboratory review backlog, appointment conversion, documentation rates, medication completion, laboratory completion, no-show rate, drafts, services, and dispensing activity.
- 39
Click Focus This Branch to apply that branch as the main Clinical Insights scope.
- 40
Click Download Branch Workbook to export the selected branch's aggregate clinical report.
- 41
Click Reports to open the XLSX report centre.
- 42
Click Download Full Workbook to export the full aggregate clinical report for the currently selected period and branch scope.
- 43
Choose a detail branch before downloading an individual dataset workbook.
- 44
Individual report datasets include Overview, Branches, Documentation, Diagnoses, Medications, Pharmacy, Laboratories, Appointments, Doctors, Services, Conditions, Demographics, EMR Drafts, and Workflow Alerts.
- 45
While an export is being generated, the download button shows Preparing and remains disabled until the download succeeds or fails.
- HQ Clinical Insights is only for users whose role is hq_clinical and whose clinic-group plan includes the hq_clinical feature.
- HQ Clinical accounts are read-only. They can analyse group-wide aggregates but cannot modify branch patients, visits, appointments, medicines, laboratory orders, or other operational data.
- The page uses aggregate clinical analytics. It is not an ordinary patient lookup, patient profile, or EMR consultation page.
- The report centre does not expose patient identities, consultation notes, laboratory result content, or EMR draft content.
- Saved consultations refer to completed EMR visit records. Active drafts are reported separately and are not counted as completed consultations.
- Documentation percentages are workflow-completion indicators. They are not measures of doctor competence, clinical quality, patient safety, negligence, or legal compliance.
- Attention Needed contains administrative signals for review. An alert does not itself prove poor care, negligence, or non-compliance.
- Doctor analytics describe workload and documentation workflow. They must not be treated as clinical-quality rankings.
- ICD analytics use the ICD version and code saved with the diagnosis. ICD chapters are not inferred when they were not stored.
- Low-frequency sensitive categories may be suppressed or combined when they do not meet the configured minimum clinical cohort.
- Privacy-safe demographic reporting combines small cells where required. Race, nationality, and identity fields are excluded from the demographic analytics.
- Laboratory analytics show workflow information such as orders, status, review backlog, completion, and turnaround. They do not show laboratory result values or result content.
- Appointment to EMR conversion means an appointment was connected to a saved EMR visit.
- Results depend on properly saved visits, diagnoses, prescriptions, dispensing actions, laboratory orders, appointments, services, structured conditions, and branch configuration.
- The selected period, comparison mode, and branch scope apply throughout the main tabs, branch explorer, doctor detail, and report exports.
- The full workbook follows the current multi-branch scope. Individual dataset workbooks require one detail branch to be selected.
- HQ Clinical Insights excludes normal branch-operational actions. Changes must be completed by authorised branch users from the original operational module.
The HQ Operations Dashboard is the read-only, group-wide operational overview for HQ Operations users. It summarises stock value, queue activity, completed patient flow, average waiting time, appointments, no-show rate, operational alerts, inventory risks, and flow indicators across the clinic group's branches. It also provides a shortcut to the more detailed HQ Operations Insights workspace.
At a glance · Review HQ Operations dashboard
- 1Queues
- 2Appointments
- 3Stock
Walkthrough · 23 steps
Copy link- 1
Open Dashboard from the HQ Operations sidebar to view the clinic group's operational overview.
- 2
Use Week, Month, Quarter, or Year at the top-right to change the reporting period.
- 3
Month is selected when the HQ Operations Dashboard first opens.
- 4
The date or reporting range currently being shown appears beneath the page description.
- 5
The dashboard header also shows how many branches are included in the group-wide overview.
- 6
Check Stock Value to see the estimated value of inventory currently on hand across the clinic group.
- 7
Check Patients Seen to review the total queue activity and how many queue entries were completed during the selected period.
- 8
Check Average Wait to review the average time from joining the queue until the patient was called.
- 9
Check Appointments to review the total number of appointments and the no-show rate for the selected period.
- 10
Use Needs Attention to review operational issues or signals that may require follow-up.
- 11
Each attention card shows the issue title, supporting detail, value, severity, and the affected branch or group scope.
- 12
When no operational issues are detected, the dashboard displays Nothing needs attention this period.
- 13
Use Operations Snapshot to review current inventory health and patient-flow indicators.
- 14
The Inventory side shows group stock value, low-stock items, out-of-stock items, batches expiring soon, and expired batches.
- 15
The Flow and Appointments side shows patients seen, completed queue entries, average waiting time, appointment volume, and no-show rate.
- 16
Low stock and expiring-soon values are displayed as warning indicators.
- 17
Out-of-stock and expired values are displayed as higher-attention operational risks.
- 18
Use Go Deeper to open HQ Operations Insights.
- 19
Click Operations Insights to analyse Inventory, Profitability, Suppliers, Packages, Queue and flow, and Appointments in more detail.
- 20
HQ Operations Insights provides the detailed explorers, branch comparisons, item and supplier drill-downs, transfer analysis, expiry analysis, and XLSX reports.
- 21
Changing the selected period reloads the dashboard using the new reporting period.
- 22
The dashboard displays loading placeholders while its group-wide overview is being retrieved.
- 23
If the dashboard cannot be loaded, refresh the page. Persistent errors should be reported to support@relify.com.my.
- The HQ Operations Dashboard is available only to the hq_operations role when the clinic group's plan includes the hq_operations feature.
- HQ Operations accounts are read-only and cannot change inventory, queue, appointment, transfer, supplier, package, or other branch-operational records.
- The dashboard is group-scoped and includes operational data only from branches belonging to the signed-in user's clinic group.
- The dashboard does not provide a branch selector. Use HQ Operations Insights when a specific branch or set of branches needs to be analysed.
- Stock Value is an operational estimate based on the inventory and cost data available to the dashboard.
- Missing batch costs or incomplete inventory records can affect the displayed stock value.
- Patients Seen is based on the queue records available during the selected period.
- Average Wait depends on queue and called timestamps being saved correctly.
- Appointment no-show rate depends on appointment status and no-show records being completed.
- Needs Attention contains operational review signals. An alert does not itself prove staff error, misconduct, poor care, or non-compliance.
- The dashboard is intended as a quick overview. Detailed investigation and report downloads are handled in HQ Operations Insights.
- Any required correction must be completed by an authorised branch user in the original Inventory, Queue, Appointments, or related operational module.
HQ Operations Insights is the read-only, group-wide operational analytics centre for HQ Operations users. It compares inventory health, profitability, suppliers, package pricing, queue performance, appointments, stock transfers, expiry risk, stock-take activity, and other operational workflows across the clinic group's branches. It also provides searchable explorers, branch and item drill-downs, supplier analysis, transfer-route details, and downloadable XLSX reports.
At a glance · Explore operations insights
- 1Pick a branch
- 2Compare periods
- 3Spot pressure
Walkthrough · 101 steps
Copy link- 1
Open Insights from the HQ Operations sidebar.
- 2
Use Week, Month, Quarter, Year, or Custom to choose the reporting period.
- 3
When Custom is selected, enter both the From and To dates. The report reloads once the date range is complete and valid.
- 4
Use Branch Scope to analyse all branches, one branch, or several selected branches.
- 5
Search inside the branch selector when the clinic group has many branches.
- 6
Selecting All branches removes the individual branch restriction and restores the whole clinic-group scope.
- 7
Changing the period or branch scope clears the previously loaded tab data and reloads the currently selected Operations tab.
- 8
Use the main tabs to switch between Inventory, Profitability, Suppliers, Packages, Queue & flow, and Appointments.
- 9
Inventory is the first tab loaded when HQ Operations Insights opens.
- 10
In Inventory, review Stock Value, Low Stock, Out of Stock, Expiring Soon, Expired, and Branches in Scope.
- 11
Expiring Soon counts stock batches expiring within 30 days.
- 12
Expired identifies stock that may require operational review or write-off.
- 13
Use Branch Stock to compare total items, stock value, low-stock items, out-of-stock items, expiring stock, and expired stock across branches.
- 14
Use Expiry Timeline to review expired batches and batches expiring during the next six months.
- 15
Open the Expiry Explorer to search expiry records, review expiry-risk groups, and open detailed batch information.
- 16
Use Fastest Movers to review items ranked by quantity dispensed or sold.
- 17
Fastest Movers shows quantity out, average daily movement, quantity on hand, and estimated days of stock cover.
- 18
Click an item from Fastest Movers or another supported table to open the item's full operational history.
- 19
Use Top Items by Value to identify where the highest stock value is currently held.
- 20
Open Item Explorer to search every item across the selected branches.
- 21
In Item Explorer, filter by category and subcategory and sort using the available stock, movement, cost, or value metrics.
- 22
Click an item in Item Explorer to open its full item detail page.
- 23
Item detail can include current stock, stock value, movement, cost information, price history, batch information, branch information, and stock-ledger activity.
- 24
Use Stock-take Activity to review the latest physical stock count for each branch.
- 25
The Stock-take table shows status, start and commit dates, line count, and net stock variance.
- 26
Branches without a recent stock count may be shown as requiring operational attention.
- 27
Use Stock Transfers to review inter-branch inventory movement.
- 28
The transfer summary shows the number of transfers, inventory value moved, and pending transfers.
- 29
Pending transfer alerts show the transfer ID, item, source branch, destination branch, quantity, age, and value still in transit.
- 30
Transfers pending for seven days or longer are displayed with higher attention severity.
- 31
Use the branch transfer table to compare outbound transfers, inbound transfers, outbound value, inbound value, and net transfer value.
- 32
Use Transfer Routes to review the actual branch-to-branch lanes used for stock movement.
- 33
Click a transfer route to open its full route detail.
- 34
Transfer-route detail shows total transfers, units moved, value moved, pending transfers, received transfers, and the individual transfers belonging to that route.
- 35
In Profitability, review Average Margin, Profit Potential, Stock Value, Zero or Negative Margin Items, High-Margin Items, and the number of priced items.
- 36
High Margin identifies items with a margin of at least 50 percent.
- 37
Zero or Negative Margin identifies items priced at or below their calculated inventory cost.
- 38
Use Branch Profitability to compare item count, stock value, profit potential, average margin, zero or negative margin items, and high-margin items across branches.
- 39
The profitability calculation uses batch-weighted cost rather than only the inventory item's default cost-price field.
- 40
Use Item Margins to compare quantity on hand, unit cost, selling price, profit per unit, margin percentage, and total profit potential.
- 41
The main Item Margins table shows the highest-ranked items. Open Item Explorer to search the complete item list.
- 42
Click a profitability item to open its detailed inventory ledger and pricing history.
- 43
In Suppliers, review the number of suppliers, Total Spend, Recent Spend, On-hand Value, Batches, and Items Supplied.
- 44
Total Spend represents all recorded supplier purchasing activity available to the report.
- 45
Recent Spend follows the currently selected reporting period.
- 46
Use Spend by Supplier to compare the highest supplier spend totals.
- 47
The supplier chart displays up to the top ten suppliers by recorded total spend.
- 48
Use Top Suppliers to compare total spend, recent spend, item count, batch count, average unit cost, and branches served.
- 49
Click a supplier to open its full supplier analysis.
- 50
Supplier analysis can show spend, items, batches, branch coverage, category breakdowns, price behaviour, purchases, and items linked to the supplier.
- 51
Open Supplier Explorer to search and sort every supplier in the selected scope.
- 52
In Packages, review Package Count, Average Margin, Loss-making Packages, Price Divergence, Unpriced Packages, and Active Packages.
- 53
A loss-making package has an effective selling price below its calculated component cost.
- 54
Price Divergence identifies the same package name being priced differently across branches.
- 55
Use the Price Divergence section to review minimum price, maximum price, branch count, and price spread for shared package names.
- 56
When no package divergence exists, the page confirms that shared package names are priced consistently across branches.
- 57
Use All Packages to review package status, base price, discount, effective price, component cost, profit, and margin.
- 58
Effective package price is calculated as base price multiplied by one minus the discount rate.
- 59
Search All Packages using the package or branch name.
- 60
Click a package to open its component and pricing detail.
- 61
In Queue & flow, review Queue Entries, Completion Rate, Average Wait, P90 Wait, Wait Breaches, and Average Consultation Duration.
- 62
Average Wait measures the time from queue creation to the patient being called.
- 63
P90 Wait is the duration under which approximately 90 percent of measured waits fall.
- 64
The waiting-time target is returned by the Operations API and is normally shown as 30 minutes on the page.
- 65
Wait Breaches counts measured waits above the configured waiting-time target.
- 66
Use Daily Throughput to compare queue entries with completed visits over time.
- 67
Use Wait Performance by Branch to compare average and P90 waiting time.
- 68
Branches are ordered using their waiting-time performance, with longer P90 waits receiving greater attention.
- 69
Use Attention Required to review branches exceeding the configured waiting-time target.
- 70
Use Branch Flow to compare queue entries, walk-ins, appointment-linked entries, completed visits, completion rate, waits above target, average wait, P90 wait, and average consultation time.
- 71
Use the Operations Explorer from supported queue charts or tables to perform a more detailed branch comparison.
- 72
In Appointments, review Total Booked, Attendance Rate, No-show Rate, and Cancellation Rate.
- 73
Attendance Rate is based on completed appointments among appointments with a resolved outcome.
- 74
No-show Rate is based on no-show appointments among appointments with a resolved outcome.
- 75
The page highlights attendance below 80 percent, no-show rate above 15 percent, and cancellation rate above 20 percent as operational attention signals.
- 76
Review the secondary appointment cards for Reschedule Rate, Online Booking Share, Awaiting Outcome, Collected Online, Settled Appointments, and Counter-invoiced Appointments.
- 77
Collected Online separates available deposit collections from full online collections.
- 78
Use No-show Rate by Branch to compare appointment no-show behaviour across branches.
- 79
Click a supported branch in an appointment chart to open that branch's appointment detail.
- 80
Use By Appointment Type to compare booking volume across appointment categories or types.
- 81
Click an appointment type to open its detailed appointment analysis.
- 82
Use Branch Appointments to compare total, completed, attendance, no-show, cancellation, rescheduling, online bookings, and collected amounts across branches.
- 83
Click Explore Branches on a supported section to open the full Operations Explorer.
- 84
Use the explorer search control to find a branch.
- 85
Use the explorer sort control to rank branches using the selected operational metric.
- 86
Click an explorer row to display the selected branch's operational summary.
- 87
Use Group Summary to clear the selected branch and return to the group-level explorer summary.
- 88
Where available, use the branch detail buttons to generate a deep XLSX report for the selected branch.
- 89
Click Reports to open the HQ Operations XLSX report centre.
- 90
The Reports page displays the selected period and the number of branches currently in scope.
- 91
Choose a Detail Branch before exporting a branch-specific workbook.
- 92
Inventory exports batches on hand, including item, quantity, cost, supplier, and expiry information.
- 93
Stock Ledger exports inventory movements, including movement reason, quantity change, unit cost, batch, and user information.
- 94
Purchases exports recorded restocks grouped by supplier, including quantity, cost, and expiry.
- 95
Movers exports dispensed and sold quantities, cost of goods, and estimated days of cover.
- 96
Profitability exports item cost, selling price, margin, profit potential, and stock value.
- 97
Transfers exports inter-branch movement, direction, quantity, value, and transfer status.
- 98
Packages exports group-wide package pricing, divergence, component cost, profit, and margin.
- 99
Appointments exports appointment type, booking source, status, no-show information, and other appointment details for the selected period.
- 100
The package workbook is group-wide. Other detailed workbooks use the selected Detail Branch.
- 101
While a workbook is being generated, its XLSX button remains disabled until the export finishes.
- HQ Operations Insights is only for users whose role is hq_operations and whose clinic-group plan includes the hq_operations feature.
- HQ Operations accounts are read-only. They cannot create, edit, receive, dispense, transfer, write off, count, invoice, reschedule, cancel, or otherwise modify branch data.
- The page uses group-scoped operational data from branches belonging to the signed-in user's clinic group.
- The page has six active tabs: Inventory, Profitability, Suppliers, Packages, Queue & flow, and Appointments.
- The old JavaScript header comment mentioning only three tabs is outdated and can be updated. The working tab configuration contains six tabs.
- Stock Value is based on available inventory and cost information. Missing batch cost data can affect the displayed value.
- Profit Potential is an operational estimate based on current stock, calculated cost, and selling price. It is not realised revenue or audited profit.
- Supplier spend depends on saved inventory batches, purchases, supplier links, and recorded costs.
- Price Divergence is an operational comparison signal. It does not automatically mean a pricing difference is incorrect.
- Queue waiting-time calculations depend on queue creation and called timestamps being saved correctly.
- Average Consultation Duration depends on available consultation or visit-duration timestamps.
- P90 is a percentile measure and is less affected by a small number of short waits than a simple average.
- Appointment rates depend on saved appointment status and outcome data.
- Unresolved appointments can include confirmed or upcoming bookings that do not yet have a final outcome.
- Operational alert thresholds help identify records for review. They do not prove staff error, misconduct, or poor care.
- Reports and explorers follow the selected period and branch scope unless a report is explicitly described as a current snapshot or group-wide.
- Inventory and profitability reports can combine current snapshots with movement data from the selected reporting period.
- The page is for analysis and prioritisation. Any required correction must be completed by an authorised branch user in the original Inventory, Queue, Appointments, or related module.
HQ Finance Insights is the read-only, group-wide financial analytics centre for HQ Finance users. It compares revenue, profit, margins, expenses, receivables, collections, payer performance, claims, deposits, SST, e-Invoice status, cost efficiency, inventory value, and branch financial performance across the clinic group. It also provides branch explorers, invoice aging drill-downs, detailed branch analysis, and downloadable XLSX reports.
At a glance · Review HQ Finance insights
- 1Revenue
- 2Payers & A/R
- 3Contribution
Walkthrough · 68 steps
Copy link- 1
Open Insights from the HQ Finance sidebar.
- 2
Use Week, Month, Year, or Custom to choose the reporting period.
- 3
Month is selected when Finance Insights first opens.
- 4
When Custom is selected, choose both the From and To dates. The report loads after a complete and valid date range has been selected.
- 5
Use Previous Period to compare the selected period with the immediately preceding period.
- 6
Use Same Period Last Year to compare the selected period with the matching period from the previous year.
- 7
When a comparison option is selected while Custom is active, the page returns to Month before loading the comparison.
- 8
Use Branch Scope to analyse all branches, one branch, or several selected branches.
- 9
Search inside Branch Scope when the clinic group has many branches.
- 10
Selecting All Branches removes individual branch restrictions and restores the full clinic-group scope.
- 11
Use Needs Attention to review financial, collection, payer, tax, and cost signals that may require follow-up.
- 12
Click a supported attention card to focus on the affected branch or to open the related receivables detail.
- 13
When no financial alerts are present, the page displays Nothing needs attention this period.
- 14
Use Group P&L to review Revenue, Net Profit, Gross Margin, and Net Margin.
- 15
Each P&L card shows the current value, the comparison value, and the change against the selected comparison period.
- 16
Use the P&L Waterfall to see how revenue is reduced by cost of goods sold and operating expenses to reach net profit.
- 17
Switch the P&L Waterfall between absolute RM values and percentage-of-revenue values.
- 18
Use Margin Trend to review gross-margin and net-margin movement over time.
- 19
Use Revenue Streams to review revenue contribution by invoice or service stream.
- 20
Use Expense Categories to review how operating expenses are distributed across categories.
- 21
Use Branch Performance to compare revenue, net profit, net margin, patients, revenue per patient, and the available twelve-month trend across branches.
- 22
Search the branch-performance table using the branch search field.
- 23
Use the ranking control to rank branches by Net Profit, Revenue per Patient, or Expense Ratio.
- 24
Click Explore Branches on a supported chart or table to open the full Branch Explorer.
- 25
In Branch Explorer, search branches and change the sorting metric using the sort control.
- 26
Click a branch row to select that branch and display its detailed financial summary.
- 27
Click Group Summary to clear the selected branch and return to the group-wide explorer view.
- 28
The explorer export requires exactly one branch to be selected before generating its XLSX workbook.
- 29
Use Receivables and Collections to review unpaid balances grouped into aging buckets.
- 30
Click an aging bucket to list the invoices behind that balance.
- 31
The invoice aging drawer shows invoice number, branch, payer, outstanding amount, and number of days outstanding.
- 32
Use Outstanding by Payer to review which payers carry the largest overdue balances.
- 33
Use Days Sales Outstanding to compare how long each branch takes to collect payment.
- 34
Branches with longer collection times are shown first in the Days Sales Outstanding chart.
- 35
Use Collection Performance to compare billed revenue, collections, and collection rates across branches.
- 36
Use Overdue Receivables to review invoices that have remained outstanding for longer periods.
- 37
Use Deposits to review deposit amounts and deposit activity across branches.
- 38
Use Payer Mix and Panel Performance to review where revenue comes from and where margin or collection delays may occur between billing and payment.
- 39
Use Revenue by Payer Category to compare self-pay, insurance, panel, corporate, government, TPA, or other available payer categories.
- 40
Use Claim Cycle Time to review the time taken for payer decisions and the time from approval until payment is received.
- 41
Use Panel Performance to compare claim volume, average claim amount, rejection rate, approval rate, decision time, payment time, and net revenue by payer.
- 42
High rejection rates and long payer payment times are highlighted for operational review.
- 43
Use Tax and Compliance to review SST Collected, SST Payable, and the current SST net position.
- 44
The SST card also displays the applicable filing period returned by the finance report.
- 45
Use e-Invoice Status by Branch to compare Accepted, Submitted, Pending, and Rejected MyInvois submissions.
- 46
Use Rejected e-Invoices Outstanding to review the affected branch, rejected count, value, oldest rejection, and common rejection reason.
- 47
Use Cost Efficiency to compare operating-cost indicators across the clinic group.
- 48
Use Expense per Visit to compare the amount of recorded expense associated with each visit across branches.
- 49
Use Payroll as a Percentage of Revenue to compare payroll cost with branch revenue.
- 50
Payroll percentages above the configured visual threshold are highlighted for review.
- 51
Use Inventory Value to compare the financial value of physical stock held by each branch.
- 52
Use Expense Drift to compare current expense-category totals with the previous comparison period.
- 53
Click Reports at the top of Finance Insights to open the finance report centre.
- 54
Choose a Detail Branch before downloading an XLSX report.
- 55
Group Insights reports contain one row per branch and follow the selected period, comparison, and branch scope.
- 56
The Group P&L report section includes P&L, Margin Trend, Revenue Streams, and Expense Categories.
- 57
The Branches report section includes Branch Performance, Margin Comparison, and Branch Ranking.
- 58
The Receivables report section includes Aging, Payer Aging, Days Sales Outstanding, Collections, Overdue Balances, and Deposits.
- 59
The Payers report section includes Payer Revenue, Claim Cycle, and Panel Performance.
- 60
The Tax and Compliance report section includes e-Invoice submission information.
- 61
The Cost Efficiency report section includes Expenses, Expense Ratio, and Inventory Value.
- 62
Click the XLSX button beside the required Group Insights dataset to generate its workbook.
- 63
Deep Reports are generated for one selected branch and provide row-level financial records.
- 64
Financial Summary provides day-by-day billed revenue, collections, expenses, and margin.
- 65
Revenue Breakdown provides invoice-line detail including item, quantity, price, and doctor.
- 66
Expenses provides expense-level detail including vendor, category, reference, and the user who recorded it.
- 67
Invoices provides invoice-level detail including patient, doctor, invoice type, status, and totals.
- 68
While an export is being created, its button remains disabled until the download succeeds or fails.
- HQ Finance Insights is only available to the hq_finance role when the clinic group's plan includes the hq_finance feature.
- HQ Finance accounts are read-only. They cannot create invoices, mark invoices paid, enter expenses, change payer records, edit tax settings, or modify branch financial data.
- The page is group-scoped and only includes branches belonging to the signed-in HQ Finance user's clinic group.
- The normal branch Accounting, Expenses, Tax, Invoices, and Payers pages are separate operational modules and are not opened by HQ Finance Insights.
- Revenue and Group Insights use billed figures where stated. Billed figures can include unpaid invoices and exclude draft invoices.
- Collected revenue can be lower than billed revenue because some invoices may remain unpaid.
- Revenue-stream totals may use pre-discount invoice-item value while group revenue uses post-discount invoice totals, so those figures may not tie exactly.
- Net Profit is calculated using available revenue, cost of goods sold, and operating expenses.
- Gross Margin and Net Margin are financial indicators and depend on complete revenue, cost, and expense data.
- Profit, margin, cost efficiency, and inventory value are management indicators and should not be treated as audited financial statements.
- A/R means Accounts Receivable.
- DSO means Days Sales Outstanding and estimates how long collection takes.
- Aging buckets group unpaid invoices by the number of days they have remained outstanding.
- Payer performance depends on saved claim, approval, rejection, payment, and invoice information.
- SST and e-Invoice information depends on each branch's tax and MyInvois configuration and saved submission records.
- Rejected e-Invoice signals identify records for review but do not replace checking the full MyInvois rejection response.
- Expense-per-visit and payroll percentages can be affected by incomplete expense, payroll, revenue, or visit records.
- Deep Reports can use a different accounting basis from the Group Insights section. The report centre states when a dataset is billed, collected, paid-only, or based on all expenses.
- The selected period, comparison mode, and branch scope apply throughout the main insights page, branch explorer, and report centre unless a report explicitly states otherwise.
- Finance Insights is intended for analysis and prioritisation. Any corrections must be completed by authorised branch users in the original finance or billing module.
FAQ
Quick answers. For a full procedure, open the matching guide above.
Open Invoices & Claims from the sidebar, stay on the Invoices tab, then click Create Invoice. Step 1 contains the patient, visit, date, invoice type and payer details; Step 2 contains medicines, services, equipment, consumables or package items.
Email support@relify.com.my and tell us which system you are moving from. The Relify team migrates your suppliers, inventory, patients, appointments and payer records for you, free of charge, and checks the data with you before you go live.
Open the appointment and choose Check-in. The appointment workflow places the patient into Queue and assigns a queue number.
Use System Setup → Appointment Colors. Appointment and visit types are configured there rather than directly on the Appointments page.
Use Audit Logs. Expand the relevant row to inspect the available before/after values, changed fields, quantity deltas, snapshots or status changes captured by the backend.
More questions? See the full FAQ
Support
For account issues, billing, migration problems or suspected bugs, contact the Relify team.
When you contact support, include
- Where it happenedThe module or page and, where relevant, the branch.
- What you were doingThe actions immediately before the issue appeared.
- What happenedThe exact error message or unexpected result you saw.
- Useful contextApproximate time, browser/device and a screenshot when it helps.
Avoid unnecessary patient identifiers in screenshots or emails, and never send passwords, authentication codes or access tokens. Trust & Legal