Our Stripe Payment Method has completely disappeared from our Admin Area in "Payments".
The module is there, I also tried to re-upload and overwrite and still no options show up in configurations under Modules >> Payment.
Any ideas?
Printable View
Our Stripe Payment Method has completely disappeared from our Admin Area in "Payments".
The module is there, I also tried to re-upload and overwrite and still no options show up in configurations under Modules >> Payment.
Any ideas?
Note: This appears to be a parsing issue from other payment processing types. It's causing error timeouts before it actually gets to it.
I haven't fixed it, but it has something to do with these (and mine is actually getting hung up on paypal). https://www.zen-cart.com/showthread....ayment+modules In case anyone else comes across my post.
Hi
I have been asked to look into integrating Stripe as a payment method. However our ZenCart is updated to 1.5.6c and the Stripe plugin seems to be 5 years old and isn't compatible. And going by the conversation here, its a bit buggy as well.
Is that the case? Does ZenCart not integrate with Stripe Pay?
The issue is that the current (as of today) Stripe plugin does not comply with the latest EU standard, Strong Customer Authentication (SCA) required from 1Jan2021, so does not integrate with the latest Stripe interface that is SCA conformant.
Otherwise it worked OK.
Ok. Are they in the process of changing this?
Will you be looking at fixing the Strong Customer Authentication compliance? I see you are in UK and the UK FCA has updated their Strong Customer Authentication page to give an additional six months to implement strong customer authentication (SCA) for e-commerce, to a revised date of 14 September 2021.
As I uploaded the file for this plugin (not installed yet), I see the message "Catalog SSL appears to be missing." My site has an SSL, but what is a "Catalogue SSL"?
Good news if you're running 1.5.7c (tested). The Stripe add-on works with the following minor code changes to Zen Cart:
1.) In public_html/includes/classes/observers/ZcaBootstrapObserver.php:
On/around line 198, change
to:PHP Code:
$field = str_replace('class="', 'class="custom-select', $field);
Note: that change is a single space after custom-select; without it, the selector can't find the class since it's mangled by the custom-select. You can alternatively just comment out this line, though I can't vouch for what impact it might have elsewhere. Either option seems to work fine.PHP Code:
$field = str_replace('class="', 'class="custom-select ', $field);
2.) If you don't make any further changes, Stripe should work, but if there's a problem with the customer's payment, the button to resubmit payment is permanently disabled and customer is likely to become frustrated. To fix this, go to public_html/includes/modules/pages/checkout_confirmation/jscript_double_submit.php and add the following after the line setTimeout('button_timeout()', 4000); so that the JavaScript becomes:
Then add the following lines of code just before the closing </script> tag:Code:setTimeout('button_timeout()', 4000);
setTimeout('button_reenable()', 9000);
What the revised code does is re-enable the button to submit payment 5 seconds after it's been disabled. This should preserve the objective of preventing accidental double-clicks AND allow the customer to re-submit after correcting payment information.Code:function button_reenable() {
var button = document.getElementById("btn_submit");
button.style.cursor="pointer";
button.disabled = false;
}
Disclaimer: While these modifications are relatively minor, make them at your own risk. The scope of the post is strictly to help other merchants and has no connection with either the Zen Cart developers or the add-on module developer.
Has anyone embarked on posting an updated version of the module? Given the popularity of Stripe, I'm surprised this is not a thing unless there is a non-free one that wouldn't be discussed on the forums. I'm happy to look at this, though credit card modules are not my forte. Stripe seems to be one of the better modern payment gateways and I'd love to move from the quite outdated Linkpoint API
I wouldn't even know where to begin with that, probably paying a dev to create something and having a few people throw in on the cost would be the best way to go.
Probably not so difficult, one just has to trigger the API correctly.
Details here plus some sample code.
Seems it is even simpler for a PHP programmer to implement card payments with 3d secure.
You can download a generic Stipe PHP server solution and there is a youtube video here giving step by step instructions on how to customize it.
Hi all - I have been a user of zen cart for many years with PayPal as the payment gateway. One of my customers want to use stripe and I have conflicting information regarding whether stripe/zen cart is possible in the UK. Can someone please let me know (a) if they are compatible and (b) what are the best ZC/stripe module versions?
I have just installed ZC v1.5.5f
Thanks in advance.
Lee
The Zen cart Stripe plugin does not support 3d secure, info from the UK Govt;
Services that only take payments from within the UK need to meet SCA regulation by 14 September 2021. Services meet SCA regulation by implementing 3D Secure 2 (3DS2) or 3D Secure (3DS) that adds an extra layer of identity confirmation before the user pays so that transactions meet the SCA rules.
Thanks very much for the reply. I tried to respond last night but couldn't get back in (all sorted now).
Put another way, can I install the Stripe module for a UK site and have it work without the 3DS)?
I note that some sites (in general, not specific to Stripe use) pass through the 3DS where others don't. When it was introduced some years ago it was necessary to fill in the authentication and then it seems to have been dropped in favour of simply 'passing through'.
So posing my question another way, can I install it and will it work even though it might not be supported?
Thanks again. Lee
Not sure that this is a supported module really so make your own choices as to using it. But ....
The issue for me was that in most templates the fields that the module adds are not actually in the form. So, the <inputs> are not inside the <form> . Solving that problem solved the issue.
It is in tpl_checkout_confirmation_default.php and you probably, depending on your template want to be moving the line:
Code:echo zen_draw_form('checkout_confirmation', $form_action_url, 'post', 'id="checkout_confirmation" onsubmit="submitonce();"');
Hi,
I've just done a clean install of v1.5.7d and added the Stripe payments plugin. Everything seems to be working except the Stripe payments module. I've unzipped the files and uploaded them to my /(storename)/includes/ but when I go to Admin - Modules - Payment there is no way to install Stripe. A blank line appears where Stripe should appear, and when I click on the blank line and then on “+Install Module” it goes to the installation option for Authorize.net and nothing else happens.
I've installed Stripe in the past on an older site and it worked just fine, so I thought I knew what I was doing, but I guess not. :( What am I missing??
The site was uploaded via FTP and manual run of zc_install,
PHP Version: 8.0.2 (Zend: 4.0.2),
MySQL 8.0.28-0ubuntu0.20.04.3
Thanks for any and all help!
Please, does anyone have any ideas on how to fix this? I still haven't got it to work, and I have limited time to get it done. :(
I'll try to attach a screenshot of Admin - Payment Modules, see the blank line at the bottom where stripe should be.
Attachment 20003
I'm not knowledgeable on the subject, but did you try to change your PHP version to 7.4? I've experienced cart and checkout issues because of the PHP version.
I wonder if the problem is that the Stripe module is just too old to work properly with zc v1.5.7d? I'd be happy to contribute financially to someone updating it to work with the new version of zencart!!!
Hi Ideasgirl, sorry, I'm not sure if your post is a reply to mine - my webhost has updated their php version to 8. If I could stay with 7.4 I would, but that version will be end-of-lifed soon and I HAVE TO get zencart working with php 8 before then. So keeping 7.4 isn't an option much longer. :((
PHP 7.4 doesn't go end of life until the end of November 2022, which gives you 6 months. If your hoster won't let you run PHP 7.4, move to another hoster.
Yes I know, November. I can run PHP 7.4 until then but after that I'm facing the same problem again :( so I'd love to get a longer-term fix.
Could it be that your problems are related to PHOP 8.0.2?
Have you done the suggested fix at https://docs.zen-cart.com/user/troub...eady_defined/?
Do you get any log files when the module does not show?
Yes I have done the fix you linked to but it doesn't change the Stripe problem.
I get the following error messages in the log files whenever I try to do anything related to installing the Stripe module.
There is no file modules.php in my /home/[user]/[storetestURL]/[admin]/ directory, which the error logs refer to! Maybe that's the problem?
[26-May-2022 08:48:50 America/Los_Angeles] Request URI: /[admin]/index.php?cmd=modules&set=payment, IP address: 205.211.113.128
#1 require(/home/[user]/[storetestURL]/[admin]/modules.php) called at [/home/[user]/[storetestURL]/[admin]/index.php:11]
--> PHP Warning: Undefined property: stripepay::$sort_order in /home/[user]/[storetestURL]/[admin]/modules.php on line 251.
[26-May-2022 08:48:50 America/Los_Angeles] Request URI: /[admin]/index.php?cmd=modules&set=payment, IP address: 205.211.113.128
#1 require(/home/[user]/[storetestURL]/[admin]/modules.php) called at [/home/[user]/[storetestURL]/[admin]/index.php:11]
--> PHP Warning: Undefined property: stripepay::$sort_order in /home/[user]/[storetestURL]/[admin]/modules.php on line 257.
[26-May-2022 08:48:50 America/Los_Angeles] Request URI: /[admin]/index.php?cmd=modules&set=payment, IP address: 205.211.113.128
#1 require(/home/[user]/[storetestURL]/[admin]/modules.php) called at [/home/[user]/[storetestURL]/[admin]/index.php:11]
--> PHP Warning: Undefined property: stripepay::$sort_order in /home/[user]/[storetestURL]/[admin]/modules.php on line 274.
"There is no file modules.php in my /home/[user]/[storetestURL]/[admin]/ directory, which the error logs refer to! Maybe that's the problem?"
False alarm. The file IS there, it was just out of alphabetical order, that's why I didn't see it.
So I'm still stumped. :(
I think the issue is PHP 8 changing Undefined property from a notice to a warning.
You could try modifying line 27 in includes/modules/payment/stripe.php from
toPHP Code:
$this->sort_order = MODULE_PAYMENT_STRIPEPAY_SORT_ORDER;
and addingPHP Code:
$this->sort_order = defined(MODULE_PAYMENT_STRIPEPAY_SORT_ORDER) ? MODULE_PAYMENT_STRIPEPAY_SORT_ORDER : null;
after line 18PHP Code:
public $sort_order;
Sorry Don't use stripe so have not tested.PHP Code:
var $code, $title, $description, $enabled;
If this works, and you get another undefined, you can add in additional public lines as required. stripepay::$sort_order add public $sort_order;
No change in the Stripe situation :( but the error log has now changed to an access-denied, as follows:
[26-May-2022 08:15:09 America/Los_Angeles] PHP Warning: mysqli_connect(): (HY000/1044): Access denied for user '[myuser]'@'208.113.128.0/255.255.128.0' to database 'ecommtest' in /home/[user]/[storetestURL]/includes/classes/db/mysql/query_factory.php on line 101
Check your configuration files. This is saying that you cannot access the database ecommtest.
This could be username and/or password incorrect in your configuration files.
The configure.php files are fine! User name and password are correct in both.
This error message began right after I changed the coding in the stripe.php file, and I didn't modify the user name and password at any time before or since. :(
have you checked the documention section https://docs.zen-cart.com/user/troub...em_connecting/
The thing is, there is no error message anywhere but in the logs! And no changes were made to the user name or database or password that could account for it.
I think I'm going to forget about the Stripe module and go with a different credit card processor that doesn't require coding experience to make it work. :(
Thank you, dbltoe and brittainmark, for taking the time to try and help me with this issue. I do appreciate it very much! :thanks:
Do what you will but, I still say it's a problem with PHP, your host's setttings or both.
It may well be! In any case the bottom line for me is that the Stripe module is no longer working the way it should, and I just don't have the know-how to locate the problem much less fix it. And since I won't be able to avoid PHP8 forever, I will just have to find a payment option that will work with it. Thank goodness all the rest of the cart works the way it's supposed to. :)
Installed, and configured the module. It showed this in the list of modules:
One of your Stripe API keys is missing.
Both my live keys are entered. So I flip my Stripe console to the test mode and obtain test keys, plug them in, and flip the console back to live mode.
Now the red message is gone but the Stripe payment method still does not appear in the list. Only Cheque/Money order does (enabled it to have something in the list, for reference).
What does this module require, for the payment method to become available to customers?
Update: It is even weirder! I enable COD just for testing, and Stripe appears in the list together with COD. I disable COD and both COD and Stripe disappear.
I think I broke it. Now after I tried to enable and disable Cheque/Money order once, Stripe no longer appears with COD. How can I enable Stripe irrespective of other payment methods?
So after some tinkering I figured out that the only way to enable Stripe as the only payment method is to have COD installed but disabled by setting "do you wish to accept COD payments" to False.
Another way, through the back end, was to update <store prefix>_configuration table.configuration_value.
There should not be any dependency of Stripe on COD. I am BAU but this issue should be looked into.
my friend, just so we are on the same page, i am looking at this module:
https://www.zen-cart.com/downloads.php?do=file&id=1548
is that the stripe module you are using?
if so, that module has not been updated for almost 6 years.
if you read through the posts you will see a lot of people are having problems with this module. a cursory look suggests it has not even been updated to make use of a _construct method.Code:$this->api_version = 'Stripe Payments v 1.3.2 for ZenCart';
so when you say, "this issue should be looked into", who do you think should look into it? the person who last updated it? he was last seen here in 2017... the original author? he was last seen in 2014...
for all of you that want/need an updated stripe module, what are your expectations?
as someone who has coded numerous payment modules for zen-cart, i can tell you these are not trivial undertakings...
You ask me so many questions. The answers should be pretty obvious.
I do not care if a module has not been updated in X number of years as long as it works and delivers me $$ for my products. I am not someone who is craving to be on the bleeding edge just for the sake of it. Heck, I am running 1.5.5. For how long has it not been updated? I do not want updates. They only waste time and $$.
The author of the module should look into its issues. They may be willing may be not I do not care: I've done my part of reporting the issue, and it is now in their hands.
If the module is obsolete/not being maintained it should be flagged as such prominently, to not waste anyone's time. Is it too much to ask for?
Once we are chatting about this module, its signature has to be changed from
Stripe secure payments
to something along the lines of "Credit card" because customers have no faintest idea what Stripe secure payments is.
I'll edit its code, it's no problem.
FORUM MODERATOR HERE. @latsht, please mind your manners. In your short time here you have insulted both the project and several of its key contributors.
Seriously? I insulted someone? Where is the insult, specifically? Please point at it, and I will have an opportunity to review and act upon your order. Until then I am not able to because I do not consider anything that I have ever written here an insult.
If you are referring to someone who suggested that I do not speak/read/write English because of my geographic location from many years back, then it was an insult directed at me. It is just that I am not a crybaby who runs to moderators every time someone tries to insult me on the Internet.
The beauty of the internet is that people all over the world can communicate.
The bad part is the sender cannot always accurately reflect meaning. Is "Great!" meant to be read as "Fantastic!" or the sarcastic opposite.
Not knowing other than the location you provided in your profile, I was excited to let you know that our documentation site is one of only a handful of sites that is available in a multitude of languages, if needed.
There was absolutely no intent other than to brag about a functionality rarely found on the internet.
It was totally your decision to be offended by someone offering the possibility of extra help, if needed.
When the same info was provided to a user with the location of Moscow, the response was, "God Bless the USA!"
99.9% of the folks here have no other motive than to help.
It's your decision as to how you want to view what is provided to you and, so far, you are unfortunately "listening to argue."
Only you can decide what mood you are going to apply to our text.
Best of luck in your endeavors.
I'm making a stripe payment module for Zen Cart 1.5.8.
It works fine, and I need to fix some minor things like multilingual and multicurrency.
I'm thinking about position of the module in the order confirmation page.
Most payment modules are located under the billing address.
Please let me know if there is anything wrong.
Attachment 20178
@Gozzandes
Great News,
I hope it will be integrated with the Stripe 3d secure function that we need in Europe and , I believe, in Japan
Please make sure to add french language to your module
Do your module will work on PHP 7.4 or only with PHP 8 ?
Thank you
Stripe form is embedded in the order confirmation page.
Showed languages are depend on user/customer's browser language.
If an user set french the browser, Stripe form will show in french as bellow. :yes:
I've made it during the day as a job, so my colleague told me that I shouldn't publish it for free. I'm sorry.:(
You can purchase from the link. https://ec.yokane.co.jp
zen cart 1.5.7d is designed for PHP 5.6 through 7.2
zen cart 1.5.8 is designed for PHP 7.3 through 8.2
Attachment 20187
Looks good but payment in advance for a zencart plugin by someone with no published track record of writing successful Zen Cart plugins.
Every new plugin has initial problems that require maintenance.
Do you have references that confirm this plugin works well?
That is certainly true.
I have created the module. I've tested over 1000 times and now I need some 3rd party evaluators. Also, only English and Japanese, no other languages.
I have a favor to ask of you here, Please translate and evaluate this module. Translations of the language in the module and the introduction page, preferably also the instructions. One person for one language. First come first served.You can get a 100% discount if you send an e-mail for example "I'll translate it in German" when you register on my page.If there is any problem, please report them.
Is one month enough for the deadline?
German translator found
https://ec.yokane.co.jp
What's the latest state of this plugin? Still testing?
Stripe does not have many integrations listed on their website. Perhaps they would fund your effort?
Anyone else actively using this?
I have been looking for an Alternative to PayPal. Added Zelle, that works okay, but is more work for us to follow up and remind customers to pay. Looking at Stripe. I have heard reviews speak of PayPal and Stripe, freezing funds in accounts.
I just discovered this new one: https://www.deposyt.com
It looks very new...as in a start-up. I can't really tell if its a future option. They want a consultation to begin...WTF?
getting this error during checkout...
Error Must provide source or customer.
any ideas?
Thanks for updating the Stripe integration. A couple of requests for the next update:
- Don't update includes/database_tables.php - put a file in includes/extra_datafiles that defines the Stripe table.
- Don't update includes/init_includes/init_header.php - put your changes in includes/init_includes/overrides/init_header.php
- In your change to includes/templates/YOUR_TEMPLATE/templates/tpl_checkout_confirmation_default.php you have included references to the old mobile detect stuff that should be removed - newer templates like Bootstrap don't use that.
I'd like to ask about old mobile detect stuff.
I only added codes in the includes/templates/responsive_classic/templates/tpl_checkout_confirmation_default.php
if I put this codes in
includes/templates/template_default/templates/tpl_checkout_confirmation_default.php ,
will it OK?
We are considering this plug-in solely for the goal of offering Apple Pay / Google pay. We do not need the credit card processing as we are quite pleased with what we already have in place. Once installed, will this plug-in allow us to only activate Apple Pay payments without the stripe credit cards module? I can find out by installing but it looks like a tedious install.
Thanks,
You have to activate or disable payment methods at setting of Stripe payment method page.
https://dashboard.stripe.com/settings/payment_methods
but it's impossible to disable Credit cards.
if you want to display without credit card, you have to build new stripe payment module for apple pay/google pay.
https://stripe.com/docs/payments/wallets
i would suggest you contact the author of your current cc processing module to use apple pay and google pay. it looks like it is possible...
whether you can come to an agreement on cost for developing such capabilities is another issue.
best.
Hi Team
Just checking... Stripe is now available in NZ so I assume this module will work for down here too?
The module support 135 currencies ,Google pay and Apple pay.
Not only USD and CAD.
But explaining about it as follows.
-----------------------------------------------------------
Description
This module is designed to allow Zen Cart store owners to integrate with Stripe.com for their payments. Currently (Nov. 2012) Stripe is only available to USA & Canadian bank account holders.
-----------------------------------------------------------
How do I change the description?
OK
Dear administrators.
Please change the description as below.
----------------------------------------
The Stripe payment form is embedded in the payment page.
Therefore, customer information is sent directly to Stripe, and the store does not need to keep any card information.
135 types of currencies are available.
Payment methods
Credit card
Cartes Bancaies
JCB
Alipay
Apple Pay
Google Pay
Link
WeChat Pay
Convenience store settlement
Bancontact
EPS
giropay
iDEAL
Przelewy24
Sofort
SEPA Direct Debit
stripe is also available in the UK is this module able to work for a uk site with some changes? My current provider has 2 seperate monthly charges, one for them and one for barclaycard. I get cheap rates on the transactions and no per transaction fees but the monthly fee negates any savings so it would be good to swap providers until that monthly fee resulted in savings
If you use developers toolkit you can search for the description and it will tell you the filename and line number, from there you make a backup of that file and change the description by replacing the existing one. If you mess up you can reinstate your backed up php file.... I'm not sure how you would add spacing onto different lines though as anything placed in side the 'decription here' point will show up so adding code would simply show that code in the middle of your description as far as i'm aware?
no... I was telling you how to amend that defined text you wanted to change as i spotted nobody got back to you on that :)
it seems as the modules last updater you know alot more than you let on an most likely more than me too, just ignore me lol :D
looks like someone hacked his mail account to add a custom signature on, either that or he really does dig the new service his email tag recommends??
Maybe screenshot his email and ask?? lol
@Gozzandes
158a
one page checkout 2.4.6
bootstrap template 3.6.1
I do not see the credit card cells to place an order.
It does show Stripe and you have to select the radio button and click continue, but not credit card blocks to enter the numbers.
i have the same issue here, did you resolve this?
as numinix asked about your order confirmation page and you never got back to them i'm hoping and assume you resolved the issue?
I do actually have my order confirmation page, what i find is no credit card blocks and i can get all the way through to checkout completion in test mode, have i missed a step as this module is missing an install.txt or a readme. it just shows how to set it up in the included images and the order confirmation shows no stripe id but it appears to be worded like it should. I've been messing about struggling to get currencies resolved to show as GBP and can finally see that, perhaps i am missing a country specific step such as setting default currency to gbp?
What we are finding so far is that Stripe is not working with OPC and, unlike Square, does not show up automatically on the payment page of standard checkout either.
Instead, you have to select the Stripe payment method and hit enter to bring up the form for numbers.
i'm not actually used too using one page checkout, its a feature id like to use but would most likely cause issues with my qr ticketing system too. If one page checkout is set as default on a zen install using a customised version of responsive_classic and i have been causing the issue too myself, i'm pretty sure ive messed up along the lines of setting my store to use gbp correctly but i am getting a weird error relating to the comments of the order being set, apparently it triggers an error if the order comments aren't set. unsure if thats because of a site specific issue but i get the following...
i tried to use co-pilot to debug, seems its telling me an order comment isn't set and triggering an error, im pretty sure its suggested fix is garbage as its skipped the real issue? I assume zen sets an order comment if entered at checkout during payment processing or something to say no comment and this error indicates i missed a file on my install?Code:[04-Feb-2024 17:23:53 UTC] Request URI: /index.php?main_page=checkout_confirmation, IP address: **.**.***.***, Language id 1
#1 require(/includes/modules/payment/stripepay/create.php) called at [/includes/modules/payment/stripe.php:156]
#2 stripe->pre_confirmation_check() called at [/includes/classes/payment.php:248]
#3 payment->pre_confirmation_check() called at [/includes/modules/pages/checkout_confirmation/header_php.php:89]
#4 require(/includes/modules/pages/checkout_confirmation/header_php.php) called at [/index.php:35]
--> PHP Notice: Undefined index: order_add_comment in /includes/modules/payment/stripepay/create.php on line 69.
Check for empty() and only use it if the value is set.
https://docs.zen-cart.com/user/upgra...ined-array-key
well earlier co pilot gave me this, i didn't add it because i think its skipping the issue, basically i visit the payment fields without opc and this would only be triggered after a payment is done, i can click continue and confirm order too see the order confirmation page, yet i haven't entered anything and dev tools reports my credit card field as "hidden"
I am pretty sure i could add this code it gave me without issue and the error code would stop, i'm convincing myself here that If the payment module showed the fields this issue likely would never occur making that edit entirely pointless??Code:if(isset($order->info['comments']) && $order->info['comments']!=""){
$order_add_comment = $order->info['comments'];
$_SESSION['order_add_comment'] = $order_add_comment;
}
if(isset($_SESSION['order_add_comment'])){
$order->info['comments'] =$_SESSION['order_add_comment'];
}
https://photos.app.goo.gl/c1chYzznTqQSjXBw9 Is the trigger page of the error, id expect that not too trigger an "order comments" not left error? hope that clears it up if i badly explained the issue?
clicking violating node highlights #checkoutPayment > form > fieldset.payment > labelCode:The label's for attribute doesn't match any element id. This might prevent the browser from correctly autofilling the form and accessibility tools from working correctly.
To fix this issue, make sure the label's for attribute references the correct id of a form field.
1 resource
Violating node
now is it looking for USD and not finding it because i'm using GBP and must define that somewhere? i had some difficulty in setting up the currency