BitPay Checkout for Woocommerce


The most secure and fastest way to accept crypto payments.

BitPay Payment Gateway plugin for WooCommerce

Key features

  • Accept bitcoin and bitcoin cash payments from payment protocol compatible wallets
  • Price in your local currency
  • Get settled via Bank transfer (EUR, USD, GBP or any of the supported fiat currencies), BTC, BCH or stable coins (GUSD, USDC)
  • By design, chargebacks are not possible with cryptocurrency payments
  • Have an overview of all your bitcoin and bitcoin cash payments in your BitPay merchant account at
  • Refund your customers in bitcoin or bitcoin cash in your BitPay merchant dashboard at

Customer journey

  1. The customer is adding items to his shopping card and proceeds to checkout – the total amount is $100 USD.
  2. The customer selects BitPay as checkout method.
  3. A BitPay invoice is generated, the customer selects one of the supported cryptocurrency to complete the payment. The invoice will display an amount to pay in the selected cryptocurrency, at an exchange rate locked for 15 minutes.
  4. The customer completes the payment using a compatible wallet within the 15 min window.
  5. Once the transaction is fully confirmed on the blockchain, BitPay notifies the merchant and the corresponding amount is credited to the BitPay merchant account minus our 1% processing fee – thus $99 USD in this example.


  • BitPay merchant dashboard - create a new POS token
  • BitPay merchant dashboard - Point of Sale token created
  • WordPress Woocommerce - BitPay plugin settings (1)
  • WordPress Woocommerce - BitPay plugin settings (2)
  • BitPay checkout option - example
  • BitPay hosted invoice - modal option. Displayed to the user after he clicked the "Pay with BitPay" button
  • BitPay hosted invoice - cryptocurrency selected
  • BitPay hosted invoice - Customer clicked on the "open in wallet", this opens the compatible wallet installed on the device which automatically retrieves the payment information.
  • The customer confirmed the payment via his compatible wallet. The BitPay invoice is then marked as paid.
  • BitPay merchant dashboard - the invoice previously paid is recorded unde the "Payments" section.
  • BitPay merchant dashboard - detailed invoice view
  • BitPay merchant dashboard - refund option
  • WordPress Woocommerce - order view



NOTE: If you were using a previous version of this plugin, this version (3.0) was completely rewritten to improve the user experience and the security.

Plugin installation

  1. Get started by signing up for a BitPay merchant account
  2. Look for the BitPay plugin via the WordPress Plugin Manager. From your WordPress admin panel, go to Plugins > Add New > Search plugins and type BitPay
  3. Select BitPay for Woocommerce and click on Install Now and then on Activate Plugin

After the plugin is activated, BitPay will appear in the WooCommerce>Payments section.

Plugin configuration

