📖 Guide d'Usage

Apprenez à utiliser l'API e-MECeF Integrator pour normaliser vos factures

🔌 Vue d'ensemble de l'API

URL de Base

http://emecef.waouhmonde.com/api/emecef

Format de Réponse

JSON

🔐 Authentification

ℹ️

Pas d'authentification globale

Chaque requête doit inclure les identifiants e-MECeF du client dans le corps de la requête.

Identifiants requis dans chaque requête :

{
  "credentials": {
    "nim": "TS01000001",
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
    "ifu": "1234567890123",
    "environment": "test"
  }
}

NIM

Numéro d'Identification e-MECeF (2 lettres + 8 chiffres)

TOKEN

Token JWT fourni par la DGI

IFU

Identifiant Fiscal Unique (13 chiffres)

Environment

test ou production

🚀 Normaliser une Facture

POST /api/emecef/normalize

Structure de la requête

{
  "credentials": {
    "nim": "TS01000001",
    "token": "votre-token-jwt",
    "ifu": "1234567890123",
    "environment": "test"
  },
  "invoice": {
    "type": "FV",
    "items": [
      {
        "name": "Produit 1",
        "price": 1000,
        "quantity": 2,
        "taxGroup": "B"
      },
      {
        "name": "Service 1",
        "price": 500,
        "quantity": 1,
        "taxGroup": "A",
        "taxSpecific": 100
      }
    ],
    "client": {
      "ifu": "9876543210987",
      "name": "Client SA",
      "contact": "97000000",
      "address": "Cotonou, Bénin"
    },
    "operator": {
      "id": "001",
      "name": "John Doe"
    },
    "payment": [
      {
        "name": "ESPECES",
        "amount": 2500
      }
    ],
    "aib": "A"
  }
}

Réponse de succès

{
  "success": true,
  "data": {
    "mecef_code": "X537-E4DB-AJUU-HHXN-FWIS-FEKJ",
    "qr_code": "F;IN01000005;X537E4DBAJUUHHXNFWISFEKJ;1234567890123;20241223131708",
    "date_time": "23/12/2024 13:17:08",
    "counters": "64/64 FV",
    "nim": "IN01000005",
    "totals": {
      "total": 2500,
      "ht": 2119,
      "tva": 381,
      "aib": 0,
      "ts": 100
    }
  }
}

Réponse d'erreur

{
  "success": false,
  "error": "IFU invalide. Il doit contenir exactement 13 chiffres",
  "message": "Erreur lors de la normalisation"
}

📋 Types de Factures

FV Standard

Facture de Vente

La plus courante pour les ventes locales

FA Référence req.

Facture d'Avoir

Nécessite la référence de la facture originale

EV Export

Facture de Vente à l'Exportation

Pour les ventes vers l'étranger

EA Export + Réf.

Facture d'Avoir à l'Exportation

Export + référence obligatoire

💰 Groupes de Taxation

A 0%

Exonéré

B 18%

Taxable 18%

C 0%

Exportation

D 18%

Régime TPS 18%

E 0%

TPS

F 0%

Réservé

💳 Types de Paiement

ESPECES 💵
VIREMENT 🏦
CARTEBANCAIRE 💳
MOBILEMONEY 📱
CHEQUES 📝
CREDIT 📊
AUTRE

🔗 Autres Endpoints

POST /api/emecef/test-connection

Tester la connexion avec les services e-MECeF

curl -X POST http://emecef.waouhmonde.com/api/emecef/test-connection \
  -H "Content-Type: application/json" \
  -d '{"credentials": {...}}'
POST /api/emecef/status

Récupérer le statut de l'API e-MECeF et les factures en attente

curl -X POST http://emecef.waouhmonde.com/api/emecef/status \
  -H "Content-Type: application/json" \
  -d '{"credentials": {...}}'
GET /api/emecef/info

Informations sur l'intégrateur (pas d'authentification requise)

curl http://emecef.waouhmonde.com/api/emecef/info

⚠️ Gestion des Erreurs

Erreurs de Validation (400)

{
  "success": false,
  "error": "IFU invalide. Il doit contenir exactement 13 chiffres",
  "message": "Erreur lors de la normalisation"
}

Erreurs e-MECeF (400)

{
  "success": false,
  "error": "Erreur 1: Le nombre maximum de factures en attente est dépassé",
  "message": "Échec de la normalisation e-MECeF"
}

Erreurs Serveur (500)

{
  "success": false,
  "error": "Erreur de connexion à e-MECeF: Connection timeout",
  "message": "Erreur lors de la normalisation"
}