BTCPay Server – Accept Bitcoin payments in WooCommerce

Description

Accept Bitcoin payments in your WooCommerce powered WordPress site with BTCPay Server

BTCPay Server for WooCommerce is a revolutionary, self-hosted, open-source payment gateway to accept Bitcoin payments. Our seamless integration with WooCommerce allows you to connect your self-hosted BTCPay Server and start accepting Bitcoin payments in just a few simple steps.

Features:

  • Zero fees: Enjoy a payment gateway with no fees. Yes, really!
  • Fully automated system: BTCPay takes care of payments, invoice management and refunds automatically.
  • Display Bitcoin QR code at checkout: Enhance customer experience with an easy and secure payment option.
  • No middlemen or KYC:
    • Direct, P2P payments (going directly to your wallet)
    • Say goodbye to intermediaries and tedious paperwork
    • Transaction information is only shared between you and your customer
  • Self-hosted infrastructure: Maintain full control over your payment gateway.
  • Direct wallet payments: Be your own bank with a self-custodial service.
  • Lightning Network integrated out of the box – instant, fast and low cost payments and payouts
  • Reporting and accounting – CSV exports
  • Advanced invoice management and refunding integrated in the WooCommerce UI
  • Real-time exchange price tracking for correct payment amounts
  • Versatile plugin system:
    • Extend functionality according to your needs
    • Accept payments in altcoins through various plugins
  • Elegant checkout design: Compatible with all Bitcoin wallets and enhanced with your store’s logo and branding for a unique UX.
  • Point-of-sale integration – Accept payments in your physical shops
  • Multilingual ready: Serve a global audience right out of the box.
  • Top-notch privacy and security: Protect your and your customers’ data.
  • Community-driven support: Get responsive assistance from our dedicated community (Mattermost or Telegram).
  • Extensive documentation and video tutorials

The non-profit BTCPay Server Foundation is committed to keeping this powerful payment gateway free forever. Our mission is to enable anyone to accept bitcoin regardless of financial, technical, social or political barriers.

Screenshots

  • Provides a Bitcoin / Lightning Network (and other) payment gateway on checkout.
  • Your customers can pay by scanning the QR-Code with their wallet or copy and paste the receiving address.
  • After successful payment the customers will get redirected to the order page. The order will be marked as paid automatically.
  • On the settings form you can connect to your BTCPay Server instance by just entering the URL and clicking on "Generate API Key" button.
  • You will get redirected to your BTCPay Server instance and just need to confirm the permissions of the API key. You will get redirected back to the settings form and the webhook will get set up automatically. You are ready to go.
  • On BTCPay Server you have extensive reporting and accounting features.

Installation

This plugin requires WooCommerce. Please make sure you have WooCommerce installed.

To integrate BTCPay Server into an existing WooCommerce store, follow the steps below or check our official installation instructions.

1. Deploy BTCPay Server (optional)

This step is optional, if you already have a BTCPay Server instance setup you can skip to section 2. below. To launch your BTCPay server, you can self-host it, or use a third party host.

1.1 Self-hosted BTCPay

There are various ways to launch a self-hosted BTCPay. If you do not have technical knowledge, use the web-wizard method and follow the video below.

For the self-hosted solutions, you will have to wait for your node to sync fully before proceeding to step 3.

1.2 Third-party host

Those who want to test BTCPay out, or are okay with the limitations of a third-party hosting (dependency and privacy, as well as lack of some features) can use a one of many third-party hosts.

The video below shows you how to connect your store to such a host.

2. Install BTCPay WooCommerce Plugin

BTCPay WooCommerce plugin is a bridge between your BTCPay Server (payment processor) and your e-commerce store. No matter if you are using a self-hosted or third-party solution from step 1., the connection process is identical.

You can find detailed installation instructions on our WooCommerce documentation.

Here is a quick walk through if you prefer a video:

3. Connecting your wallet

No matter if you’re using self-hosted or server hosted by a third-party, the process of configuring your wallet is the same.

4. Testing the checkout

Making a small test-purchase from your own store, will give you a piece of mind. Always make sure that everything is set up correctly before going live. The final video, guides you through the steps of setting a gap limit in your Electrum wallet and testing the checkout process.

Depending on your business model and store settings, you may want to fine tune your order statuses.

FAQ

You’ll find extensive documentation and answers to many of your questions on BTCPay for WooCommerce V2 docs and on BTCPay for WooCommerce integrations FAQ.

Reviews

March 13, 2024
This plugin allows you to accept Bitcoin directly in your own wallet with no intermediaries.It is easy to setup and has an user friendly interface.Thank you developers for the great work!
February 28, 2024
Plugin, support, community, and everything else around BTCPay is amazing! Awesome way to accept BTC payments
February 28, 2024
Implementing the BTCPay Server plugin was a game-changer for us. BTCPay and the Woocommerce Plugin improved our backend efficiency but also enhanced the checkout process for our customers. The plugin's integration was smooth, making Bitcoin transactions easier and helping us to stand out in the Bitcoin space with a very easy-to-use and recognizable checkout process.
Read all 15 reviews

Contributors & Developers

“BTCPay Server – Accept Bitcoin payments in WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

2.6.0 :: 2024-02-27

  • Update PHP BTCPay library to 2.3.0, minimum PHP version 8.0.
  • Show warning when .local domain is used for BTCPay Server URL.
  • Change BTCPay Server URL placeholder to official demo server.

2.5.0 :: 2024-01-31

  • Fix: Formatting in readme.txt
  • Add support for modal overlay for checkout blocks.

2.4.1 :: 2024-01-22

  • Fix: Ensure order status is not cancelled if paid by other payment gateway.
  • Show periodically notification to review the plugin.
  • Updating readme.txt (fixing text, updating banner and screenshots)

2.4.0 :: 2023-12-15

  • Fix: Avoid error on InvoiceProcessing/InvoiceSettled event in case of paidOver property is missing.
  • New feature: Add basic support for WooCommerce cart and checkout blocks.
    Note: Works for default configuration; future versions will make it work with modal checkout and separate payment gateways too.

2.3.1 :: 2023-10-20

  • Fix: Ensure refunds text does not exceed API field limit.

2.3.0 :: 2023-09-06

  • Support for high performance order storage (HPOS)

Note: This is opt-in but brings performance improvements. Follow instructions here if you want to use it.

2.2.3 :: 2023-08-22

  • Automatically create webhook after redirect.

2.2.2 :: 2023-08-22

  • Fix edgecase JS error on payment method selection.

2.2.1 :: 2023-08-17

  • Add tooltip with webhook callback information

2.2.0 :: 2023-08-17

  • Refactor settings UI and allow manual webhook secret entry. This allows 3rd party integrators limit their API keys scope and not include the webhook permission.

2.1.0 :: 2023-04-03

  • New feature: Modal / Overlay checkout mode (no redirect to BTCPay Server)

2.0.0 :: 2023-03-20

  • New feature: Add support for refunds.

Note: If you are upgrading from a version < 2.0 and you want to use refunds (via pull payments) you need to create a new API key with the “Create non-approved pull payments” which is available from BTCPay Server version 1.7.6.
See this link for more information: https://docs.btcpayserver.org/WooCommerce/#create-a-new-api-key

If you do NOT use refunds. You do NOT need to do anything, your existing API key and setup will continue to work as before.

Changelog of older releases can be found here