Re: Adding Braintree payment module
This was the log:
[24-Jun-2024 17:25:25 UTC] Request URI: /Backup/pupadmin/index.php?cmd=modules&set=payment&module=braintree_api, IP address: 98.97.5.245, Language id 1
#1 braintree_api->__construct() called at [/home/customer/www/popupparts.com/public_html/Backup/pupadmin/modules.php:187]
#2 require(/home/customer/www/popupparts.com/public_html/Backup/pupadmin/modules.php) called at [/home/customer/www/popupparts.com/public_html/Backup/pupadmin/index.php:11]
--> PHP Warning: Use of undefined constant MODULE_PAYMENT_BRAINTREE_STATUS - assumed 'MODULE_PAYMENT_BRAINTREE_STATUS' (this will throw an Error in a future version of PHP) in /home/customer/www/popupparts.com/public_html/Backup/includes/modules/payment/braintree_api.php on line 39.
Re: Adding Braintree payment module
that's the old module, not the new one.
1 Attachment(s)
Re: Adding Braintree payment module
That was the last log entry.
I cleared the logs and tried again but no logs appeared. It will not load the Payment page fully to even click on the Braintree module.
I attached a screenshot of the page.
Attachment 20666
Re: Adding Braintree payment module
I believe you but I need to see the log that caused that partial blank screen.
Re: Adding Braintree payment module
I cannot get a log to generate. I even reinstalled the old version. That generated to log I posted earlier. However after uploading the new version, click install module, it takes a few minutes then the partial screen appears. No new log was generated.
I was even able to install the version before this one (2.2.7) and was able to run it. However that version requires 3DSV enabled. My account does not use 3DSV so it will not work. I however tried to upgrade over that version but had the same result. No logs were generated unless there is another location for the logs.
I am hoping someone else has tried this module to see if they have the same issue.
Thank you
Re: Adding Braintree payment module
The check at includes/modules/payment/braintree_api.php line 1441 is wrong. Change
while ($this->version != '2.2.6') {
to
while ($this->version != '2.2.8') {
Re: Adding Braintree payment module
That got it to work. Now it shows version installed 2.2.4 but not selected when editing the module.
Thanks
Re: Adding Braintree payment module
Yes this is a small bug that shouldn't affect the module's operation.
Re: Adding Braintree payment module
I am not sure if anyone using this module is having this issue described below. I am currently using the old Braintree 1.4.5 with Zen Cart 1.5.8a and PHP version 8.2.25. I do not have the 3DS option turned on as it is not required yet.
Everything seems to work with this configuration. However I am looking at upgrading to version 2.0.1 and was trying upgrade the Braintree module from Numinix website to the newest version. The new versions all appear to require the 3DS option turned on, The Numinix team was notified but they keep closing the issue. The last two upgrades for Braintree (2.2.8 and 2.2.9) appear to not work when installed on ZC 2.0.1. I did get 2.2.8 working (With help and code changes from this thread) but it still required 3DS enabled. 2.2.9 appears to have Dynamic Properties that are deprecated. So it will not load after checkout and I cannot test it.
Is there anyone using the newer Braintree module that does not have 3DS enabled?
It does not appear that many people use Braintree and maybe this is only a U.S. issue?
I am afraid that the old module will cause issues with the newer versions of PHP. So I guess I am looking for some input.
Thank you
Re: Adding Braintree payment module
Hi all, we're trying this module for the first time and ran into the version number problem reported earlier, but also found other issues. From what I've seen Numinix are not terribly responsive so I thought I'd reach out here.
The version of the Google Pay library that is loaded does not match the others, leading to an error message, braintree_api.php has the URL https://js.braintreegateway.com/web/...payment.min.js while the other libraries that are loaded are 3.97.3. googlePaymentErr contains the message "Client (version 3.97.3) and Google Pay (version 3.91.0) components must be from the same SDK version." and the error is squashed (not reported on screen or in the JS console).
When this is fixed the same block of code passes googleMerchantId: MODULE_PAYMENT_BRAINTREE_MERCHANTID which is a string value we got from Braintree (the name of our company in lowercase), but I am informed from https://support.google.com/paymentsc.../7163092?hl=en that "When merchants set up a payments profile, Google assigns it a unique numeric code called a Merchant ID." so it seems to require a numeric value. When setting up Google Pay we are assigned a 12 digit Payments Profile ID (payments.google.com -> Settings). I have tried with the original module, and with a modified version that passes our Payments Profile ID value instead, but in both cases the GPay button appears on checkout but clicking it raises a frame from Google with error "This merchant is having trouble accepting your payment right now. Try using a different payment method. [OR_BIBED_11] OR_BIBED_11".
I contacted Braintree support but they just told me that the Merchant ID is probably numerical and I should contact the payment module developers.
Has anyone got Google Pay working, and what value do you think is being (or should be) passed in that googleMerchantId field?
(n8pbm: We are in the UK and have 3DS enabled so I don't think I can help you there)