Skip to Content Skip to Menu

🌟Discover the Joomla AI Plugin that wrote its own story! - CB Editor Assistant 1.1now for Joomla 3, 4 & 5!
✍️ 5-Day Free Trial, then 🎯 save up to 30% with our 🛍️ Intro Offer (First 50 users, ends Dec. 31)
🌲 Merry Christmas! Great savings on Professional and Developer Memberships! Get 25% off now with code XMAS-2024!

Recurring Payment Option Missing

  • AlexRag
  • AlexRag
  • OFFLINE
  • Posts: 501
  • Thanks: 33
  • Karma: 6
1 year 5 months ago - 1 year 5 months ago #334333 by AlexRag
If I have a membership expiration of June 30 (today) and a member goes in to renew, I noticed that the "Subscription" option (Stripe) is no longer visible.

It was showing up as late as yesterday.

Is this by design since the person is renewing on the expiration date?  Or is there a setting I should be looking at to allow this payment option?

 

Thanks. 
 
Last edit: 1 year 5 months ago by AlexRag.

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 48630
  • Thanks: 8307
  • Karma: 1446
1 year 5 months ago #334334 by krileon
Replied by krileon on topic Recurring Payment Option Missing
What is the duration of your plan? There's now duration limit protections in place. Stripe does not allow subscriptions longer than 1 year. This is 1 static year so 365 days and no more. If you're using a By Calendar Year duration while giving free time it's possible to go over 365 days, which will cause Stripe to error so instead of doing that we just prevent Stripe from being an option. Please be careful with plan durations as there are restrictions in place by payment gateways that we cannot workaround.


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 or Create an account to join the conversation.

  • AlexRag
  • AlexRag
  • OFFLINE
  • Posts: 501
  • Thanks: 33
  • Karma: 6
1 year 5 months ago #334335 by AlexRag
Replied by AlexRag on topic Recurring Payment Option Missing
Duration: 1 year. (Set up annually per calendar year, July 1 - June 30)

- The subscription option was visible as late as yesterday (June 29th)
- I had people subscribe last year without issue. (as far as I can tell they are set to renew automatically tonight) - Though I need to check my Stripe account to see for sure.
- I also set it so that if people renew 1 month before June 30th, the membership would expire 1 year + 1month later.

Was there a recent update? (I think I may have updated last night)

Thanks!
 

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 48630
  • Thanks: 8307
  • Karma: 1446
1 year 5 months ago #334336 by krileon
Replied by krileon on topic Recurring Payment Option Missing
Check within CBSubs > History Log. If the duration was the problem it will have logged an error there.


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 or Create an account to join the conversation.

  • AlexRag
  • AlexRag
  • OFFLINE
  • Posts: 501
  • Thanks: 33
  • Karma: 6
1 year 5 months ago - 1 year 5 months ago #334338 by AlexRag
Replied by AlexRag on topic Recurring Payment Option Missing
--- 1 ----
I've checked the history logs and saw the note below:

stripe Invalid plan initial duration. Error: Stripe: Trying to subscribe 367 days. Maximum supported is 365 days (1 year).

all trace: called in class cbpaidHistory::logError() on line 571 in file cbpaidPayHandler.php
called in class cbpaidPayHandler::_setLogErrorMSG() on line 429 in file cbpaidsubscriptions.stripe.php
called in class cbpaidstripeoem::getPaymentBasketProcess() on line 178 in file cbpaidControllerPaychoices.php
called in class cbpaidControllerPaychoices::getPaymentMethodsParams() on line 391 in file cbpaidControllerPaychoices.php
called in class cbpaidControllerPaychoices::getPaymentBasketPaymentForm() on line 251 in file cbpaidControllerOrder.php
called in class cbpaidControllerOrder::showBasketForPayment() on line 258 in file cbpaidControllerCBTab.php
called in class cbpaidControllerCBTab::getTabComponent() on line 1155 in file cbpaidsubscriptions.php
called in class getcbpaidsubscriptionsTab::getTabComponent() on line 92 in file cbpaidControllerCBComponent.php
called in class CBplug_cbpaidsubscriptions::getCBpluginComponent() on line 880 in file cbPluginHandler.php
called in class cbPluginHandler::call() on line 1611 in file cbTabs.php called in class cbTabs::_callTabPlugin() on line 1725 in file cbTabs.php
called in class cbTabs::tabClassPluginTabs() on line 733 in file comprofiler.php

