J'ai configuré Stripe
paiements dans mon Java Spring MVC Web Application
. Je suis en mesure d'ajouter un Customer
, créez un Plan
et également mis en place Subscriptions
pour le client. Depuis que j'ai des paiements récurrents, je voudrais envoyer une notification par e-mail aux clients une fois une facture est générée et aussi une fois le paiement est effectué. À partir des documentations Stripe, les types d'événements dont j'ai besoin sont invoice.upcoming.
, invoice.payment_succeeded
et customer.subscription.trial_will_end
puisque j'ai une période d'essai pour quelques plans.Utiliser Stripe webhook pour envoyer des données client obtenir pour les paiements récurrents à l'aide Stripe
J'ai ajouté un point de terminaison webhook dans mon application comme suit:
@ResponseBody
@RequestMapping(consumes="application/json", produces="application/json", method=RequestMethod.POST, value="/webhook-endpoint")
public Response stripeWebhookEndpoint(@RequestBody String stripeJsonEvent)
{
Event event = Event.GSON.fromJson(stripeJsonEvent, Event.class);
String type = event.getType();
StripeObject stripeObject = event.getData().getObject();
return Response.status(Response.Status.OK).build();
}
Je suis en train d'obtenir le event type
et aussi le customer Id
pour que je serai en mesure d'obtenir le client de ma base de données et envoyer notification par e-mail basée sur l'événement. Depuis que je suis mon url webhook dans mon localhost
, je suis incapable de déclencher des données réelles de rayure. J'ai aussi été incapable de trouver des données échantillon des documents Stripe: https://stripe.com/docs/api#invoice_object. J'ai aussi essayé Retrive stripe data from stripe webhook event, mais incapable de le tester sans quelques exemples de données.
Y a-t-il un moyen d'obtenir les détails requis de l'événement et de le tester sur mon hôte local.
merci pour la réponse, mais comment puis-je obtenir le numéro de client de l'objet de l'événement.Lorsque j'essaie event.getUserId(), il affiche La méthode getUserId() du type Event est obsolète. Tout ce dont j'ai besoin pour le moment, c'est le type d'événement et l'identifiant client pour pouvoir envoyer un email à ce client. –
Selon l'exemple JSON précédent de ma réponse, si le type d'événement est 'invoice.upcoming', vous pouvez analyser le JSON les données que vous obtenez du webhook et lisez la propriété 'data.object.customer' pour obtenir l'identifiant du client. Cela fonctionnerait-il pour votre cas d'utilisation? –
StripeObject stripeObject = événement.getData(). GetObject(); donnera l'objet. Je ne vois toujours pas de méthode pour obtenir le client de cet objet. –