Endpoint : Reversement (Payout)

Cet endpoint est utilisé pour initier un transfert d'argent (cash-out) depuis votre compte partenaire vers le compte mobile money d'un bénéficiaire.

Authentification

L'authentification se fait via votre clé API partenaire, fournie dans l'en-tête (header) de la requête. Le format attendu est : Authorization: Bearer VOTRE_CLÉ_API.

⏳ Important : Temps de Réponse Variable

Cet endpoint ne retourne pas une réponse immédiate. Il attend activement le statut final de la transaction (Succès ou Échec) pendant un maximum de 20 secondes.

Nous vous conseillons de configurer un timeout d'au moins 30 secondes sur votre client HTTP pour éviter les erreurs de connexion expirée.

Le champ `state` dans la réponse

Le champ `state` dans la réponse finale peut avoir 3 valeurs :

  • SUCCESSFUL : Le reversement a été effectué avec succès.
  • FAILED : Le reversement a échoué.
  • PENDING : Le statut final n'a pas pu être obtenu après 20 secondes. Le statut final sera notifié plus tard sur votre URL d'IPN si elle est configurée.

URL complète :

https://paylink.pixelinnov.net/api/public-reversement

Paramètres du Corps de la Requête

ParamètreDescription
destinationNuméro de téléphone du destinataire.
amountMontant de la transaction.
country_codeCode ISO du pays (ex: 'CI', 'SN', 'ML', 'BF', 'BJ', 'GC', 'TG', 'CM').
operator_nameNom de l'opérateur en minuscules (ex: 'orange', 'wave').
recipient_nameNom complet du bénéficiaire.

Exemple de Requête (cURL)

curl --location 'https://paylink.pixelinnov.net/api/public-reversement' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer VOTRE_CLÉ_API' \
--data '{
    "destination": "0778261090",
    "country_code": "CI",
    "operator_name": "wave",
    "amount": 20,
    "recipient_name": "Nom du Bénéficiaire"
}'

Exemple de Réponse (Succès)

{
    "success": true,
    "message": "Reversement public enregistré.",
    "reversement": {
        "_id": "68c15298a5cf56d6867b448f",
        "userId": "6890c8068dc2bddee412bf5c",
        "client_name": "reversement pub paylink",
        "destination": "0778261090",
        "operator_name": "wave",
        "country_code": "CI",
        "amount": 20,
        "transaction_id": "PIXPAY_19275913",
        "state": "SUCCESSFUL",
        "createdAt": "2025-09-10T10:27:36.658Z"
    }
}

Intégration WordPress / WooCommerce

Acceptez les paiements Pixpay sur votre boutique WooCommerce en quelques minutes grâce à notre plugin officiel.

Télécharger le plugin (.zip)

Prérequis techniques

  • WordPress version 5.0 ou supérieure
  • WooCommerce version 3.0 ou supérieure
  • Version PHP 7.2 ou supérieure
1

Installation du Plugin

La méthode la plus simple consiste à utiliser le gestionnaire d'extensions WordPress.

  1. 1.Connectez-vous à votre administration WordPress.
  2. 2.Allez dans Extensions > Ajouter.
  3. 3.Cliquez sur Téléverser une extension en haut de la page.
  4. 4.Sélectionnez le fichier pixpay-gateway.zip téléchargé et cliquez sur Installer maintenant.
  5. 5.Une fois installé, cliquez sur Activer.
2

Configuration API

Allez dans WooCommerce > Réglages > Paiements et sélectionnez Pixpay Gateway.

Clé API Pixpay

Copiez votre clé depuis votre dashboard Pixpay et collez-la ici.

Mode Test

Activez cette option pour simuler des transactions sans débit réel durant le développement.

Redirections & Webhooks

Les URL de retour et les Webhooks sont configurés automatiquement par le plugin. Ne les modifiez que si vous avez une configuration spécifique.

Validation & Tests

  • Ajoutez un produit au panier et procédez au paiement.
  • Choisissez Pixpay comme méthode de paiement.
  • Vérifiez que la commande passe au statut 'En cours' ou 'Terminée' dans WooCommerce.

Vérification du Hash

Pour garantir l'authenticité des notifications IPN, un hash est inclus.

🔐 Comment vérifier le hash ?

  1. Concaténation: cléAPI + transaction_id
  2. Hachage: Appliquez l’algorithme SHA256.
  3. Vérification: Comparez le résultat avec le hash reçu.

Ce mécanisme sécurise vos traitements.

Statut des transactions

