Architecture & Proxy HMAC
AfriSwitch repose sur une architecture institutionnelle sécurisée, basée sur un proxy HMAC qui protège
l’accès à l’API interne https://api.afriswitch.net/api/v1/.
Le portail entreprise agit comme couche d’orchestration, d’authentification et de standardisation.
1. Vue d’ensemble
Client (SI partenaire / Postman)
↓
Portail AfriSwitch (authentification entreprise)
↓
Proxy HMAC (signature automatique)
↓
API institutionnelle AfriSwitch
↓
Réponse institutionnelle
↓
Portail (formatage standard)
↓
Client
2. Rôle du portail AfriSwitch
- Vérifie que l’entreprise est active
- Vérifie les permissions
- Applique automatiquement la signature HMAC
- Transmet la requête à l’API institutionnelle
- Retourne une réponse standardisée
3. Le proxy HMAC
Le proxy HMAC est un composant interne qui signe toutes les requêtes sortantes vers l’API institutionnelle. Le partenaire n’a jamais besoin de générer la signature lui-même.
Service interne utilisé :
call_institutional_api(
portal_company=request.company,
method="GET/POST",
path="/api/v1/...",
json_body=request.json_body,
params=request.GET,
use_hmac=True,
)
Ce service :
- génère la signature HMAC
- ajoute les headers requis
- transmet la requête à l’API institutionnelle
- retourne la réponse brute dans
data
4. Structure des réponses côté portail
{
"status": 200,
"data": {
...
}
}
Le champ data contient la réponse institutionnelle (masquée dans la documentation pour les données sensibles).
5. Sécurité
- Les clés API sont propres à chaque entreprise
- Le partenaire ne signe rien : le portail signe pour lui
- Aucune clé interne n’est exposée
- Les dates, références et numéros sont masqués dans la documentation
6. Tests & validation
- Utiliser Postman avec
x-api-keyetapi-secret - Tester les flux PAYIN / PAYOUT
- Observer le comportement réel : payment_url, OTP, USSD
- Vérifier les statuts via
/transactions/status/
Conclusion
Cette architecture garantit une intégration sécurisée, scalable et institutionnelle pour tous les partenaires AfriSwitch.