Sellify by S-Plus

Sellify — pharmacy ERP software for pharmacies and drug distributors

Sellify is pharmacy ERP software built by S-Plus for pharmacies, pharmacy chains and pharmaceutical wholesalers in Saudi Arabia and across the Gulf. One system runs the counter, the warehouse, the sales rep’s route and the accounts — with the batch and expiry date tracked on every box, FEFO dispensing by default, and RSD track and trace and ZATCA e-invoicing built in.

Why pharmacies need pharmacy ERP software, not general retail tools

A pharmacy is not an ordinary shop. The same product arrives in several batches with different expiry dates, controlled medicines can only go to licensed buyers, insurers pay part of the invoice weeks later, and in Saudi Arabia the movement of every serialised box has to be reported to the SFDA. General POS and accounting tools treat a medicine like any other item, so the gaps get filled with spreadsheets, paper registers and memory — and that is where expired stock and compliance risk come from.

Sellify was designed around those realities. Batch and expiry data is captured at purchase, carried through every transfer and sale, and reflected in every report, so the system — not the pharmacist — remembers which box leaves first. For a wider view of what a pharmacy system should cover, read our guide to choosing a pharmacy ERP system.

Who Sellify is for

Independent pharmacies

A fast point of sale with search and barcode scanning, alternatives with the same active ingredient, prescription and insurance handling, loyalty points and a cash count at the end of every shift — and the counter keeps selling when the internet drops.

Pharmacy chains

Every branch works on one database: stock per branch, transfers between branches with their batches, roles that apply only inside a specific branch, discount and return limits per role, and an audit log of sensitive actions across the whole chain.

Pharmaceutical wholesalers and warehouses

Customer price tiers, quantity price breaks and “buy X, get Y” bonus offers, credit limits and payment terms, debt ageing and collections, delivery packing lists by batch, a sales rep app for orders and collections, and a warehouse app for scanning, stocktakes and receiving.

How Sellify works, from purchase to report

  1. Receive. A purchase invoice records the batch number and expiry date of each batch-tracked item, and the batch is created automatically. Serialised boxes are scanned by their GS1 DataMatrix code.
  2. Store and move. A transfer deducts stock from the source warehouse by FEFO, travels with its batches, and is added at the destination with the same expiry dates.
  3. Sell. At the POS or through the rep app, the system picks the batch that expires first. Expired, quarantined or blocked batches cannot be sold, and controlled medicines need a customer with a valid licence.
  4. Invoice and report. Every sale issues a ZATCA tax invoice with its QR code, and every return issues a credit note linked to the original invoice. RSD events go into a queue that syncs in the background, so a slow connection never stops the counter.
  5. Analyse. Stock valuation by batch, slow-moving items, customer profitability, rep performance and a report builder with CSV export.

Expiry control that works on its own

FEFO — first expiry, first out — is the default for every sale and transfer, not a rule staff have to remember. A batch can be put in quarantine or blocked, for example after a manufacturer recall, and it stops being sellable at once. Each line of a sales return is graded as sellable, quarantine or damaged, and expired batches can be returned to the supplier. A reorder screen suggests quantities from daily demand, lead time and safety stock, and ignores batches that will expire before the new delivery arrives. We explain the method in detail in our article on FEFO and pharmacy expiry management.

Saudi compliance built in: RSD and ZATCA

For SFDA drug track and trace, Sellify links each product to its GTIN, stores the GLN of every warehouse, customer and supplier, and requires each serialised box to be scanned on receipt, sale, return and transfer. Every movement becomes an RSD event — accept, dispatch, dispense, return, transfer or cancel — and you can trace the full history of any box. The connection to the official RSD service is ready to configure with your facility’s SFDA credentials.

For e-invoicing, each invoice carries a UUID, a sequential counter, the hash of the previous invoice and a UBL 2.1 XML file, and the system chooses a simplified or standard tax invoice by customer type. Phase 2 onboarding with the Fatoora platform — CSID, digital signing, reporting and clearance — runs from a dedicated screen inside the system.

Permissions you can rely on

Ready role templates cover branch manager, pharmacist, cashier, storekeeper, accountant, sales rep and auditor. Each role can carry limits on line and invoice discounts, returns and credit overrides; anything above a limit needs a manager’s one-time PIN approval. Changes to roles, discounts, returns and deleted invoices are written to an audit log you can export.

Getting started

Your product catalogue can be imported from a CSV file with trade and scientific names, SFDA code, barcode, price and manufacturer. Opening batch balances come in through a stocktake. Sellify works in Arabic and English, in the browser and as a Windows desktop app. Book a demo with the S-Plus team and we will walk through your own workflow on real screens.