After you have installed the BitPay plugin, the configuration steps are:

  1. Create an API token from your BitPay merchant dashboard:
    • Login to your BitPay merchant account and go to the API token settings
    • click on the Add new token button: indicate a token label (for instance: Woocommerce), uncheck «Require Authentication» and click on the Add Token button
    • Copy the token value
  2. Log in to your WordPress admin panel, select Woocommerce > Payments and click on the Set up button next to the BitPay Payment methods
    • Paste the token value into the appropriate field: Development Token for token copied from the sandbox environment ( and Production Token for token copied from the live environment (
    • select the endpoint – Test or Production
    • Click «Save changes» at the bottom of the page

Order fulfilment

This plugin also includes an IPN (Instant Payment Notification) endpoint that will update your WooCommerce order status. An order note will automatically be added with a link to the BitPay invoice (will open in a new window):

  • When the customer initiates a transaction from his wallet to pay the BitPay invoice, the status of the Woocommerce order will change to Processing
  • When the transaction is confirmed by BitPay, the status of the Woocommerce order will change to Completed. The order will be safe to ship, allow access to downloadable products, etc.
  • If a bitpay invoice expires before the customer completed the payment, the Woocommerce order will change to Cancelled.
  • If you refund a BitPay invoice from your BitPay merchant dashboard, the Woocommerce order will change to Refunded once the refund is processed by BitPay.


How do I pay a BitPay invoice?

You can pay a BitPay invoice with one of the compatible wallets. You can either scan the QR code, click on the «open in wallet» button or copy/paste the payment URL via a compatible wallet.

More information about paying a BitPay invoice can be found here.

Does BitPay have a test environment?

Yes, you can create an account on BitPay’s sandbox environment to process payments on testnet. You will also need to setup a wallet on testnet to make test transactions. More information about the test environment can be found here.

The BitPay plugin does not work

If BitPay invoices are not created, please check the following:

  • The minimum invoice amount is $1 USD. Please make sure you are trying to create a BitPay invoice for $1 USD or more (or your currency equivalent).
  • Check your current approved processing limits in your BitPay merchant account

I need support from BitPay

When contacting BitPay support, please describe your issue and attach screenshots and the BitPay logs.

BitPay logs can be retrieved in your WordPress / Woocommerce environment:

  • Enable logging in your BitPay plugin: Plugins > Settings > Debug Log > Enable logging
  • Download the logs from Plugins > Logs

You can contact our support team via the following form


Leer todas las 3 reseñas

Colaboradores y desarrolladores

«BitPay Checkout for Woocommerce» es un software de código abierto. Las siguientes personas han colaborado con este plugin.


Traduce «BitPay Checkout for Woocommerce» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios


  • Limit the time a user has to complete a purchase


  • IPN Updates


  • Bug fixes and code cleanup


  • Updated config to allow merchants to map order states. You will need to save your BitPay Checkout settings


  • Fixed issue where BitPay may stay persistent as a payment method


  • Fixed issue where VIEW CART returned an null url after using the AJAX add-to-cart


  • Added an ERROR redirection if there is an issue creating a new invoice. Merchants will need to setup an ERROR page and add the page slug to the configuration


  • Fixed WooCommerce notices


  • Removed unused code


  • Allow merchants to disable the BitPay logo in the mini cart


  • Added support for future release of BitPay Chrome extension


  • Fixed issue where cart might not be restored after canceling the payment invoice


  • Fixed button issue clickability on pages with configurable options


  • Let the user decide to hide or show the logo on checkout


  • Added option to show BitPay on product pages for faster checkout


  • Add option for merchant to set their order as Complete when the invoice has been confirmed


  • Updated IPN messaging


  • Allow users to optionally map IPN status updates for Expired invoices


  • Loads different bitpay.js files based on dev or production setting


  • Performance updates


  • Removed old code that was unneded


  • Fixed issue with IPN setting orders to «on-hold»


  • Fixed issue with IPN updates


  • Fixed issue with IPN deleting orders
  • Added more descriptive label for Order Status mapping


  • Fixed issue with IPN deleting orders

  • Changed branding to default icon, updated IPN changes

  • bug cleanup

  • bug cleanup

  • bug cleanup

  • fixed undefined errors in logs

  • Added redirect to cart if order becomes invalid when a user hasn’t completed a purchase

  • Added redirect to cart if order becomes invalid when a user hasn’t completed a purchase

  • Changed speed setting so users can defined in BitPay dashboard

  • Added API token validation

  • Fixed issue where BitPay logo was causing other logos to be hidden. Add / modify the «bitpay_logo» CSS class in your theme if needed.

  • Added optional BitPay logo on checkout page with a css class «bitpay_logo». Adjust the «max-height» in your css to resize as needed

  • Code cleanup

  • Code cleanup

  • Admin updates

  • Added information and links to Tier settings

  • Added transaction and error logging

  • Code cleanup

  • Allow overrides in IPN messages for order statuses

  • IPN Updates

  • Bug squashing

  • Updated to check for server requirements. To verify, deactivate then reactivate the plugin (your settings will be saved)

  • Added option to have no image on checkout page

  • Hotfix to support WooCommerce 3.6.x update

  • Added option to override the «checkout» slug and add your own if needed

  • Token verification update

  • Security update for issues where API could be called repeatedly

  • Changed loading of bitpay.min.js library

  • Fixed issue where some users are experience errors on the modal invoice

  • Fixed error log warnings
  • Fixed issue where the BitPay checkout message would appear with other payment methods

  • IPN Updates

  • Added IPN security updates to verify order verification originates from IPN