Conventions
Une API REST en JSON, sous https://api.payiz.app/v1. Les montants sont entiers, les identifiants préfixés, et chaque erreur se lit.
- Base :
https://api.payiz.app/v1. - Authentification :
Authorization: Bearer sk_live_…, toujours depuis votre serveur. - Montants entiers, dans l’unité mineure de la devise, toujours avec la devise :
{ "amount": 5000, "currency": "XOF" }vaut 5 000 F CFA — le franc CFA n’a pas de centimes, le naira en a deux. - Identifiants préfixés :
pay_un paiement,tnt_une demande envoyée au payeur,rem_un remboursement,ret_un retrait,lnk_un lien,ben_un bénéficiaire,evt_un événement,req_un appel. - Opérateurs en codes :
operatorvaut un code court et stable, propre au pays —mtn,moov,orange. GET /v1/payment_methods les donne, avec leurs logos et leurs bornes. - Dates en secondes depuis 1970, à l’entrée comme à la sortie.
- Pagination par curseur :
limit(100 au plus) etstarting_after, l’identifiant de la dernière ligne lue. Chaque liste renddataethas_more, du plus récent au plus ancien. - Mode test : une clé
sk_test_ne déplace aucun argent et parle au simulateur. Chaque objet rendu portelivemode.
Le contrat, en entier
La spécification OpenAPI 3.1 se lit sans clé, et s’importe dans vos outils : https://api.payiz.app/v1/openapi.json. C’est elle qui écrit cette page.
/v1 ne casse pas
On ajoute des champs, on n’en retire pas, et on ne change pas le sens de ce qui existe. Ignorez les champs que vous ne connaissez pas. Une rupture ouvrirait un /v2 — elle serait annoncée dans le journal des changements, datée.