#Webhook issues

1 messages · Page 1 of 1 (latest)

leaden lava
#

Idk why my last post was deleted without any help. I have been able to stimulate all 11/12 of the webhooks in test mode leaving subscription.expired which i believe it the option on the product page i set to 19 years that is max. But this aside, in test mode payment.processing on an upgrade will never succeed, it remains in processing forever, why is that? Also why is the failure@upi not stimulating failure and firing a webhook for payment.failed or whatever?? The docs and sentra do not answer any of these issues.

elfin vectorBOT
#

It looks like you're encountering a couple of issues with Dodo Payments webhooks in test mode. Let's address them one by one:

  1. Payment Processing Stuck in Test Mode:

    • This can happen if there is an issue with the configuration or the test environment. First, ensure that the API keys and webhook URLs are correctly configured. Also, check if the webhook signing key matches and that your server can receive incoming webhook requests.
    • It's also important to verify that the webhooks are set up correctly in the Dodo Payments dashboard under the Developers > Webhooks section.
  2. Failure at UPI Not Firing payment.failed Webhook:

    • Dodo Payments does not currently support UPI for subscription payments, which might explain why you're not seeing the expected behavior for UPI-related failures.
    • Ensure that your webhook endpoint is correctly configured to handle payment.failed events. This involves verifying the webhook signature and ensuring your server is set up to process these events.
  3. Subscription Expired Webhook:

    • The subscription.expired webhook is triggered when a subscription reaches its expiration date. If you've set the expiration to a very long period (like 19 years), this webhook will not be triggered until that period ends【4:0†openapi.txt】【4:8†openapi.txt】.

To resolve these issues, I recommend the following steps:

  • Double-check your webhook configuration in the Dodo Payments dashboard.
  • Ensure your test environment is set up correctly with valid API keys and webhook URLs.
  • Test your webhook endpoint locally using tools like ngrok to expose your local server to the internet.
  • Review the logs on your server to ensure webhooks are being received and processed correctly.

If issues persist, consider reaching out to Dodo Payments support for further assistance.

Helpful Links:

#
Dodo Payments Documentation

Understand the different webhook events triggered by Dodo Payments during payment, refund, subscription, dispute, and license key activities

Dodo Payments Documentation

Learn how to test your Dodo Payments integration

Dodo Payments Documentation

The complete payments & billing platform for SaaS, AI, and digital products. Accept payments globally, set up flexible billing models, and monetize your product in minutes - all without building your own infrastructure.

leaden lava
#

@errant dune

#

This is test mode as you can see. for upi it gets stuck on processing

#

So there is no way to know which event is fired after a success or failure

#

im assuming a payment.succeeded should fire after processing but the screenshot i showed back in 29th nov it still remains processing

#

also this is only upi issue. cards seem to work fine

errant dune
#

Ok click on the event and get me payment id

#

Payment processing one

leaden lava
#

pay_q2kX1FoGjAWn1gPpG6Ong

#

this should be it

errant dune
#

Ok, Got the issue

leaden lava
#

so?

errant dune
#

It was making a UPI payment in test mode, and it was an UPI AutoPay transaction and subscription . The status moved to processing because, as per RBI guidelines, mandate deductions for UPI AutoPay take up to 48 hours before the amount is actually debited from the user’s account.
After this 48-hour window, the payment will succeed.
That is why the status shows processing, and the webhook event sent was payment.processing.
refer this -
https://docs.dodopayments.com/features/subscription#48-hour-processing-delay

Dodo Payments Documentation

Offer recurring billing for memberships, SaaS, or services with flexible cycles, trials, proration, add-ons, and on‑demand charges.

leaden lava
#

yes... but i showed u a screenshot of the one i did on 29th of november

#

im already aware of the 48 wait

errant dune
#

Share that payment id will check

leaden lava
#

ok sec

#

pay_flQRxEXP9AqwLzG7LV9Ja

#

here

#

sorry wrong one that is card

#

pay_HLjLRT5PipPHDGTbe2j2n

#

this is the one

#

well over 1 week still processing. Some of them go into customer action required but its very random when that happens

errant dune
#