Cette API n'est pas le canal dédié pour l'obtention des statuts. Vous devez configurer dans votre payload un lien fonctionnel pour recevoir les statuts.

À utiliser avec parcimonie (abus = blocage).

URL : https://proxy-coreapi.pixelinnov.net/api_v1/transaction/status

Verbe : POST

Content-Type : application/json

Corps de la requête :

{
  "api_key": "xxx",
  "transaction_ids": "xxx"
}

Exemple de réponse :

{
  "data": {
    "transaction_id": "EFB.001158",
    "amount": 3005,
    "benefice": 3005,
    "comission": 0,
    "destination": "0777321219",
    "fee": 0,
    "error": "",
    "service_id": 10,
    "customer_name": "easytransfert",
    "state": "FAILED",
    "custom_data": "custom_data",
    "ipn_url": "",
    "provider_id": null,
    "created_at": "2022-09-27T07:07:47.000+00:00",
    "updated_at": "2022-09-27T07:07:47.000+00:00",
    "p_last_wallet_amount": "xxx",
    "p_new_wallet_amount": null,
    "p_id": 1,
    "hash": null
  },
  "message": "",
  "statut_code": 200
}

Moyens de paiement

PaysMoyen de paiementDescriptionDeviseStatut
Côte d'IvoireOMOrange Money CIXOFOK
MOMOMTN Mobile Money CI
FLOOZMoov Money CI
WAVEWAVE CI
VISAMVISA/MasterCard
SénégalWAVEWAVE SNXOFOK
OMOrange Money SN
FREEFree Money SN
VISAMVISA/MasterCard
MaliOMOrange Money MaliXOFOK
FLOOZMoov Money Mali
VISAMVISA/MasterCard
Burkina FasoOMOrange Money BurkinaXOFOK
FLOOZMoov Money Burkina
VISAMVISA/MasterCard
BéninMOMOMTN Mobile Money BéninXOFOK
FLOOZMoov Money Bénin
VISAMVISA/MasterCard
Guinée ConakryMOMOMTN Mobile Money GuinéeGNFOK
OMOrange Money Guinée
TogoTMONEYTmoney TogoXOFOK
FLOOZMoov Money Togo
VISAMVISA/MasterCard
CamerounOMOrange Money CamerounXAFOK
FLOOZMoov Money Cameroun
VISAMVISA/MasterCard

Gammes de montants par pays

PaysMontant MinMontant MaxDevise
Côte d'Ivoire2001 500 000XOF
Sénégal200200 000 (si compte plafonné) 2 000 000 (si compte déplafonné)
Togo5001 500 000
Bénin5001 500 000
Mali5001 500 000
Burkina Faso5001 500 000
Cameroun (XOF)5001 500 000
Cameroun (XAF)5001 500 000XAF
Guinée1 00015 000 000GNF

Codes USSD par pays/opérateur

PaysOpérateurSyntaxeNote
Côte d'IvoireOrange Money CI#144*82#Paiement par code OTP
Mtn Mobile Money CI*133#À composer après réception du SMS de débit
Moov money CINONConfirmation par code secret après réception du SMS push
Wave CINONConfirmation par QR Code
SénégalOrange Money SN#144#391#Paiement par code OTP
EXPRESSOSN*444*3*3#À composer après réception du SMS de débit
FreeSnNONConfirmation par code secret après réception du SMS push
Wave SNNONConfirmation par QR Code
MaliOrange Money ML#144#77#Paiement par code OTP
Moov Money MLNONConfirmation par code secret après réception du SMS push
TogoTmoney TGNONConfirmation par code secret après réception du SMS push
Flooz TGNONConfirmation par code secret après réception du SMS push
BeninMoov BJ*855*7*8#Confirmation par code secret après réception du SMS push
MTN BJNONConfirmation par code secret après réception du SMS push
Burkina FasoOrange Money BF*144*4*6*100#Paiement par code OTP
Moov money BF*555*6#Confirmation par code secret après réception du SMS push
CamerounOrange Money CM#150*50#Confirmation par code secret après réception du SMS push
Express union CMNONConfirmation depuis l'application
Mtn Money CM*126#Confirmation par code secret après réception du SMS push
RD CongoOrange Money CDNONConfirmation par code secret après réception du SMS push
M PESA CDNONConfirmation par code secret après réception du SMS push
Airtel Money CDNONConfirmation par code secret après réception du SMS push
GuinéeOrange Money ML#144#, Choix option 4 et l'option 2Paiement par code OTP
MTN GNNONConfirmation par code secret après réception du SMS push