• Resolved leverager

    (@leverager)


    I’m testing version 4 rc on our site and got an issue yesterday with the przelewy24.pl (P24) payment option going through and charging the customer, but then failing. After getting in touch with Stripe support it turns out the source was charged too early by the stripe plugin. Here is what Stripe support said:

    I’ve taken a look at your P24 payment, or rather its underlying carrier:

    This source object was set up properly and became chargeable – whence you received the message from P24 you’ve forwarded. In order for the source object to become chargeable the customer has to authorize the transferral of the funds during the redirect to the payment scheme. With this the funds are deducted from the customer’s bank account. At this point, normally, the Source object becomes chargeable and must be used within six hours. If a source is not charged within that time, its status is automatically transitioned to canceled and your integration receives a source.canceled webhook. When a source is canceled, the customer’s authenticated payment is refunded automatically—no money is moved into your account.

    Intriguingly enough in this case, the very same thing happened, but not because you’ve charged the source too late. Rather, you charged it too early. Note how your charge request came in at 23.14.55:

    At this point, the source had not been chargeable yet, as P24 took some time, it appears, to push funds. The source became chargeable four seconds after your charge request, at 23.14.59:

    To avoid this and get the timing right in the future, you can set your integration up such that it listens to the ‘source.chargeable’ Webhook. Since this only fires once the source is actually chargeable, you won’t miss it – neither in being early nor in being late.

    I assume this may also apply to the other sources payment methods you now support through the stripe plugin: Sepa, Sofort, Giropay etc..

    Hope this helps the devs nip this issue in the bud before the official release.

    Thanks,
    Chris

Viewing 3 replies - 1 through 3 (of 3 total)
  • Plugin Contributor royho

    (@royho)

    Thats exactly how we have implemented it. Our webhook is listening to source.chargeable. It does not process the charge right away.

    Thread Starter leverager

    (@leverager)

    Thanks for looking into this, I thought I would share my experience as our maiden payment with P24 failed on a live transaction.

    Plugin Contributor royho

    (@royho)

    After the redirect to your site, it checks if the source is chargeable at that time. If it is, it will charge it. If not, it will wait for the webhook to take care of it.

Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘Source charged too early issue – version 4.0’ is closed to new replies.