Bro this id - pay_HLjLRT5PipPHDGTbe2j2n

as authication issue use proper card from dcos

#

pay_flQRxEXP9AqwLzG7LV9Ja - this tooo

leaden lava
#

its upi though

leaden lava
errant dune
#

Sorry, just sec

leaden lava
#

but these are all 10 days old so i may i have cancellled them so if your trying to push it foward it may not work

errant dune
#

No I am not

#

i just checking the cause

leaden lava
#

ok

errant dune
#

yes, they are old and subscription or cancelled right now

leaden lava
#

here is another one i did 2nd december this one went "on hold"

payment_id: pay_JNlgOMD5kmFNecYKdgWHa (still active)

errant dune
#

Please check for this payment - pay_q2kX1FoGjAWn1gPpG6Ong

if issue persist please let me know

leaden lava
#

could you check the one above i shared. that is still active not cancelled

leaden lava
errant dune
leaden lava
errant dune
#

Just sec

leaden lava
#

this one isnt cancelled. it was done on 2nd december via upi in test mode

#

@errant dune if its taking time to find the issue could you just answer these questions:

  1. which webhooks will fire when payment has been recieved via upi? This way i can write my code knowing what to wait for on live test.

  2. I know that the upgrade fee is auto debited from that user without needing their confirmation. In the case their bank didnt have enough money to pay the upgrade, will the fee still be taken from them sending them into negative net? that way our end of the process is handled, or will them not being able to pay the fee send a payment failed event?

errant dune
#

1)Payment.successed

#

2)Payment will failed and Subscription moved to on-hold

leaden lava
#

or nevermind i think you would be required to finish the upgrade payment then it would resume monthly i believe?

#

thats to get the subscription out of "on_hold"

#

@errant dune do let me know the answer when you find time. its hard to proceed foward since the upi option doesnt work at all for upgrades in test mode.

errant dune
leaden lava
# errant dune anything else

yes could you just comfirm again, if the plan to renew when "on_hold" user is required to finish upgrade then it renews?

#

^this is for the upgrade part. As you explained it goes into hold if payment fails. So i was wondering for user to continue their subscription which is on hold, will they be required to finish the upgrade payment then in renews? This way i can decide if i should give the plan on plan_changed webhook or payment_suceeded.

leaden lava
# errant dune Yes

ok last question sorry for the trouble 😂

so

upgrade that is on hold -> renew = finish upgrade then it renews

upgrade that is on hold -> cancel now or at eoc = ?

Does that skip the upgrade payment part and close the subscription?

leaden lava
#

@errant dune let me know whenever free to the question above and below

Also Would you recommend giving upgraded plan to user on plan_changed or only after payment suceeded?

This is mostly upi/india issues. That would conclude all my doubts.

Thanks

leaden lava
#

any update @errant dune

errant dune
#

this is for the upgrade part. As you explained it goes into hold if payment fails. So i was wondering for user to continue their subscription which is on hold, will they be required to finish the upgrade payment then in renews? This way i can decide if i should give the plan on plan_changed webhook or payment_suceeded.

It depends on your preference: if you want to provide immediate access after the upgrade, you can do that and let the payment complete later.

Alternatively, you can wait and give access only after receiving the payment.succeeded event.

#

Anything else?

errant dune
#

upgrade that is on hold -> renew = finish upgrade then it renews

upgrade that is on hold -> cancel now or at eoc = ?

can you eloabarte more this?

leaden lava
#

so if payment failed for upi upgrade because user doesnt have money in the card it will go onto hold. Lets say user doesnt pay for the upgrade and cancels the plan at eoc. Will the upgrade fee not be taken at all?

leaden lava
#

upi

errant dune
#

if payment fails due to some reason the subscription moved on-hold -> which means subscrition cant be accessed -> no charge

#

Is it clear?

leaden lava
#

so the subscription simply gets locked, then it would be bad idea to give user upgraded plan on plan_changed webhook because its like giving free plan to upi users which could fail or can be used as an exploit.

Thanks I can work with this 👍

leaden lava
errant dune
#

It stay on-hold forever

#

Until you manually cancel it

leaden lava
#

thanks

leaden lava