Modules

Six groups of modules on one database, from the pharmacy counter to the warehouse, the rep’s route and the accounts.

POS & offline selling

  • Fast search, barcode and camera scanning
  • Alternatives with the same active ingredient
  • Sale units (box or strip) and batch choice
  • Held orders, shifts and cash counts
  • Split payment across methods
  • Offline cash sales that sync without duplicates
  • Browser or Windows desktop app

Batches, expiry & FEFO

  • Batch number and expiry on every purchase
  • Automatic FEFO on sales and transfers
  • Quarantined and blocked batches for recalls
  • Graded returns: sellable, quarantine, damaged
  • Item movement card by batch
  • Reorder suggestions from demand and lead time

RSD track & trace + ZATCA

  • GTIN linking and GLN per site
  • GS1 DataMatrix scanning on every movement
  • Accept, dispatch, dispense, return and transfer events
  • Background sync queue and full box history
  • ZATCA tax invoices and credit notes with QR
  • Fatoora Phase 2: CSID, signing, reporting, clearance

Warehouse, transfers & stocktake

  • Multiple warehouses and branches
  • Transfers: draft, send, receive with batches
  • Stocktake by batch with approval
  • Delivery status and batch packing lists
  • Controlled medicines register with CSV export
  • Stock valuation and slow-moving reports

Credit, insurance & loyalty

  • Customer price tiers and quantity breaks
  • Bonus offers: buy X, get Y
  • Credit limits, payment terms and debt ageing
  • Collections allocated to the oldest invoices
  • Insurer share, prescriptions, claims and settlements
  • Loyalty points and timed promotions

Mobile apps, permissions, reports & API

  • Rep app: customers, orders, collections
  • Warehouse app: scan, count, receive
  • Role templates and branch-level roles
  • Discount, return and credit limits with manager PIN
  • Audit log and report builder with CSV
  • REST API with scoped keys
Why Sellify

Built for how pharmacies work

Pharmacy logic at the core

Batches, expiry, FEFO and controlled medicines are part of every sale and transfer, not add-ons.

Saudi compliance in one workflow

RSD scanning and ZATCA invoicing happen in the same screens your team already uses to sell and receive.

The counter keeps selling

Cash sales continue offline and sync later without duplicates, while RSD events queue in the background.

Built and supported by S-Plus

A team in Jeddah and Cairo that sets the system up with you, from catalogue import to roles and training.

FAQ

Questions pharmacies often ask

Does Sellify support SFDA RSD track and trace?

Yes. Products are linked to their GTIN, sites to their GLN, and every serialised box is scanned on receipt, sale, return and transfer. Each movement becomes an RSD event in a background queue, ready to connect to the official service with your facility’s SFDA credentials.

Is Sellify ready for ZATCA Phase 2?

Every sale issues a tax invoice with QR code, UUID, sequential counter and UBL 2.1 XML, and returns issue linked credit notes. Phase 2 onboarding — CSID, digital signing, reporting and clearance — runs from a screen inside the system using the OTP from your Fatoora portal.

What happens when the internet goes down?

The POS keeps searching, pricing and taking cash sales from a local copy of products and customers. When the connection returns, invoices are sent in order without duplicates. Credit sales, controlled medicines and serialised items wait until the system is back online.

Can Sellify run a pharmaceutical wholesaler with several warehouses?

Yes. It handles multiple warehouses, transfers with their batches, customer price tiers and bonus offers, credit limits and debt ageing, delivery packing lists, and mobile apps for sales reps and warehouse staff.

Does it handle insurance, prescriptions and loyalty?

Yes. At the POS, the invoice is charged to the insurer’s account while the patient pays only their share, and claims and settlements are tracked. A prescription number can be required for controlled medicines, and loyalty points can be earned and redeemed as a discount.

Can pharmacies outside Saudi Arabia use Sellify?

Sellify is built Saudi-first, so RSD and ZATCA target the Kingdom. Its core — POS, batches and FEFO, warehouses, credit, insurance and permissions — applies to pharmacies in the UAE, Kuwait, Qatar, Bahrain and Oman, and we review local requirements with you during the demo.

Let's Collaborate

Ready to see Sellify in action?

Book a Demo

Welcome Back

Sign in to access your account

Create Account

Join and enjoy the full experience

+965 expand_more
🇰🇼 Kuwait +965
🇸🇦 Saudi Arabia +966
🇦🇪 United Arab Emirates +971
🇶🇦 Qatar +974
🇧🇭 Bahrain +973
🇴🇲 Oman +968
🇪🇬 Egypt +20
🇯🇴 Jordan +962

lock_reset

Reset Password

Enter your email to receive a recovery link