However, this appeared for a user who selected the single billing option and the payment went through okay.

My guess is since I had a single billing and recurring setup, I gather it generated this error by default.

Would this be the reason why the "Subscription button was not appearing as an option?

What I am confused about is that the subscription is not 367 days as the current subscription was set to expire on June 30 when the new membership term started.

Users are simply paying a few days in advance.    The subscription option seems to be a false error preventing users from choosing it.

 

--- 2 ---

I also had a user sign up on June 6th who paid using single billing (even though both single and recurring was enabled) but there was no such error that appeared for them.   

I have the plan set up such that anyone signing up on Jun 1 has the membership extended to June 30, 2024 (i.e. bonus time of 1 month).

I believe I recently updated Joomlapolis and all plugins a couple of days ago so it may be related to a recent change maybe?

--- 3 ---

Last year I had 2 customers successfully choose the recurring billing option. They paid on June 29th, but according to Stripe, the next payment is scheduled to be processed today (June 30, renewal date).  

There were no error messages in the logs regarding these users.   I will wait to see what happens when the subscription is set to expire tonight (June 30) to see if Stripe does process the payment.

They paid on June 29th, 2022, but recurring payment takes place at the renewal date - Is this the expected behaviour?

 

--- 4 ---

Also, another issue I've discovered since March 2023 is Stripe had no problem adding the user's name in the Customer section to align with the users on the website. Now they are coming through as "Guest", which will make it more difficult to monitor.

Has something changed with the Stripe plugin or have I overlooked new configuration settings since it was updated?

 

 
Last edit: 1 year 5 months ago by AlexRag.

Please Log in or Create an account to join the conversation.

  • krileon
  • krileon
  • ONLINE
  • Posts: 48630
  • Thanks: 8307
  • Karma: 1446
1 year 5 months ago - 1 year 5 months ago #334339 by krileon
Replied by krileon on topic Recurring Payment Option Missing

Would this be the reason why the "Subscription button was not appearing as an option?

Yes.

What I am confused about is that the subscription is not 367 days as the current subscription was set to expire on June 30 when the new membership term started.

You have free time added to the subscription. You cannot have more than 365 days for recurring subscriptions. Stripe does not allow it. There is no workaround for this other than attempting some strange setup of subscription schedules that we might explore in a future release. This is probably due to your "Manual renewal extends expiration date as follows" setting, which should be set to default "Renewal starts at expiration date or at payment date - whichever happens first (allow overlap but no free gap)". "Grace period before real expiration" shouldn't cause a problem here since that doesn't actually push the subscription renewal date sent to gateways.

I believe I recently updated Joomlapolis and all plugins a couple of days ago so it may be related to a recent change maybe?

Yes, this protection was recently implemented to prevent sending invalid subscriptions to Stripe.

There were no error messages in the logs regarding these users.   I will wait to see what happens when the subscription is set to expire tonight (June 30) to see if Stripe does process the payment.

It worked because we previously didn't error or your plan setup didn't result in an overage. Stripe would accept it, but would stop it at 365 days if it didn't outright error. So whatever overage days there were just didn't exist.

Also, another issue I've discovered since March 2023 is Stripe had no problem adding the user's name in the Customer section to align with the users on the website. Now they are coming through as "Guest", which will make it more difficult to monitor.

A Stripe customer account isn't required for single payments. Recurring payments will always create a customer account. You can enable it to create customer accounts for single payments and checkout payments within your Stripe gateway settings. Specifically the below parameters.

Customer Accounts (Single Payments)
Customer Accounts (Checkout)

I'm sorry if this maybe annoying or frustrating. It's equally frustrating for us. Stripe flat out does not allow for more than 365 days. There is no workaround for this. Their latest API will completely fail with a critical error and block payment acceptance. This only impacts recurring payments of course as single payments can be whatever duration you want since Stripe doesn't manage their durations. There's nothing I can suggest beyond making sure your plans work within whatever payment gateways you use limitations.


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.
Last edit: 1 year 5 months ago by krileon.
The following user(s) said Thank You: AlexRag

Please Log in or Create an account to join the conversation.

Moderators: beatnantkrileon
Powered by Kunena Forum