Référence de l'API
Notifications
Les e-mails et messages Telegram qu'Abuna a envoyés à vos clients.
Un avis est un e-mail ou un message Telegram qu'Abuna envoie à l'un de vos clients, comme un reçu ou un rappel de paiement. Abuna envoie un avis par canal.
L'objet notice
Attributs
idstringIdentifiant unique de l'avis.customer_idstringLe client à qui l'avis est destiné.subscription_idstringnullableL'abonnement concerné par l'avis.kindstringCe sur quoi porte l'avis :subscription_started: un nouvel abonnement, avec un lien pour payer sa première période. Envoyé 30 minutes après la création de l'abonnement, et seulement si le client n'a pas payé à ce moment-là.subscription_renewed: un renouvellement à payer, envoyé au début de sa période.renewal_upcoming: une période payée se termine bientôt. Envoyé quand la facture du renouvellement part avant la fin, avec son lien de paiement. Avecrenewal_lead_daysà 0 ou un passage à un tarif inférieur programmé, envoyé 3 jours avant la fin, sans lien de paiement.payment_overdue: une période est toujours impayée.payment_final_notice: le dernier rappel avant que l'abonnement soit annulé pour non-paiement.payment_received: un reçu. Quand le paiement met en vigueur une montée de formule, il indique aussi l'ancienne et la nouvelle formule. Pour une facture marquée payée, il indique que vous avez enregistré le paiement.payment_failed: un paiement a échoué après que le client a quitté la page de paiement. Au plus un par heure et par facture.subscription_cancel_scheduled: une annulation à la fin de la période payée a été programmée. Il donne la date de fin et comment conserver l'abonnement.subscription_cancel_undone: une annulation programmée a été annulée, donc l'abonnement continue.subscription_canceled: l'abonnement a pris fin.plan_change_offered: vous avez proposé un changement de formule au client. Il renvoie vers la page où il l'accepte.plan_upgraded: une montée de formule a pris effet sans paiement préalable : rien n'était dû, ou la nouvelle période est à payer via le lien de paiement qu'il donne. Il donne la nouvelle formule et la nouvelle date de facturation.plan_upgrade_due: une montée de formule attend que le client paie. Il donne le montant, la date limite de paiement et le lien de paiement.plan_downgrade_scheduled: un passage à un tarif inférieur a été programmé. Il donne la nouvelle formule et la date à laquelle elle commence.plan_downgrade_undone: un passage à un tarif inférieur programmé a été annulé, donc la formule se renouvelle telle quelle.price_change_scheduled: un tarif que le client paie change. Il donne le nouveau montant et la date à laquelle il s'applique pour la première fois à lui.price_change_canceled: un changement de tarif programmé a été annulé ou remplacé, donc le client continue de payer ce qu'il paie actuellement.contact_changed: le client a changé son e-mail ou son numéro de téléphone dans son espace client. Il va à l'ancienne adresse e-mail et à la conversation Telegram connectée.portal_links: le client a demandé des liens vers ses abonnements.
channelstringemailoutelegram.recipientstringL'adresse e-mail à laquelle il va. Vide pour Telegram, afin de garder la conversation du client privée.subjectstringLa ligne d'objet.statusstringpendingpendant qu'il attend d'être envoyé,sendingpendant qu'Abuna l'envoie,sent, oufailed.withdrawnquand il a cessé d'être vrai avant de partir, comme un rappel pour une période qui a été payée, ou un message Telegram à un client qui a déconnecté la conversation.attemptsintegerCombien de fois Abuna a essayé de l'envoyer.last_errorstringnullablePourquoi la dernière tentative a échoué, ou pourquoi l'avis a été retiré.next_attempt_attimestampQuand Abuna essaiera de l'envoyer à nouveau, tant qu'il estpending.created_attimestampQuand l'avis a été créé, en secondes Unix.sent_attimestampnullableQuand il a été envoyé.
{
"id": "e7JpT4cN",
"customer_id": "Cu5tM8rA",
"subscription_id": "x9QbL2sK",
"kind": "payment_received",
"channel": "email",
"recipient": "jane@example.com",
"subject": "Receipt from My store: FCFA 5,000 paid",
"status": "sent",
"attempts": 1,
"last_error": null,
"next_attempt_at": 1727600100,
"created_at": 1727600100,
"sent_at": 1727600102
}Lister les avis
GET/v1/apps/{appID}/notices
Liste les avis de l'application, du plus récent au plus ancien, une page à la fois.
Paramètres de requête
subscription_idstringRenvoie uniquement les avis concernant cet abonnement.statusstringRenvoie uniquement les avis avec ce statut :pending,sending,sent,failedouwithdrawn.limitintegerCombien de avis renvoyer, de 1 à 100. Par défaut : 50.cursorstringLa valeurnext_cursorde la page précédente. Envoyez les mêmes filtres avec.
Renvoie items et next_cursor, comme décrit dans Listes et filtres. Une valeur non autorisée, comme un limit supérieur à 100, renvoie 422 avec le code invalid et le nom du paramètre dans errors.
curl "https://api.abuna.app/v1/apps/8ddhXCDW/notices?subscription_id=x9QbL2sK" \
-H "Authorization: Bearer sk_test_..."{
"items": [
{
"id": "e7JpT4cN",
"customer_id": "Cu5tM8rA",
"subscription_id": "x9QbL2sK",
"kind": "payment_received",
"channel": "email",
"recipient": "jane@example.com",
"subject": "Receipt from My store: FCFA 5,000 paid",
"status": "sent",
"attempts": 1,
"last_error": null,
"next_attempt_at": 1727600100,
"created_at": 1727600100,
"sent_at": 1727600102
}
],
"next_cursor": null
}