While we want Stripe to do the heavy lifting of the payment processing, you want to know what has happened, and have it recorded in your Salesforce org, so that you can maintain it as your single source of truth. To do this, you will utilise webhooks from Stripe. Every time an event occurs in Stripe, if you have set up the webhooks correctly, you will receive all the necessary data into Salesforce, ready for PosiPay to update your records.
Please note that to avoid creating duplicate Gateway Events and to ensure successful Gateway Transaction and Gift Transaction processes, there should be only one webhook endpoint per Gateway Account in your org.
How to set up webhooks in the Stripe Dashboard
Go to Developers > Webhooks > Add endpoint.
When the Add endpoint is clicked, the image below will be shown.
Endpoint URL = Get the Webhook Endpoint URl from your Gateway Account record.
Listen to = Events on you account
Select events to listen to = Refer to the screenshots below for the adding of events.
Choose which Stripe Events to listen to
You must select which events to listen to for each Stripe object. There are 3 objects that PosiPay needs to listen to. Each object has different events, so carefully select only what is needed. Wherever possible, do not select all events available.
Charge
charge.failed
charge.pending
charge.refunded
charge.succeeded
charge.updated
Invoice
Please note: If the PosiPay version is 92 and above please do not include the invoice.created and invoice.updated event.invoice.created
invoice.payment_failed
invoice.payment_succeeded
invoice.updated
invoice.marked_uncollectible
Payouts
payout.failed
payout.paid
Payment
payment_intent.canceled
Next place to go: Step 5 - Schedule an Invoice