💸Initialiser un transfert

Utilisation de l'API de Transfert Moneroo

Avec l'API de transfert Moneroo, vous pouvez envoyer de l'argent à vos clients. Cette API est utile pour les remboursements, les remises, les paiements de salaires, etc.

Fonctionnement

  1. Depuis votre serveur, envoyez une requête POST à l'API de transfert Moneroo avec les détails du transfert.

  2. Moneroo traite la demande via la passerelle de paiement appropriée en fonction de la méthode de transfert définie.

  3. Moneroo vous envoie une réponse indiquant l'état du transfert.

Étape 1 : Collecte des données du transfert

Tout d'abord, vous devez collecter les détails du transfert qui seront envoyés à notre API sous la forme d'un objet JSON.

Voici les champs à collecter :

Nom du champ
Type
Obligatoire
Description

amount

integer

Oui

Le montant du transfert.

currency

string

Oui

description

string

Oui

Description du transfert.

method

string

Oui

customer

object

Oui

Détails sur les clients.

customer.email

string

Oui

Adresse e-mail du client.

customer.first_name

string

Oui

Prénom du client.

customer.last_name

string

Oui

Nom du client.

customer.phone

integer

Non

customer.address

string

Non

Adresse du client.

customer.city

string

Non

Ville du client.

customer.state

string

Non

État du client.

customer.country

string

Non

customer.zip

string

Non

Code postal du client.

metadata

array

Non

Données supplémentaires pour le transfert.

Étape 2 : Ajouter des champs obligatoires pour des méthodes de transfert spécifiques

Chaque méthode de paiement a ses propres champs obligatoires. Veuillez consulter la liste des méthodes de transfert prises en charge pour connaître les champs requis pour chaque méthode de paiement.

Par exemple, pour la méthode mtn_bj (MTN Mobile Money Bénin) , vous devez ajouter les champs suivants :

  • msisdn : Le numéro de téléphone MTN Mobile Money Benin du client où l'argent sera envoyé.

Étape 3 : Envoi de la demande de transfert

Ensuite, lancez le transfert en appelant notre API avec les détails du transfert collectés (n'oubliez pas d'autoriser la requête avec votre clé secrète).

Exemple de demande :

POST /v1/payouts/initialize
Host: https://api.moneroo.io
Authorization: Bearer YOUR_SECRET_KEY
Content-Type: application/json
Accept: application/json
{
    "amount": 1000,
    "currency": "XOF",
    "description": "Order refund",
    "customer": {
        "email": "john@example.com",
        "first_name": "John",
        "last_name": "Doe"
    },
    "phone": "22912345678",
    "metadata": {
        "payout_request": "123",
        "customer_id": "123"
    },
    "method": "mtn_bj"
}

Exemple de réponse :

{
  "success": true,
  "message": "Payout transaction initialized successfully",
  "data": {
    "id": "5f7b1b2c-1b2c-5f7b-0000-000000000000"
  }
}

Étape 4 : Après l'envoi de la demande de transfert

D'accord, voici le texte révisé :


Une fois le transfert effectué (avec ou sans succès), trois choses se produisent :

  1. Nous vous enverrons un Webhook si vous l'avez activé. Pour plus d'informations sur les Webhooks et pour voir des exemples, consultez notre guide sur les Webhooks.

  2. Nous vous enverrons un email (sauf si vous l'avez désactivé).

  3. Côté serveur, vous pouvez vérifier la transaction en appelant notre API avec l'ID de la transaction.

Si vous avez activé les Webhooks, nous vous enverrons une notification pour chaque transfert échoué. C'est utile si vous souhaitez contacter les clients ultérieurement ou effectuer d'autres actions. Consultez notre guide sur les Webhooks pour un exemple.

Exemple

  • N'oubliez pas de remplacer YOUR_SECRET_KEY par votre véritable clé secrète.

  • Tous les exemples suivants doivent être réalisés dans le backend, ne jamais exposer votre clé secrète au public.

cURL

curl -X POST https://api.moneroo.io/v1/payments/initialize \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer YOUR_SECRET_KEY" \
     -H "Accept: application/json" \
     -d '{
         "amount": 100,
         "currency": "USD",
         "description": "Payment for order #123",
         "customer": {
             "email": "john@example.com",
             "first_name": "John",
             "last_name": "Doe"
         },
         "return_url": "https://example.com/payments/thank-you",
         "metadata": {
             "order_id": "123",
             "customer_id": "123"
         },
         "methods": ["qr_ngn", "bank_transfer_ngn"]
     }'

Last updated