💳 YamoMarket Pay

📖 Documentation API v2

API REST compatible avec la structure CinetPay : mêmes conventions (apikey, site_id, transaction_id, code réponse 201/00).

POST /v2/payment

Initie un paiement. Corps JSON :

{
  "apikey": "VOTRE_API_KEY",
  "site_id": "VOTRE_SITE_ID",
  "transaction_id": "CMD-202609-0042",
  "amount": 15000,
  "currency": "XOF",
  "description": "Commande #42",
  "channels": "ALL | WAVE_CI | ORANGE_MONEY_CI | MTN_MONEY_CI | MOOV_MONEY_CI",
  "customer_phone_number": "0708091011",
  "notify_url": "https://votre-site.tld/webhook",
  "return_url": "https://votre-site.tld/merci"
}

Réponse 201 :

{
  "code": "201",
  "message": "CREATED",
  "data": {
    "payment_token": "…",
    "payment_url": "https://checkout.yamomarket-pay.ci/?token=…"
  }
}

POST /v2/payment/check

Vérifie le statut d'une transaction. Réponse 00 :

{
  "code": "00",
  "message": "SUCCES",
  "data": { "transaction_id": "…", "status": "ACCEPTED | PENDING | REFUSED" }
}

POST /v2/webhook (votre notify_url)

Notification serveur → serveur signée HMAC-SHA256 (en-tête x-token). C'est ici — et jamais côté navigateur — que vous créditez la commande :

{
  "data": {
    "transaction_id": "CMD-202609-0042",
    "status": "ACCEPTED",
    "payment_token": "…",
    "amount": 15000,
    "currency": "XOF"
  }
}

Codes de canaux

CanalOpérateurUSSD
WAVE_CI🌊 WaveApp / QR
ORANGE_MONEY_CI🟠 Orange Money#144#
MTN_MONEY_CI🟡 MTN MoMo*133#
MOOV_MONEY_CI🔵 Moov Money*155#

Codes de réponse

CodeSignification
201Paiement créé (rediriger vers payment_url)
00Requête de vérification réussie
401Identifiants invalides (apikey / site_id)
609Transaction introuvable
403Signature webhook invalide