Passer au contenu principal

Endpoint

POST https://pay.sandbox.yabetoopay.com/v1/account/{accountId}/webhooks   # Sandbox
POST https://pay.api.yabetoopay.com/v1/account/{accountId}/webhooks       # Production

Authentification

Utilisez votre clé secrète dans l’en-tête Authorization :
Authorization: Bearer YOUR_SECRET_KEY

Paramètres de chemin

ParamètreTypeDescription
accountIdstringVotre ID de compte

Corps de la requête

ParamètreTypeObligatoireDescription
urlstringOuiURL de l’endpoint webhook
descriptionstringNonDescription du webhook
enabled_eventsarrayOuiListe des événements à recevoir
metadataobjectNonDonnées personnalisées

Exemple de requête

curl -X POST https://pay.sandbox.yabetoopay.com/v1/account/YOUR_ACCOUNT_ID/webhooks \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_SECRET_KEY" \
  -d '{
    "url": "https://example.com/webhooks",
    "description": "Webhook de production",
    "enabled_events": [
      "intent.completed",
      "disbursement.completed"
    ],
    "metadata": {
      "environment": "production"
    }
  }'

Réponse

200 OK

{
  "id": "whk_123456789",
  "object": "webhook",
  "url": "https://example.com/webhooks",
  "description": "Webhook de production",
  "status": "active",
  "secret": "whsec_XXXXXXXXXXXXXXXXXXXXXXXX",
  "enabled_events": [
    "intent.completed",
    "disbursement.completed"
  ],
  "metadata": {
    "environment": "production"
  },
  "created_at": "2023-05-12T10:12:32Z"
}

Événements disponibles

ÉvénementDescription
intent.completedPaiement reçu avec succès
disbursement.completedDécaissement traité avec succès

400 Mauvaise requête

{
  "errors": [
    {
      "rule": "required",
      "field": "url",
      "message": "required validation failed"
    }
  ]
}

401 Non autorisé

{
  "message": "Unauthorized"
}
Conservez précieusement le secret du webhook. Il est nécessaire pour vérifier l’authenticité des notifications reçues.