Stripe Payment Gateway failing for recurring subscriptions

3 years 8 months ago - 3 years 8 months ago #319420 by joomally
Hi,
When a customer sets up a recurring subscription using Stripe, the initial payment goes through but the subsequent ones do not. From what I can tell, this is because the payment method is stored against the customer, however it is not set to be the 'default' payment method. Therefore it is not automatically used for subsequent payments.

I received this message from Stripe support when I queried why a specific customer's payment did not go through:

The Payment Method was attached to the customer during the PaymentIntent Confirmation request by setting 'save_payment_method: true':

This parameter — 'save_payment_method: true' — is from before we built the default behavior of 'setup_future_usage'[0], which will automatically make these Payment Methods the default for the customer. This is why you will no longer see 'save_payment_method' as a documented parameter in our API Reference.

Thanks

Please Log in to join the conversation.

3 years 8 months ago #319424 by beat
Stripe API is versioned with support for previous API versions.

Please make sure to set same API versions on both CBSubs Stripe gateway and on Stripe.com side.

Then the parameter will be accepted and works fine, we have several community members using auto-recurring Stripe payments.

Beat - Community Builder Team Member

Before posting on forums: Read FAQ thoroughly -- Help us spend more time coding by helping others in this forum, many thanks :)
CB links: Our membership - CBSubs - Templates - Hosting - Forge - Send me a Private Message (PM) only for private/confidential info

Please Log in to join the conversation.

3 years 8 months ago - 3 years 8 months ago #319613 by krileon

I received this message from Stripe support when I queried why a specific customer's payment did not go through:

The Payment Method was attached to the customer during the PaymentIntent Confirmation request by setting 'save_payment_method: true':

This parameter — 'save_payment_method: true' — is from before we built the default behavior of 'setup_future_usage'[0], which will automatically make these Payment Methods the default for the customer. This is why you will no longer see 'save_payment_method' as a documented parameter in our API Reference.

Their API changelog makes no mention of this.

stripe.com/docs/upgrades#api-changelog

We're using handleCardPayment, which also appears to be deprecated and their API changelog again makes no note of this.

stripe.com/docs/js/deprecated/handle_card_payment

I thought Stripe was better than this. I don't understand how they expect me to remain informed of deprecation's if their changelog doesn't note them. Have added a feature ticket to review their API further as I will apparently have to dig for deprecation information.

forge.joomlapolis.com/issues/8095

Ok, looks like JS API deprecation's are only noted on the below page and not in the changelog.

stripe.com/docs/js/deprecated

The concerning issue is this deprecation was made in v3 of their JS API where this was previously working fine and suddenly now it does not. I hope this does not continue to be a problem in the future.


Kyle (Krileon)
Community Builder Team Member
Before posting on forums: Read FAQ thoroughly + Read our Documentation + Search the forums
CB links: Documentation - Localization - CB Quickstart - CB Paid Subscriptions - Add-Ons - Forge
--
If you are a Professional, Developer, or CB Paid Subscriptions subscriber and have a support issue please always post in your respective support forums for best results!
--
If I've missed your support post with a delay of 3 days or greater and are a Professional, Developer, or CBSubs subscriber please send me a private message with your thread and will reply when possible!
--
Please note I am available Monday - Friday from 8:00 AM CST to 4:00 PM CST. I am away on weekends (Saturday and Sunday) and if I've missed your post on or before a weekend after business hours please wait for the next following business day (Monday) and will get to your issue as soon as possible, thank you.
--
My role here is to provide guidance and assistance. I cannot provide custom code for each custom requirement. Please do not inquire me about custom development.

Please Log in to join the conversation.

3 years 8 months ago #319622 by joomally
Thanks for the update.

Since our Stripe account is brand new, I didn't automatically see the option of the older APIs from my Stripe dashboard.

However when I contacted Stripe support and asked them to set my API to the older version, this was done very quickly and easily.

I can confirm that the CB Stripe plugin is working correctly once I had the correct API set.

Thanks

Please Log in to join the conversation.

Moderators: beatnantkrileon
Time to create page: 0.378 seconds

Facebook Twitter LinkedIn