-
Dites, les gens qui utilisez Stripe, comment est-ce que vous gérez les webhooks et cie ? Je m’explique. […]
-
Les webhooks sont 100% générés par Stripe. Le seul champ éventuellement « métier » est le « metadata » présent un peu partout. Sauf qu’on n’a pas la main sur tout tout le temps. Typiquement les notifs de paiement de subscription, on ne peut modifier que les metadata subscription,
-
qui se retrouve dans le metadata payment.
-
Comme tout est globalement asynchrone, on se retrouve avec des évènements portant assez peu d’information pour comprendre le contexte du paiement. Et c’est d’autant plus pire depuis la quasi obligation de tout faire en asynchrone y compris le paiement initial, cause DSP & 2FA
-
obligatoire…
-
Du coup, je galère à mort pour associer un évènement Stripe (paiement réussi, réservation de crédit réussi, paiement échoué…) avec les évènements métiers correspondants (1ère souscription, renouvellement, renouvellement échoué…).
-
Ça ressemble fortement à de la divination, tu passes ta vie à tenter de trouver l’heuristique la moins pourrie pour décider dans quel cas tu te trouves… Et forcément, ça ne tombe jamais juste avec tout plein de cas particuliers à la con…
-
J’en arrive à envisager d’utiliser le champ metadata pour implémenter un mini-DSL couplé à un automate à états finis… Mais ça me semble… vraiment too much 🤣
aeris22’s Twitter Archive—№ 84,449