Chaque page en Markdown
Ajoutez .md à l’adresse d’une page : le texte brut, sans habillage.
Une API REST, des webhooks signés, des SDK Node et PHP. Du test au réel en changeant de clé.
curl https://api.payiz.app/v1/payments \ -H "Authorization: Bearer sk_test_…" \ -H "Idempotency-Key: cmd-42" \ -H "Content-Type: application/json" \ -d '{ "amount": 10000, "currency": "XOF" }'
HTTP/1.1 201 Created { "id": "pay_01j9x3kq7m4tzv8qhw2n", "status": "requires_payment", "amount": 10000, "payment_url": "https://pay.payiz.app/pay_01j9…" }
Votre serveur crée le paiement, vous renvoyez le client vers son payment_url. Il paie chez Payiz et revient chez vous.
POST /v1/paymentsLe paiement s’ouvre par-dessus votre page, sans la quitter. Avec votre serveur, ou avec un lien de votre espace.
payiz.jsVotre formulaire, votre écran : vous envoyez le numéro, le payeur valide sur son téléphone, le webhook vous dit la suite.
POST /v1/payments · payercurl https://api.payiz.app/v1/payments \ -H "Authorization: Bearer sk_test_…" \ -H "Idempotency-Key: cmd-42" \ -d '{ "amount": 10000, "payer": { "phone": "+2290197000000", "operator": "mtn" } }'
HTTP/1.1 201 Created { "status": "processing", "latest_attempt": { "status": "pending", "payer_message": "Validez sur votre téléphone." } }
HTTP/1.1 400 Bad Request { "error": { "type": "invalid_request_error", "code": "parameter_invalid", "param": "amount", "message": "« amount » : un entier positif.", "request_id": "req_01j9x3t8m2k4c7vd9qhs" } }
Un paiement réussi, un retrait versé, un remboursement échoué : Payiz vous l’envoie aussitôt, signé.
import { Payiz } from 'payiz' const payiz = new Payiz(process.env.PAYIZ_CLE) const paiement = await payiz.payments.create({ amount: 10000, currency: 'XOF', reference: 'cmd-42', }) redirect(paiement.payment_url)
import { Payiz } from 'payiz' const payiz = new Payiz(process.env.PAYIZ_CLE) const paiement = await payiz.payments.create({ amount: 10000, currency: 'XOF', reference: 'cmd-42', }) redirect(paiement.payment_url)
$payiz = new \Payiz\Payiz(getenv('PAYIZ_CLE')); $paiement = $payiz->payments->create([ 'amount' => 10000, 'currency' => 'XOF', 'reference' => 'cmd-42', ]); header('Location: ' . $paiement['payment_url']);
Les clés sk_test_ parlent à un simulateur : aucun franc ne bouge, les webhooks partent quand même. Les deux derniers chiffres du numéro choisissent ce qui arrive.
Le réel s’ouvre avec la vérification de votre compte. Dans votre code, seule la clé change : sk_live_ à la place de sk_test_.
Les mêmes fins de numéro valent pour le paiement direct.
Ajoutez .md à l’adresse d’une page : le texte brut, sans habillage.
L’index de la documentation, dans le format que les modèles connaissent.
Branchez-le dans Claude Code, Cursor ou Devin : la doc devient un outil.
Ajoutez .md à l’adresse d’une page : le texte brut, sans habillage.
L’index de la documentation, dans le format que les modèles connaissent.
Branchez-le dans Claude Code, Cursor ou Devin : la doc devient un outil.
Une clé sk_test_, un appel, un reçu : la documentation vous prend par la main.