#PKatta

1 messages · Page 1 of 1 (latest)

trim swallowBOT
sinful lynx
#

Hi 👋

Do you have an event ID as an example I can review? I think I know why but I just want to double check

burnt garden
#

yes getting it for you

sinful lynx
#

The reason I'm pretty sure you don't get an idempotency key with ACH completion is that it's an async confirmation. The actual request that confirms it isn't one you make. With Card payment methods it's a synchronous confirmation so we can directly tie the succeeded event back to your request.

#

Right, yes. That is because the completion of this payment is not a direct response to the request you made, so the request hash is not populated with data.

burnt garden
#

so how can we guard against multiple webhook notifications for the same transaction?

sinful lynx
#

What do you mean "guard against" webhook notifications?

#

If you provision services in response to webhooks, wouldn't you have the data needed to determine if this service has already been provisioned?

burnt garden
#

We figured out another way. This is to guard against someone manually triggering a webhook to be delivered again.

We store the paymentIntent ID and a boolean value in our database. As soon as we sucessfully process a webhook for a particular paymentIntent ID to true. At the start we check against that flag. That will allow us to guard against duplicated processing.

#

Thanks for you help. You can close this topic.

sinful lynx
#

This is to guard against someone manually triggering a webhook to be delivered again.
This would only be able to be done via your Stripe Dashboard. Is this a concern for your business?

burnt garden
#

yes and no. We just wanted to be defensive..

sinful lynx
#

Smart, I can understand that.

burnt garden
#

Thx for your help.