Medicines and stock

The Médicaments page lists everything the pharmacy sells: quantity, selling price, purchase price, expiry date, category and barcode. You add products one by one there, or import a whole catalogue.

Updated: 2026-09-295 min readالعربيّة · Français

Steps at a glance

  1. Open the Médicaments page and click Ajouter.
  2. Enter the name, quantity, selling price, purchase price and expiry date.
  3. Choose the category, scan the barcode and select the supplier.
  4. Tick Produit parapharmacie if needed.
  5. Click Enregistrer.

The Gestion des Médicaments screen

The toolbar contains:

  • The 🔍 Rechercher par nom, catégorie... (search by name, category) field: instant search across the name, the category and the barcode.
  • The type filter: 🏷️ Tout (all), 💊 Médicaments (medicines) or 🌿 Parapharmacie (parapharmacy).
  • The stock filter: Tous (all), Stock faible (low stock: positive quantity below the threshold), Rupture de stock (out of stock: zero quantity), Expire bientôt (expiring soon: expiry within the alert period), then the categories: Médicament, Parapharmacie, Cosmétique, Complément alimentaire, Matériel médical, Autre (medicine, parapharmacy, cosmetic, food supplement, medical equipment, other).
  • The buttons ➕ Ajouter (add), ✏️ Modifier (edit), 📦 Voir Lots (view batches), 🗑️ Supprimer (delete) and 📥 Importer Excel/CSV/PDF (import).

Columns: ID, Type (💊 or 🌿), Nom, Quantité, Prix Vente (DA), Prix Achat (DA), Date de Péremption, Catégorie, Code-barres, Fournisseur (name, quantity, selling price, purchase price, expiry date, category, barcode, supplier). Clicking a header sorts the column (ascending, then descending). The quantity is shown in red at zero and in orange below the threshold. The number of products displayed appears below the table.

Software screenshot — Medicines and stock
Software screenshot

Adding a medicine or product

  1. Click ➕ Ajouter: the Ajouter Médicament (add medicine) window opens.
  2. Fill in the fields (table below); those marked with an asterisk are required.
  3. Click 💾 Enregistrer (save).
FieldMeaning
📝 Nom *The name as you will search for it at the counter (brand, strength, form).
📦 Quantité *Current stock in the selling unit (usually the box).
💰 Prix Vente (DA) *Unit selling price, used by the point of sale.
💵 Prix Achat (DA) *Unit purchase price, used to calculate profit.
📅 Date de Péremption *Used by the expiry alerts.
🗓️ Date d'enregistrementDate the stock came in (today by default); can be changed for a past delivery.
📂 CatégorieOne of the six categories.
🔖 Code-barresOptional, but essential for selling with the scanner.
🏭 FournisseurA supplier from the Fournisseurs page, or — Aucun — (none).
🌿 TypeThe Produit parapharmacie (avec TVA) (parapharmacy product, with VAT) box.
Saving is refused without a name (Le nom est obligatoire.) or with a zero price (Prix invalides.). If the quantity is above zero, a batch is created automatically with the note Saisie manuelle (manual entry).
If you scan a code that is already known into Code-barres, the Médicament existant (existing medicine) window offers to edit the existing product instead of creating a duplicate: answer Yes.

Editing or deleting a product

  • Edit: select the row, then ✏️ Modifier, or double-click it; save with 💾 Enregistrer.
  • Delete: select the row, 🗑️ Supprimer, then confirm. Deletion is permanent.
Changing the Quantité in the product form replaces the total stock without touching the batches. For a delivery, use Factures Fournisseur (supplier invoices) → ➕ Nouvelle Facture (new invoice): the quantity is added and a batch is created with its expiry date (see Batches and FEFO).

Importing an Excel, CSV or PDF catalogue

The 📥 Importer Excel/CSV/PDF button opens the Importer Médicaments / Parapharmacie (Excel / CSV / PDF) window:

  1. Click 📁 Choisir un fichier (choose a file) and select a .xlsx, .csv or .pdf (the supplier's price list or delivery note).
  2. Check the Colonnes détectées (corrigez si besoin) : (detected columns, correct if needed) table. The required fields are marked ⭐: Désignation (nom du produit) (product name), Quantité reçue (quantity received), Prix d'achat HT (unitaire) (unit purchase price excl. tax). Correct them if needed, then click 🔄 Recharger l'aperçu avec ces colonnes (reload the preview with these columns).
  3. In the preview, every cell can be edited (name, quantity, purchase price, Prix VENTE (DA) (selling price), expiry); untick the rows you do not want to import.
  4. With no selling price in the file: enter a Marge (margin, 30% by default) and click Appliquer (prix achat + marge) (apply purchase price + margin), then optionally round with Arrondir à 5 DA (round to 5 DA), 10 or 50 and the Arrondir (round) button.
  5. Check the options Marquer tous les nouveaux produits comme 🌿 Parapharmacie (mark all new products as parapharmacy) and Mettre à jour les produits existants (ajoute au stock + rafraîchit prix) (update existing products: adds to stock and refreshes prices).
  6. Click 📥 Importer maintenant (import now). The Import terminé (import finished) window gives the counts of new, updated, skipped and failed products.
The Marquer tous les nouveaux produits comme 🌿 Parapharmacie option is ticked by default. For a medicines file, untick it before importing.
  • An existing product is recognised by its exact name (case ignored): the imported quantity is added to its stock and its prices are replaced.
  • A product with no selling price will be sold at its purchase price; the Prix de vente manquant (missing selling price) window warns you.
  • A new product with no expiry date gets 2099-12-31 and does not appear in the alerts.
  • A scanned PDF (image) is refused: ask the supplier for an Excel file or a “text” PDF.

Prices, stock threshold and alerts

  • The counter selling price is the Prix Vente (DA). If an active promotion exists for the product (Promotions page, administrator), the price is reduced automatically when it is added to the basket.
  • The profit on a sale = (selling price − purchase price) × quantity.
  • The low-stock threshold and the expiry alert period are set in Paramètres → Alertes et Seuils (10 and 30 days by default) and apply to all products.
  • A product with zero quantity does not appear in the Point de Vente search.

Tips and common mistakes

  • Always write names the same way (e.g. DOLIPRANE 1000MG CP B/8): the import matches products by exact name, so a name written two ways creates two products.
  • Fill in the barcode of fast-moving products: at the counter you then just scan and press Enter.
  • Use the Rupture de stock filter before ordering, and Expire bientôt every week.
  • Do not delete a product sold in the past because it has run out: leave it at zero.

Frequently asked questions

How do I import my medicine list from Excel?

Médicaments page → Importer Excel/CSV/PDF, choose the file, check the required columns (name, quantity, purchase price), then click Importer maintenant.

Why are all my imported medicines in parapharmacy?

The option Marquer tous les nouveaux produits comme Parapharmacie is ticked by default in the import window; untick it for a medicines file.

Does the import create duplicates?

Not if the name is identical: the quantity is added to the existing product and its prices are updated, provided the Mettre à jour les produits existants option is ticked.

Where do I set the low-stock threshold?

Paramètres → Alertes et Seuils → Seuil stock faible (10 by default), applied to all products.

Why doesn't a product appear at the point of sale?

The point of sale only shows products whose quantity is above zero. Check its stock in Médicaments.

Try PharmaPro in your pharmacy

15 days free with every feature, then 45 000 DZD once.

Download and try freeBuy the licence

Need help?

Support answers on WhatsApp or by e-mail.

support@tkawen.com