Connexion UPROMEDIC
UPROMEDIC est l'un des plus grands distributeurs pharmaceutiques en Algérie (6 filiales). PharmaPro est le seul logiciel d'officine qui consomme directement leur API REST officielle pour importer le catalogue (151 000+ références) et les factures BL/Facture en quelques secondes.
Pré-requis
- Un compte officine UPROMEDIC actif. Si vous n'en avez pas : contactez le représentant UPROMEDIC de votre filiale — le compte est créé en 24 heures.
- Vos identifiants API : nom d'utilisateur, mot de passe, et clé API (
apikey) fournis par UPROMEDIC à l'ouverture du compte. - Le nom de votre filiale (Alger, Oran, Constantine, Sétif, Annaba, Béjaïa…). PharmaPro le détecte automatiquement, mais vous pouvez le sélectionner manuellement si besoin.
Configuration (une seule fois)
-
Ouvrir la fenêtre de configuration
Dans PharmaPro : Paramètres → UPROMEDIC ou directement Médicaments → Synchroniser UPROMEDIC → Configurer.
-
Saisir les identifiants
Le formulaire demande 4 valeurs :
Champ Valeur FilialeSélectionnée parmi la liste fournie par l'API (ex. Annaba)API KeyClé alphanumérique fournie par UPROMEDIC à l'ouverture du compte UsernameNom utilisateur officine (souvent identique au nom commercial) PasswordMot de passe associé (le formulaire le masque par défaut) Stockage local. Les identifiants sont stockés dans la base SQLite locale (tableapp_settings), jamais transmis à TKAWEN ni à un tiers. Threat model : utilisateur unique sur poste contrôlé. -
Tester la connexion
Cliquez Tester la connexion. PharmaPro envoie une requête
GET /v2/grossisteset vérifie la réponse. Trois résultats possibles :- ✓ Connexion réussie — la liste des filiales s'affiche, prête à choisir.
- ✗ Authentification refusée (HTTP 401) — vérifiez username/password ou contactez UPROMEDIC pour réinitialisation.
- ⚠ Erreur réseau — vérifiez votre connexion Internet.
-
Sauvegarder
Cliquez Enregistrer. Les identifiants sont chiffrés au repos dans la base locale et la configuration est terminée.
Importer le catalogue (151 000+ médicaments)
Premier import (le plus long) :
Médicaments → Synchroniser UPROMEDIC
Clic sur Importer le catalogue complet.
Progression
Une barre de progression affiche le nombre de médicaments importés en temps réel. Compter ~3 minutes pour les 151 000 lignes selon votre connexion.
Résumé
À la fin : X importés, Y mis à jour (déjà présents avec données différentes), Z ignorés (déjà à jour). Aucun doublon créé.
Les imports suivants sont incrémentaux : seuls les médicaments modifiés depuis le dernier sync sont récupérés. ~10 secondes typiquement.
Importer les factures électroniques
Chaque livraison physique d'UPROMEDIC est doublée d'une facture électronique (BL puis Facture finale) accessible via leur API. PharmaPro la transforme en :
- Une entrée fournisseur dans Fournisseurs → Factures d'achat, avec rapprochement automatique sur la fiche fournisseur UPROMEDIC.
- Des incréments de stock sur chaque ligne de la facture.
- Des lots à péremption mis à jour si la facture porte ces informations.
- Une dette grossiste consolidée jusqu'au paiement.
Procédure de synchronisation
-
Lancer la synchronisation
Médicaments → Synchroniser UPROMEDIC → Importer les factures. PharmaPro récupère la liste des factures depuis la dernière date de synchronisation (
upromedic_last_sync). -
Sélectionner les factures à importer
Un tableau affiche les factures en attente avec : numéro, date, montant total, nombre de lignes. Cochez celles à importer (par défaut : toutes les non-importées).
-
Confirmer
Une fenêtre de progression affiche l'avancement facture par facture, ligne par ligne. Les médicaments inconnus sont créés automatiquement avec les données UPROMEDIC.
-
Vérification
Après import, allez dans Fournisseurs → UPROMEDIC → Factures. Chaque facture importée s'y trouve avec le détail des lignes. Le stock est déjà mis à jour côté Médicaments.
Endpoints API utilisés
Pour transparence (et audit interne si nécessaire), voici les 4 endpoints UPROMEDIC consommés par PharmaPro :
# 1. Liste des filiales (validation creds) GET https://api.upromedic.org/v2/grossistes Headers: apikey, username, password # 2. Catalogue produits (paginé) GET https://api.upromedic.org/v2/produits?page=N Réponse: [ { id_produit, code_barre, designation, dci, dosage, forme, prix_unitaire, ... } ] # 3. Liste des factures électroniques GET https://api.upromedic.org/v2/factures?since=YYYY-MM-DD Réponse: [ { numero_facture, date_facture, montant_total, ... } ] # 4. Détail d'une facture (lignes) GET https://api.upromedic.org/v2/factures/{numero} Réponse: { entete, lignes: [ { produit_id, qte, prix_unitaire, lot, peremption } ] }
Gestion des erreurs courantes
| Erreur | Cause probable | Solution |
|---|---|---|
HTTP 401 Unauthorized | Username/password ou apikey incorrects, ou compte expiré côté UPROMEDIC. | Vérifier les identifiants. Si toujours bloqué, appeler UPROMEDIC pour réinitialisation. |
HTTP 403 Forbidden | Compte désactivé ou IP bloquée. | Contacter UPROMEDIC immédiatement. |
HTTP 429 Too Many Requests | Quota API dépassé (rare mais possible avec sync intensif). | Attendre 5 minutes. PharmaPro reprend automatiquement. |
| Connexion timeout | API UPROMEDIC injoignable ou Internet instable. | Réessayer dans quelques minutes. |
| Facture déjà importée | Vous avez déjà importé cette facture précédemment. | Pas une erreur — PharmaPro ignore silencieusement les doublons. |
Pourquoi cette intégration change tout
Sans UPROMEDIC API, vous saisissez chaque facture manuellement. Une facture de 30 lignes prend en moyenne 30 minutes de saisie — pour un risque d'erreur élevé (mauvais dosage, mauvais prix, lot mal saisi).
Avec UPROMEDIC API : 5 secondes. Aucune erreur de saisie. Lots et péremptions exactement comme transmis par le grossiste. Stock à jour instantanément.
Sur un volume de 20 factures/mois, l'économie de temps est de ~10 heures par mois. À ~600 DA/heure de coût pharmacien, cela représente 6 000 DA/mois économisés — soit l'amortissement complet de PharmaPro en quelques semaines.