1. Présentation
Cette API permet aux logiciels de gestion de pharmacie d'importer automatiquement les factures et leurs détails depuis notre système de distribution. Les données sont lues directement depuis notre base en temps réel : chaque appel reflète l'état exact et à jour de vos factures.
Public cible : Développeurs et concepteurs de logiciels de gestion de pharmacie.
2. Identifiants de test
| Paramètre | Valeur | Description |
|---|
| Code client | DEMO | Identifiant de la pharmacie |
| Mot de passe | password | Mot de passe API |
| URL de base | https://api.cojipharm.com | Adresse de l'API |
Important : En production, chaque pharmacie reçoit ses propres identifiants uniques.
3. Authentification
L'API utilise l'authentification Basic Auth :
Authorization: Basic base64(code_client:mot_de_passe)
Sécurité : Toutes les requêtes doivent passer par HTTPS. Chaque pharmacie n'a accès qu'à ses propres factures.
4. Endpoints disponibles
GET /api/facturesRécupère la liste des factures de la pharmacie authentifiée, au format JSON, triées de la plus récente à la plus ancienne.
GET /api/dfactfvRécupère le détail des lignes d'une facture précise.
Paramètre requis : idFacture - Exemple : /api/dfactfv?idFacture=9627
5. Exemples de réponses JSON
GET /api/factures
[
{
"idFacture": "9627",
"dateFacture": "2026-04-15T00:00:00",
"montantTotalTtc": 1500.60,
"statut": "payee",
"paye": true
}
]GET /api/dfactfv?idFacture=9627
[
{
"codeProduit": 1024,
"designPrs": "DOLIPRANE 500MG B/16 CP",
"lot": "ABC123",
"ppa": 50.00,
"totqte": 20
}
]Facture introuvable : 404 - {"message": "Facture introuvable."}
6. Exemples de code
C# / .NET
var client = new HttpClient();
var credentials = Convert.ToBase64String(Encoding.ASCII.GetBytes("DEMO:password"));
client.DefaultRequestHeaders.Add("Authorization", $"Basic {credentials}");
var response = await client.GetAsync("https://api.cojipharm.com/api/factures");
var json = await response.Content.ReadAsStringAsync();
Console.WriteLine(json);
PHP
<?php
$username = 'DEMO'; $password = 'password';
$auth = 'Authorization: Basic ' . base64_encode("$username:$password");
$ch = curl_init('https://api.cojipharm.com/api/factures');
curl_setopt($ch, CURLOPT_HTTPHEADER, [$auth]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
echo curl_exec($ch);
?>
Python
import requests, base64
credentials = base64.b64encode(b'DEMO:password').decode('utf-8')
headers = {'Authorization': f'Basic {credentials}'}
response = requests.get('https://api.cojipharm.com/api/factures', headers=headers)
print(response.json())
VB.NET
Dim client As New HttpClient()
Dim credentials As String = Convert.ToBase64String(Encoding.ASCII.GetBytes("DEMO:password"))
client.DefaultRequestHeaders.Add("Authorization", $"Basic {credentials}")
Dim response As HttpResponseMessage = Await client.GetAsync("https://api.cojipharm.com/api/factures")
Dim json As String = Await response.Content.ReadAsStringAsync()
MessageBox.Show(json)
Delphi
AuthString := 'DEMO:password';
Base64Auth := TNetEncoding.Base64.Encode(AuthString);
HttpClient.CustomHeaders['Authorization'] := 'Basic ' + Base64Auth;
Response := HttpClient.Get('https://api.cojipharm.com/api/factures');
7. Codes d'erreur
| Code | Signification |
|---|
200 | Succès |
401 | Authentification invalide |
404 | Facture introuvable |
400 | Paramètre manquant |
8. Questions fréquentes
Les données sont-elles à jour ?
Oui, temps réel direct depuis notre base.
Que faire en cas de 401 ?
Vérifiez le code client et mot de passe.
Que faire en cas de 404 ?
Récupérez d'abord la liste via /api/factures.