The logo image is broken on checkout:
This is happening because a space is inserted before the GET args, creating a URL like https://mysite.com/wp-content/plugins/bitpay-checkout-for-woocommerce/images/BitPay-Accepted-CardGroup.svg%20id=bitpay_logo
I was able to fix it in my local site by patching plugins/bitpay-checkout-for-woocommerce/build/BitPayLib/class-wcgatewaybitpay.php
. I changed line 85 (inside get_icon_on_payment_page()
) to:
return add_query_arg('id', 'bitpay_logo', $settings->get_payment_logo_url());
Hoping to see it fixed in a future version ??
]]>Installed the plugin and started immediately getting fatal errors after activating. Initially, the fatals only showed in the logs or when using WP-CLI, but then spread to the site.
Running WordPress 6.5.5, WooCommerce 9.0.2, PHP 8.3.8.
[27-Jun-2024 17:48:39 UTC] PHP Warning: Undefined array key "bitpay_checkout_gateway" in /srv/htdocs/wp-content/p
lugins/bitpay-checkout-for-woocommerce/build/BitPayLib/Blocks/class-bitpaypaymentsblocks.php on line 25
[27-Jun-2024 17:48:39 UTC] PHP Fatal error: Uncaught Error: Call to a member function is_available() on null in /
srv/htdocs/wp-content/plugins/bitpay-checkout-for-woocommerce/build/BitPayLib/Blocks/class-bitpaypaymentsblocks.ph
p:29
Stack trace:
#0 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/Payments/PaymentMethodRegistry.php(28): BitPayVendor\BitP
ayLib\Blocks\BitPayPaymentsBlocks->is_active()
#1 [internal function]: Automattic\WooCommerce\Blocks\Payments\PaymentMethodRegistry->Automattic\WooCommerce\Block
s\Payments\{closure}(Object(BitPayVendor\BitPayLib\Blocks\BitPayPaymentsBlocks))
#2 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/Payments/PaymentMethodRegistry.php(25): array_filter(Arra
y, Object(Closure))
#3 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/Payments/PaymentMethodRegistry.php(40): Automattic\WooCom
merce\Blocks\Payments\PaymentMethodRegistry->get_all_active_registered()
#4 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/Payments/Api.php(65): Automattic\WooCommerce\Blocks\Payme
nts\PaymentMethodRegistry->get_all_active_payment_method_script_dependencies()
#5 /wordpress/core/6.5.5/wp-includes/class-wp-hook.php(324): Automattic\WooCommerce\Blocks\Payments\Api->add_payme
nt_method_script_dependencies(Array, 'wc-cart-block')
#6 /wordpress/core/6.5.5/wp-includes/plugin.php(205): WP_Hook->apply_filters(Array, Array)
#7 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/Assets/Api.php(275): apply_filters('woocommerce_blo...',
Array, 'wc-cart-block')
#8 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/BlockTypes/AbstractBlock.php(139): Automattic\WooCommerce
\Blocks\Assets\Api->register_script('wc-cart-block', 'assets/client/b...', Array, true)
#9 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/BlockTypes/Cart.php(271): Automattic\WooCommerce\Blocks\B
lockTypes\AbstractBlock->register_block_type_assets()
#10 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/BlockTypes/AbstractBlock.php(124): Automattic\WooCommerc
e\Blocks\BlockTypes\Cart->register_block_type_assets()
#11 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/BlockTypes/Cart.php(34): Automattic\WooCommerce\Blocks\B
lockTypes\AbstractBlock->initialize()
#12 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/BlockTypes/AbstractBlock.php(70): Automattic\WooCommerce
\Blocks\BlockTypes\Cart->initialize()
#13 /srv/htdocs/wp-content/plugins/woocommerce/src/Blocks/BlockTypesController.php(106): Automattic\WooCommerce\Bl
ocks\BlockTypes\AbstractBlock->__construct(Object(Automattic\WooCommerce\Blocks\Assets\Api), Object(Automattic\Woo
Commerce\Blocks\Assets\AssetDataRegistry), Object(Automattic\WooCommerce\Blocks\Integrations\IntegrationRegistry))
#14 /wordpress/core/6.5.5/wp-includes/class-wp-hook.php(324): Automattic\WooCommerce\Blocks\BlockTypesController->
register_blocks('')
#15 /wordpress/core/6.5.5/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array)
#16 /wordpress/core/6.5.5/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#17 /wordpress/core/6.5.5/wp-settings.php(695): do_action('init')
#18 phar:///usr/local/bin/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(1374): require('/wordpress/core...')
#19 phar:///usr/local/bin/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(1293): WP_CLI\Runner->load_wordpress()
#20 phar:///usr/local/bin/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php(28): WP_CLI\Runner->st
art()
#21 phar:///usr/local/bin/wp-cli/vendor/wp-cli/wp-cli/php/bootstrap.php(83): WP_CLI\Bootstrap\LaunchRunner->proces
s(Object(WP_CLI\Bootstrap\BootstrapState))
#22 phar:///usr/local/bin/wp-cli/vendor/wp-cli/wp-cli/php/wp-cli.php(32): WP_CLI\bootstrap()
#23 phar:///usr/local/bin/wp-cli/php/boot-phar.php(20): include('phar:///usr/loc...')
#24 /usr/local/bin/wp-cli(4): include('phar:///usr/loc...')
#25 {main}
thrown in /srv/htdocs/wp-content/plugins/bitpay-checkout-for-woocommerce/build/BitPayLib/Blocks/class-bitpaypaym
entsblocks.php on line 29
]]>
There is a pretty critical issue with how refunds work, where the Woo order gets changed to “Refunded” status (which is great) and then later gets changed back to “Processing” status. This is a pretty big deal for us and we can’t go live with this plugin until this is resolved.
I’ve logged all the nitty gritty details including a screenshot and log files in a github issue here: https://github.com/bitpay/bitpay-checkout-for-woocommerce/issues/75.
We are willing to help to get this fixed but would need some guidance from your team on how to fully resolve as it seems to be related to the IPN messages which we don’t have complete knowledge of.
]]>As we were testing the plugin we noticed an important error that was happening when the IPN/webhook was received. Based on my understanding of the code, the intent is that when the BitPay invoice status updates to “complete” this plugin will respond to the IPN message and attempt to update the Woocommerce order status, which depends on the configuration the WordPress administrator chooses in the plugin settings. However, this plugin instead throws a RuntimeException
with a message like this:
Wrong BitPay status. Status: complete available status: Array
(
[0] => completed
)
This RuntimeException causes the order status to not be updated. See \BitPayLib\BitPayIpnProcess->process_completed()
method. The end user customer won’t notice a problem, but a saavy Woocommerce administrator would see the error in the logs and also notice that the order status should have changed but it didn’t.
What I think is the problem is that your developer accidentally typed “completed” instead of “complete” – it is very understandable since the BitPay invoice status is “complete” and an important Woocommerce order status is “completed” – so similar ?? I’ve actually fixed the problem in a fork on Github and submitted a pull request: https://github.com/bitpay/bitpay-checkout-for-woocommerce/pull/66. If you don’t see any issues with it it would be great if you could accept the change and publish a new version of the plugin to the WordPress repository.
For the short term we have manually patched the plugin’s code directly on our servers, but this is not sustainable way for us to fix the code since there isn’t an easy way for us to override with WP hooks, etc. The next time you publish a plugin update we may loose our customization if this isn’t addressed.
The version of the plugin we have installed is the most recent version on the WordPress plugin repository, 5.3.1. We are running PHP 8.2.14. I am certain the the other plugins we are running are not relevant, but if you really need them for some reason just ask.
]]>Got this Error message in the WordPress backend when I tried to click on the?Set up?button next to the BitPay Payment methods:
Uncaught TypeError: strtoupper(): Argument #1 ($string) must be of type string, null given in /var/www/norskmynthandel.no/htdocs/wp-content/plugins/bitpay-checkout-for-woocommerce/build/BitPayLib/class-bitpaypaymentsettings.php:91
Stack trace:
#0 /var/www/norskmynthandel.no/htdocs/wp-content/plugins/bitpay-checkout-for-woocommerce/build/BitPayLib/class-bitpaypaymentsettings.php(91): strtoupper()
#1 /var/www/norskmynthandel.no/htdocs/wp-content/plugins/bitpay-checkout-for-woocommerce/build/BitPayLib/class-bitpaypluginsetup.php(64): BitPayVendor\BitPayLib\BitPayPaymentSettings->check_token()
#2 /var/www/norskmynthandel.no/htdocs/wp-includes/class-wp-hook.php(324): BitPayVendor\BitPayLib\BitPayPluginSetup->bitpay_checkout_check_token()
#3 /var/www/norskmynthandel.no/htdocs/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#4 /var/www/norskmynthandel.no/htdocs/wp-includes/plugin.php(517): WP_Hook->do_action()
#5 /var/www/norskmynthandel.no/htdocs/wp-admin/admin-header.php(303): do_action()
#6 /var/www/norskmynthandel.no/htdocs/wp-admin/admin.php(239): require_once(‘…’)
#7 {main}
thrown
I’ using WordPress 6.4.1, Bricks 1.9.2, BitPay Checkout for WooCommerce 5.3.1.
PHP version is 8.1.25
Could you please look into this error so I can use the plugin?
Thanks in advance.
Kind regards
Rune
My team is working on developing a WooCommerce site and we want to offer BitPay as a payment channel. However, whenever we select the BitPay option at checkout, we completely skip the actual payment when placing the order. It doesn’t seem to work with either the modal or redirect links.
Thank you for all you do, and please let me know what other information we can provide. Thanks.
When activating the plugin I get 2 errors displayed at the top of every page on my website https://rexgolfshop.com/:
I am reaching out to express my concern regarding an issue I’ve encountered with the BitPay plugin on my WooCommerce website.
Upon trying to configure the plugin, I faced an unexpected problem. When I navigate to the ‘Settings’ in WooCommerce and click on ‘Finish Setup’ under the ‘Payments’ tab, a white screen appears, and I am unable to proceed further. I’ve checked my system, and I’m currently running PHP 8.0.30.
I understand that BitPay requires a substantial amount of verified documents to fully enable its services, and it’s crucial for me to ensure that the plugin functions 100% before I proceed to submit any sensitive information related to my company under my Bitpay account. Otherwhise it would be a waste of time.
Your prompt assistance in this matter will be highly appreciated.
Could you please provide guidance or any necessary steps to resolve this issue? If you need additional information or access to the system, please let me know, and I will be happy to cooperate.
Thank you for your immediate attention to this matter. I look forward to hearing from you soon.
]]>Issue with min.php version.
Composer detected issues in your platform: Your Composer dependencies require a PHP version “>= 8.1.0”.
]]>I see it hasn’t been tested with the last three versions of WP. Any plans to keep it going?
]]>Your plugin getting a notice on wp.org that it hasn’t been tested in the last 3 major versions of WordPress and yet your last update was 2 weeks ago. This is because you failed to include the requisite tag in your plugin file so that the site knows you’ve tested things in the latest WP. Please fix this so that developers don’t lose confidence in your plugin.
]]>In previous versions you can modify the title and in the latter you cannot, also the payment button appears as a text instead of the brand image. How can this be resolved? Thanks
]]>Hi,
I’ve created a BitPay test account and set up the add-on, however the payment page shows “Awaiting payment” although the transaction was successful.
The token and all setting seem to be correct.
What could the problem be?
Kind regards,
David
]]>How does this plugin work for subscriptions or does it?
]]>After updating from BitPay for Woocommerce to this plugin we receive this type of notice:
Notice: Trying to access array offset on value of type bool in \wp-content\plugins\bitpay-checkout-for-woocommerce\index.php on line 953
Notice: Undefined index: section in /wp-content/plugins/bitpay-checkout-for-woocommerce/index.php on line 452
We’re running:
WordPress version: 5.6.2
WooCommerce version: 5.0.0
Server info: Apache
PHP version: 7.4.15
Can you advise for fixing that?
]]>Hi!
when I try to checkout it redierects to the homepage.
Help please
]]>I installed the Plugin, the button appears on the checkout page but after choosing it as a payment method there is page loading and I am directed to home.
]]>I have BitPay integrated on my checkout for a subscription access to my site; and after the payment invoice is paid, WordPress is not receiving that the order is paid.
Am I missing something?
I have to manually go in and set to processing.
]]>Hi I have installed the bitcoin plugin and set it up for production and modal.
created a token in bitpay and pasted in the key into woo/settings/payments/bitcoin and have everything set.
But it does not appear as a payment option on our woo checkout page.
Thanks!
]]>Hello,
I just need to know if this compatible with WooCommerce 4.0? I want to update my WooCommerce to the lastest version but it keeps popping up a warning message that your plugin is “unknown” to be compatible with the latest version. Please confirm ASAP, thanks.
]]>So after installing this plugin, all view cart links are redirect to a nulled 404 page after adding cart.
And if redirection is implemented immediately after adding to cart, it will redirect to product-name/null which is a nulled 404 page.
Can’t use this plugin with this issue. causes massive losses in sales. Is there a fix for this?
]]>Since version: 3.10.1912 also in 3.11.1912 the ajax add to cart now contains a “pay with bitpay icon” using wp-ocean theme.
this did not exist prior to 3.10.1912 see screenshot:
https://prnt.sc/q9ja3u
Not possible to disable image at checkout any longer? The current image is too big.
]]>Many BitPay invoices are unpaid and therefore fire the ‘expired’ IPN after 1 hour.
Current behaviour:
The current BitPay Woocommerce plugin updates the woocommerce order to status ‘on-hold’, which is not correct. On-hold status is for orders that are paid later (e.g. via a bank transfer, days after).
Expected behaviour:
The correct woocommerce order status after an ‘expired’ IPN is ‘cancelled’.
Even better would be to show the full BitPay IPN -> woocommerce order mapping in the config of the plugin.
]]>Use case:
1) Customer creates an order and selects BitPay to pay.
2) Customer doesn’t pay at BitPay and returns to the Woocommerce checkout page.
3) Customer selects another payment method and pays successfully
4) Other payment method updates the Woocommerce order
5) And then BitPay plugin erroneously updates the order status (e.g. when BitPay’s expired IPN comes in)
Expected:
The BitPay plugin should only update the Woocommerce order status when BitPay is still the selected payment method
Steps to reproduce the issue:
1. try to pay with bitpay first
2. then go back, reload page and pay with other gateway (Example: stripe or Bolt)
3. order will be ther on the back end, yet new order emails won’t be sent yet, and order has no order notes
4. in 15 minutes I logged in and order was not in the dashboard, but was on the other gateway end.
5. when the bitpay transaction expires it deletes or cancelles the order (depends the settings) no matter if it’s paid or not. Should not delete or cancel if it’s already paid with other gateway.
Hi,
I just set up my bitpay plugin with Modal checkout and is not working as expected. Is redirecting to Thank you page with out going trough Bitpay
Thanks
Christian
I just installed the latest version of this plugin to test and I am seeing multiple notices in debug mode when first activated (no custom settings have been added):
Notice: Undefined index: section in /var/www/html/wp-content/plugins/bitpay-checkout-for-woocommerce/index.php on line 788
Notice: Undefined index: section in /var/www/html/wp-content/plugins/bitpay-checkout-for-woocommerce/index.php on line 761
Notice: Undefined index: section in /var/www/html/wp-content/plugins/bitpay-checkout-for-woocommerce/index.php on line 418
Hi, the button is not showing up as set in the settings: https://prntscr.com/o9azs5
]]>It just kills the performance of the site.
Here is the two profiling schemes.
]]>