Suppliers, supplier invoices and delivery-note import

All goods come in through a supplier invoice: entered line by line, imported from the wholesaler's Excel/CSV file, or retrieved directly from UPROMEDIC. In every case the stock increases and the invoice is kept for traceability.

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

Steps at a glance

  1. Open Factures Fournisseur and click 📥 Importer BL (Excel/CSV).
  2. Click Parcourir... and choose the supplier's file (.xlsx, .xlsm or .csv).
  3. Map the required columns: product name, quantity received, purchase price excl. VAT, then click Suivant.
  4. Choose the supplier and enter the BL number, the date and the status.
  5. Check the preview and the Avertissements column.
  6. Click Importer and confirm; a backup is created automatically before the import.

The supplier record

Open Fournisseurs (suppliers; page « Gestion des Fournisseurs »). Columns: ID, Nom, Téléphone, Adresse, Email, Date Ajout.

  1. Click ➕ Ajouter Fournisseur (add supplier).
  2. Enter 🏭 Nom * (required), then if needed Téléphone, 📍 Adresse, 📧 Email.
  3. 💾 Enregistrer (save).

Edit with ✏️ Modifier or a double-click, delete with 🗑️ Supprimer. The search covers the name or the phone number.

There is no need to create the supplier before importing a BL (bon de livraison, the wholesaler's delivery note): a new name typed during the import creates the supplier automatically.
Software screenshot — Suppliers and invoices
Software screenshot

Enter a supplier invoice

Before the first invoice, fill in the N° RC (trade register number) and the NIF (tax ID) in Paramètres → Informations fiscales. Otherwise the « Informations fiscales manquantes » message blocks creation; open Paramètres from the sidebar.
  1. Open Factures Fournisseur (supplier invoices), then ➕ Nouvelle Facture (new invoice).
  2. Choose 🏭 Fournisseur * (it must already exist).
  3. 📄 N° Facture is suggested according to the numbering set in Paramètres; you can enter the supplier's number. An existing number is refused: « Ce numéro de facture existe déjà. »
  4. Fill in 📅 Date, 📌 Statut (En attente / Payée — pending / paid) and 📝 Remarques.
  5. Add the lines: scan into 🔖 Scan code-barres : then press Enter (search by barcode, then by partial name), or ➕ Ajouter Ligne and choose the medicine.
  6. For each line: Quantité, Prix Unit. (pre-filled with the purchase price, editable), Péremption (expiry). The 💰 Total updates.
  7. 💾 Enregistrer la Facture.

On saving, one batch is created per line with its expiry date and the stock increases — see Batches and FEFO. An e-Facture JSON file is also generated; its path is shown in the success message.

Manual entry only accepts medicines already in the catalogue. Create the product first in Medicines, or use the BL import, which creates new products.

Search, view, export, delete

  • Filter by status: Toutes, En attente, Payée, Annulée (all, pending, paid, cancelled); search by invoice number.
  • 📋 Détails (or a double-click) shows the lines.
  • 📄 Exporter PDF generates a printable A4 invoice.
  • 🗑️ Supprimer erases the invoice and its lines.
Deleting an invoice does not remove from stock the quantities it had added. After deleting an incorrect invoice, correct the quantities in Médicaments.

The 📷 Scanner Facture (OCR) button is optional: it only works if Tesseract OCR is installed separately on the computer; otherwise it shows the installation instructions. Lines read from the image are approximate: check them before saving.

Software screenshot — Suppliers and invoices
Software screenshot

Import an Excel or CSV BL (4 steps)

In Factures Fournisseur, click 📥 Importer BL (Excel/CSV). It works with any supplier that sends an .xlsx, .xlsm or .csv file (the old .xls format is not accepted: re-save it as .xlsx).

  1. ÉTAPE 1 / 4 — Fichier (file): Parcourir... (browse), choose the file. The number of columns and rows detected is shown. Merged titles at the top of an Excel sheet are ignored; the CSV separator and encoding are detected.
  2. ÉTAPE 2 / 4 — Colonnes (columns): map each field to a column. Required: Désignation (nom du produit) (product name), Quantité reçue (quantity received), Prix d'achat HT (unitaire) (unit purchase price excl. VAT). Optional: Prix de vente / PPA (selling price), Date de péremption (expiry date), Catégorie, Code-barres (barcode). PharmaPro suggests the mapping from the headers; correct it if needed. Also set Catégorie par défaut : (default category) and Ignorer les N premières lignes : (skip the first N rows).
  3. ÉTAPE 3 / 4 — Facture (invoice): Fournisseur * (choose one or type a new name), N° Facture / BL *, Date *, Statut (Payée / En attente / Annulée), Montant total HT (total excl. VAT; leave at zero = calculated from the lines), Remarques.
  4. ÉTAPE 4 / 4 — Aperçu et import (preview and import): check the table (Désignation, Qté, Prix HT, PPA, Péremption, Avertissements), then Importer and confirm.

What the import does:

  • A full backup of the database is created before any change; its path is given in the final message.
  • Total rows (Total, TVA, Net à payer…) and rows without a name are ignored; two consecutive rows of the same product at the same price (e.g. free units) are merged.
  • Existing product (same exact name, case-insensitive): the quantity is added and the purchase price is replaced; the selling price and expiry are replaced only if their column is filled in.
  • Unknown product: created in Médicaments; without a readable date, the expiry 2099-12-31 is saved — correct it afterwards.
  • The column mapping is remembered for this supplier and reused for the next BL.
  • Re-importing the same number for the same supplier is refused (« Import refusé ») to avoid doubling the stock.
Accepted dates: YYYY-MM-DD, DD/MM/YYYY, DD-MM-YYYY, YYYY/MM/DD, DD.MM.YYYY or an Excel date cell. A decimal comma is handled (341,00).
Matching is done on the exact name: "DOLIPRANE 1G" and "Doliprane 1000mg" give two products. Check the Avertissements column (warnings: « Quantité <= 0 », « Prix d'achat manquant ou nul ») before importing.

Import UPROMEDIC invoices

If your wholesaler works through UPROMEDIC and has given you pharmacy credentials, you can retrieve your electronic BLs and invoices directly (Internet connection required).

  1. Click 📥 Import UPROMEDIC. The first time, the Configuration UPROMEDIC window opens; afterwards, right-click the button to reopen it.
  2. Choose 🏢 Filiale UPROMEDIC (UPROMEDIC branch), enter 👤 Utilisateur officine (pharmacy user) and 🔑 Mot de passe (password), then 🧪 Tester la connexion (test connection) and 💾 Enregistrer.
  3. In Importer factures UPROMEDIC, set 📅 Depuis le: (since; last synchronisation, or 30 days the first time), then 🔄 Actualiser (refresh).
  4. Invoices already imported are greyed out and cannot be ticked. Use ☑ Tout cocher / ☐ Tout décocher (tick all / untick all), then 📥 Importer la sélection.

A summary is shown: Importées, Ignorées (duplicates), Échouées (imported, skipped, failed). Unknown medicines are created, and a batch is created for each line carrying an expiry date.

Frequently asked questions

How do I import a wholesaler's Excel delivery note into pharmacy software?

In Factures Fournisseur, click "📥 Importer BL (Excel/CSV)", choose the file, map Désignation, Quantité and Prix d'achat HT, enter the supplier and the BL number, check the preview, then click Importer.

Can the same BL be imported twice by mistake?

No. If the invoice number already exists for this supplier, the import is refused so the stock is not doubled.

Why does a product appear twice after the import?

The name in the supplier's file differs from the one in the catalogue; matching is done on the exact name. Align the names or correct the product after the import.

Why is "Nouvelle Facture" blocked?

The N° RC and NIF must first be filled in under Paramètres → Informations fiscales.

Does deleting an invoice cancel the stock entry?

No. Deletion erases the invoice and its lines; correct the quantities manually 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