#Unable to change plan ERROR: Cannot change plan as previous payment is not successful yet.

1 messages · Page 1 of 1 (latest)

warped warren
#

Trying to change a plan for a user with proration immediately

curl -X POST "https://live.dodopayments.com/subscriptions/$SUBSCRIPTION_ID/change-plan"
-H "Authorization: Bearer $DODO_PAYMENTS_API_KEY"
-H "Content-Type: application/json"
-d '{
"product_id": "PROD_ID_OF_NEW_45_PLAN",
"quantity": 1,
"proration_billing_mode": "prorated_immediately"
}'

via API call and Dodo dashboard but both fails. User has active subscription of 40$

i have created a new product 45$ which i want to upgrade to Please help. @shadow laurel

frail turtleBOT
# warped warren Trying to change a plan for a user with proration immediately curl -X POST "h...

Your request looks correct — this usually fails due to payment or product config issues, not the API format.

Check these quickly:

  • Payment method on subscription

    • prorated_immediately triggers an instant charge
    • If the customer has no valid payment method, it fails
    • Try adding:
      • "on_payment_failure": "prevent_change" (to see failure cleanly)
  • Product mismatch

    • Ensure the new $45 product:
      • Same billing interval (monthly vs yearly)
      • Same currency
    • Mismatches will cause plan change failure
  • Subscription state

    • Must be active
    • Not past_due, incomplete, or canceled
  • Try safer proration mode

    • Use "difference_immediately" instead
    • More reliable for upgrades (charges only $5 delta)
  • Check API error response

    • Dodo returns a specific error (payment_failed, invalid_product, etc.)
    • That message is key — share it if still stuck

If it still fails, paste the exact API error — that’ll pinpoint it fast.

warped warren
#

@shadow laurel I think if someone can remve that require payment method entry from DB i can initiate plan change.

shadow laurel
#

Yeah, got it. Let me check with the team on this on Monday.

warped warren
#

@shadow laurel update?

warped warren
#

@crimson birch @shadow laurel @remote vigil Client is awaiting payment. Service is disrupted.

shadow laurel
#

It seems the customer initiated an update to the payment method but did not complete the process. As a result, the payment has been marked as requires_payment_method. Please ask your customer to try updating the payment method again and ensure the payment is successful. After that, they can proceed with the plan change.

warped warren
#

Can you share me the steps i send out to customer?

#

@shadow laurel I think same message you have drafted at around 1pm and then sent and deleted and then send back again at 2:35

Very disappointed support experience @jovial karma Note this please.

#

This message could have been sent out to me yesterday only.

shadow laurel
shadow laurel
warped warren
#

@shadow laurel Can you please check for this customer payment is not going through:

Subscription ID: sub_0NfbA0BvJheYA0m6XoTam
Customer ID: cus_0NfbA0BnmGrFrpT7pUo2S

He tried updating payment method multiple times and error is not clear enough