Introduction
L’intégration Customer.io envoie les événements Dodo Payments à la Track API de Customer.io, afin que les paiements et les modifications d’abonnement puissent déclencher des campagnes et des parcours client. Par exemple, un nouveau client peut recevoir un e-mail de bienvenue, une modification d’abonnement peut envoyer une mise à jour et un paiement échoué peut envoyer une notification.Cette intégration nécessite votre Customer.io Site ID et votre clé API. La Track API utilise l’authentification HTTP Basic, avec le Site ID comme nom d’utilisateur et la clé API comme mot de passe.
Prise en main
1
Open the Webhook Section
Dans le dashboard Dodo Payments, accédez à Developer → Webhooks et cliquez sur Add endpoint.

2
Select Customer.io
Dans Integration, sélectionnez CustomerIO.
3
Enter Credentials
Dans API key, collez votre clé API Customer.io. Dodo Payments envoie la clé dans l’en-tête
Authorization sous forme de bearer token.La Track API attend une authentification Basic. Si les livraisons échouent avec un 401, ouvrez l’onglet Advanced de l’endpoint et remplacez l’en-tête Authorization par Basic suivi de l’encodage Base64 de site_id:api_key.4
Select Events
Dans Subscribed events, sélectionnez les événements gérés par votre transformation. Les exemples de cette page utilisent
payment.succeeded, subscription.active et subscription.cancelled.5
Configure Transformation
Dans Transformation code, modifiez le gestionnaire pour formater les événements destinés à la Track API de Customer.io. Commencez par les exemples.
6
Test & Create
Dans Test this code, cliquez sur Simulate pour exécuter le gestionnaire avec un exemple de payload. Cliquez ensuite sur Create endpoint.
7
Done
Les événements auxquels vous êtes abonné parviennent désormais à Customer.io, où ils peuvent déclencher vos automatisations e-mail.
Exemples de code de transformation
Chaque gestionnaire envoie une requête à l’endpoint Track API v2entity et identifie la personne à l’aide de l’customer_id Dodo Payments. Pour enregistrer un événement, la requête définit action sur event et place le nom de l’événement dans name. Pour mettre à jour les attributs d’une personne, elle définit action sur identify. Les montants Dodo Payments sont exprimés dans la plus petite unité monétaire, c’est pourquoi les exemples les divisent par 100.
Suivre les événements de paiement
Enregistrez un événementpayment_completed lorsqu’un paiement est réussi :
track_payments.js
Suivre le cycle de vie d’un abonnement
Enregistrez un événementsubscription_started lorsqu’un abonnement devient actif et un événement subscription_cancelled lorsqu’il est annulé :
track_subscriptions.js
Suivre les attributs client
Mettez à jour les attributs du profil de la personne lorsqu’un paiement est réussi. Chaque requêteidentify remplace les attributs qu’elle envoie. last_payment_amount et last_payment_date contiennent donc toujours les informations du dernier paiement.
track_attributes.js
Conseils
- Utilisez les mêmes noms d’événements dans la transformation et dans les déclencheurs de vos campagnes Customer.io, par exemple
payment_completed. Choisissez des noms qui décrivent ce qui s’est produit. - Incluez les attributs utilisés par vos messages pour la personnalisation.
- Identifiez chaque personne avec le même ID dans toutes les requêtes. Les exemples utilisent l’
customer_idDodo Payments. - Pour connaître tous les champs de requête, consultez la référence de la Customer.io Track API.
Résolution des problèmes
Events Not Triggering Campaigns
Events Not Triggering Campaigns
- Vérifiez que le Site ID et la clé API sont corrects.
- Si les livraisons échouent avec un
401, définissez l’en-têteAuthorizationsur l’authentification Basic, comme indiqué dans Premiers pas. - Vérifiez que les noms d’événements correspondent aux déclencheurs de vos campagnes Customer.io.
- Vérifiez que les identifiants client sont définis.
- Consultez les limites de débit de l’API Customer.io.
Transformation Errors
Transformation Errors
- Vérifiez que le payload respecte le format de l’API Customer.io.
- Vérifiez que tous les champs obligatoires sont présents et que
actioncorrespond à une action prise en charge par la Track API, telle queeventouidentify. - Vérifiez que les noms d’événements et les attributs sont correctement formatés.