How To Easily Accept Crypto Payments On Your WooCommerce Site (Coinbase Commerce Versus Crypto.com)
I decided to test out two popular options to accept crypto payments on WooCommerce – Coinbase Commerce and Crypto.com Pay. Here’s how it went…
When it comes to payments on your website, credit card and Paypal are the two most common options you pretty much always see. You don’t (yet) see too many sites accept crypto payments such as Bitcoin.
However, it is definitely growing. And personally, I think that accepting crypto payments will (within just a few years) be just as popular.
The great thing about using WooCommerce as the basis for your online business is that it is so flexible. And there are a number of options for quickly and easily accepting cryptocurrency on your WooCommerce site.
Logistics of Accepting Crypto For Payments
In many ways, cryptocurrency is still the “wild wild west”. It is like the internet in the early days. However, things are quickly maturing.
One issue with payments in crypto is that the underlying assets can (and do) fluctuate in value. If you take a payment in Bitcoin, for instance, and then the market value drops by 10% the next day, then you just took a 10% haircut on that sale.
Another issue is the speed. Every blockchain and technology is different. Some are very fast and can even outpace the Visa network when it comes to speed, but others (like the native Bitcoin blockchain) are slow and a transaction can take as much as a half hour to be confirmed. It simply isn’t workable for online sales (or any sale, really) to have to sit there and wait for 30 minutes for the sale to complete.
The good thing is that the easiest options for taking payments in crypto take care of these issues.
When you take credit cards, you use a payment gateway to process it. The most common is Stripe.
There are also payment gateways in crypto.
These payment gateways for crypto take care of the speed as well as the currency conversion. Funds can be instantly converted to a currency of your choice (such as USD) so that you, as a merchant, are not subject to price fluctuations.
Coinbase Commerce is one such gateway. They charge a 1% transaction fee which is definitely less than most any credit card gateway. Stripe, for instance, charges 2.9% + $0.30.
Another option is Crypto.com Pay. Crypto.com is growing quickly and they even recently acquired naming rights to the old Staples Center in LA.
The Crypto.com blockchain is powered by their CRO token and is incredibly fast. Unlike Coinbase, Crypto.com charges NO transaction fees. We’ll see how long that lasts, but obviously they’re on a mission to grow the platform quickly. There is a 0.5% transaction fee when you request a withdraw.
And yes, Crypto.com has a plugin for easy integration with WooCommerce.
Coinbase and Crypto.com are not the only options, of course. But, they’re both easy to use and that’s what we want here.
So, I decided to take a look at both of them.
Setting Up To Take Crypto.com Payments
I’ve used Crypto.com for awhile as a customer and I like how fast they move, so I am comfortable with that. Plus, no transaction fees is a plus. 🙂
First thing I did was create an account on their Merchant platform.
Once you’re in the account, first thing you need to do is apply to be a merchant. Be prepared to send them all kinds of info about your business. This is just a necessary evil of applying for accounts like this.
First, you will fill out a bunch of info about your business such as the name, URL, what you do, etc. You will also need to enter your tax ID number, info about business registration, info about yourself as the owner of the business, etc. You will also be uploading some documents to verify the business. In my case, I uploaded a tax return, a bank statement, and a driver license.
Once everything was submitted, it is just a matter of waiting for them to go over it and respond. In my case, since everything was legit, they activated my profile within a few days.
Interestingly, they have different levels of transaction volume. They set mine at 1 at first which is actually a pretty low transaction volume of only $5,000 for a year and a 1% cash back. The cash back is an incentive to the customer where they will get a 1% rebate back in CRO token.
While $5,000 is a pretty small transaction volume and I certainly process way more than that as a business, I’m not expecting mega-volume through crypto so this is fine for now.
After a week or so, I got another email saying they increased my level to 3. While customers would still get 1% back in CRO, my annual volume cap increased to $1 million.
My next step was to install the Crypto.com Pay Checkout for WooCommerce plugin.
This puts Crypto.com into your list of available payment methods in WooCommerce settings. Then, it is just a matter of setting up your API keys and webhooks. This is all very similar to integration with Stripe.
You get your keys from the Merchant Dashboard. Go to Developers and you will see the section for API keys. Just hit the “Generate Keys” button to do exactly that.
You’ve got test keys (for test mode) and live keys (for real transactions). You can generate and enter keys for both. You’ll see a toggle in your account for swapping back and forth.
For webhooks, you’ll find the URL you need right inside of Wordpress. Just copy/paste that and head on into Crypto.com to set up the webhook. Once that is done, you’ll see a “Signature Secret” key which verifies the webhook. Enter that into your settings in Wordpress and do it for both live and test modes.
Once the keys and webhooks are set, you’ll want to test that things work. First, turn on the payment method in WooCommerce. Make sure you select “Testing” for your environment so you can run a test transaction. Then, go buy something in your store. 🙂
Usually when somebody pays using Crypto.com, it will show a popup where the user can select their payment method. They’ll then get a QR code. Scan that QR code to send payment and the site very quickly detects the payment and proceeds with the sale.
Here’s how it looks on my site…
I am then able to choose a payment method. In my merchant account, the only option I have enabled is the Crypto.com App, so that’s all that shows up. I also have the option to allow customers to pay using CRO tokens held in other wallets (such as MetaMask), but for now I don’t have that turned on.
I then get the QR code. If this were a real transaction, the customer would open up their Crypto.com wallet, scan the QR code and instantly pay from whatever funding source they want. In my case, this is a test transaction so I have the ability to just hit the green button and simulate the fact that I scanned the QR code.
Once I simulated payment, the window refreshed a few seconds later automatically. Since I have defined (in my plugin settings) to redirect back to my store upon payment, that’s what it does. And I get the standard order confirmation from my site.
That was easy. 🙂
As far as WooCommerce is concerned, everything happens exactly as normal. It doesn’t act any different as if the person pays via credit card.
Setting Up With Coinbase Commerce
For the sake of comparison, I decided to get set up with Coinbase Commerce as well. I wanted to see how it compared and which provider I preferred.
First, I signed up for a Coinbase Commerce account. This is different than a regular Coinbase account. Once I had verified my email address, I was sent into a wizard to perform the necessary setup actions.
I set up 2-step verification using Google Authenticator. I also set up a wallet with it’s own seed phase. Anybody who has ever set up a crypto wallet is familiar with all this.
I note that Crypto.com did NOT ask me to do any of this. And for security reasons, I prefer the method Coinbase uses. In the world of crypto, people know “not your keys, not your coins”. The fact that coins my business would accept go into my own wallet with my own keys makes the funds far more secure than Crypto.com in which they hold all funds until I withdraw them.
Once I was done, I was brought right into my Commerce dashboard. Wow, that was easy. 🙂 I just went into my settings and defined a few things such as my business name, support email address, some branding choices, etc.
Next was to see about integrating it with WooCommerce.
Interestingly, as of this writing, the official plugin for Coinbase Commerce for WooCommerce seems to be discontinued for guideline violations.
Very weird for such a large, public company. But, not to give up, I searched the repository and found an alternative: Commerce Coinbase For WooCommerce. Once installed, I found the settings looked even simpler:
In my Commerce settings under Security, I just generated an API key and copied that into WooCommerce. Then, I copied the webhook URL out of WooCommerce, went into Commerce Settings under Notificstions and added it as an endpoint on my webhook.
Is that really it? That’s pretty easy. So, I turned it on to see what it looks like on my site.
The size of that Coinbase logo is obnoxious. There are no size options or any other options to control that on the plugin, but I can fix it using CSS.
When I proceed with a test order, it uses a typical off-site checkout process. I enter an email address then get the choice of coins to use to pay.
It is more of a traditional crypto checkout. For instance, if I choose to pay with Bitcoin, I get a QR code and wallet address and I can then send Bitcoin to that address. This is using the standard Bitcoin network, so the transaction would need to wait for confirmations before it would complete.
There’s not a lot of customization over checkout. I can add a logo (square version only) and a color, but that’s about it. It is a pretty simplistic checkout process, but it works. As far as WooCommerce goes, the orders are put into the system immediately as “On Hold” and they sit there until the transaction is confirmed on the blockchain.
Comparison Of Coinbase Commerce Versus Crypto.com Pay
After trying out both platforms, I found both very easy to use and integrate with to accept crypto payments.
Crypto.com Pay was more work since it had public/secret keys, test mode and production mode, etc. It works much more like a traditional payment gateway such as Stripe.
Coinbase Commerce was far simpler.
Crypto.com Pay had me jump through a lot of KYC (know your customer) hoops before I could use it. Coinbase Commerce was very easy and fast with no KYC. Coinbase was far more decentralized.
In terms of the checkout experience, Crypto.com offers a far more professional and fast experience. Coinbase immediately looked pretty stupid seeing as their own official plugin has been discontinued. The alternative I found was pretty simplistic, but it worked. The off-site checkout screens on Coinbase were very simplistic.
From the perspective of true crypto payments, Coinbase does a better job since it puts the most popular coins front and center. If you pay with Bitcoin, you truly pay with Bitcoin. That’s good if you want to keep it all native on the BTC blockchain, but bad if you want anything to happen quickly. The sale is going to be subject to the speed and fees of the blockchain in use. The most user-friendly way to pay would be to Express Pay using Coinbase itself, which would require the buyer to have a Coinbase account. So, this process works more like Paypal.
Paying using Crypto.com is very fast and easy, but is limited because of it’s dependence on the Crypto.com app and the CRO token. It requires the buyer to have and use both. I’ve purchased things using Crypto.com before and I had to make sure I had enough CRO on my account to make the purchase. If I didn’t, I would need to “top up” by purchasing CRO using funds from another wallet and then complete the transaction.
Mind you, the Cronos network (the blockchain that Crypto.com built) is FAR better suited to daily transactions than something like Bitcoin. It isn’t even close. The Cronos blockchain is built for speed and daily usage while ETH and BTC are most definitely not.
Final Thoughts To Accept Crypto Payments
As you can see, integrating with Crypto.com was pretty straightforward. And integration with Coinbase Commerce was even simpler.
To me, it is all about ease of use for the end user. Crypto.com is great, but it is pretty focused on it’s own CRO token and that may be confusing for some people who don’t know anything about it. Coinbase, on the other hand, is a very well known brand and I would guess that my customers are more likely to have funds on Coinbase than Crypto.com. Plus, it looks to me as if the Coinbase checkout process makes the more popular coins (like Bitcoin) more obvious.
Now, the question here to end off with would be…
Is it worth the extra work to enable payments on your site via cryptocurrency?
To be clear, I don’t expect much volume through it.
Most holders of crypto aren’t likely to want to easily spend their coins because they’re using it as an investment and not daily currency. This would be different for people who hold stablecoins (like USDC) which are tied to the US dollar. Stablecoins are not fluctuating in value, so customers are more likely to look at it like a bank account and not an investment.
Crypto payments do open up possibilities for people to pay you who may be in areas of the world where traditional financial rails don’t exist. Those of us here in the US tend to forget just how many human beings on this planet don’t have access to this kind of convenient banking such as Visa.
So, in the end, the choice is your’s if it is worth it.
Frankly, I just thought it would be cool. 🙂 Plus, I have been a massive fan and investor in crypto for many years now, so for me there’s also an aspect of just doing my small part to help take crypto mainstream.
So, the choice is your’s.
It is a heck of a lot easier to take crypto as a business owner now, however. Every bit as easy as working with Stripe or any other processor. And that’s pretty cool. 🙂