Step 1

To start with GreenWAVES Payments you will first have to make an account. Lets hop on to for this one. After creating your account you will need to go to the settings menu and set up the basics.

  • Find which currencies you will want to accept as payment.

  • Input your address for the currencies.

  • Save settings.

  • You are done with Step 1. Theoretically you can now accept payments and start focusing on what you want to sell... ...but lets dive a bit deeper into what you can actually do with GreenWAVES Payments!

Choose your platform

To install GreenWAVES on WordPress follow the steps below:

  • Go to the Plugins page and click Add new then Upload plugin and upload the zip file from here.
  • Once the installation is complete you should see a new area menu item in the Settings POP-UP, named GreenWAVES.
  • Create an account in the and go to your Settings page.
  • If you haven't already, input all of the desired cryptocurrency wallet addresses you wish to accept cryptocurrency with. Additionally you can setup Paypal, Stripe.
  • Set your Webhook Secret key to any random string value, and copy the Webhook URL from the wordpress extension of GreenWAVES. [Usually: wp-json/Greenwaves/webhook]
  • Copy your Account API Key from the GRWV.APP by going over to your Account, and insert all neccesarry informations to the GreenWAVES Extension in Wordpress.
  • You are done! You can start creating your first checkout.

To start accepting payments via our platform through shopify, all you have to do is follow our in depth guide HERE

    The custom / cloud version of GreenWAVES Payments, means integration to any website with just a simple line of code...

  • Go into the GRWV.APP Admin panel, and create a checkout or create a direct payment link. Set everything up and save your checkout.
  • Copy the Embed code
  • Insert it to your website's HTML code and enjoy the checkout.
  • If you include multiple checkouts on the same page, please note that you only need to include the <script id="bxc-cloud" src=""></script> script code portion of the embed code once.

    You have the option to accept payments with our basic shop system. It is free and easy to use.

  • Start by creating the desired checkouts for your items.
  • Go to the settings menu and setup everything for your needs. Logo, Favicon, Email notifications, Purchase confirmation email, Buyer data entry, discount codes, and shop details.
  • Go and visit your shop from your link, at the bottom of the Settings page at Shop page settings. Alternatively you can setup your domain to get redirected to this URL with a simple .htaccess file

RewriteEngine On


RewriteRule ^(.*)$ [YOURSHOPLINK] [L,R=301]

Creating your first checkout

  • Create the checkout / product at wordpress to use the GreenWAVES Payments or insert the shortcode into your page.
  • Create the checkout from the Checkouts area or via code.
  • Insert the Embed code on your website page, in the position where you want to show it.


  • GreenWAVES Payments is not designed to accept overpays, but can accept underpayed transactions.
  • The checkout page should not be closed before the payment is completed. If it's closed, the cron job function will still check payments but there might be some issue with the process of payment from the customers point of view.

Having Problems?

If you're having any issues at all, please contact our friendly support team at If you are using the WordPress version, please make sure that your WordPress installation is up to date.

Payment not detected - Pending transaction

If you have sent a cryptocurrency payment and GreenWAVES does not detect it (pending transaction), the most common reasons are as follows.

  • The checkout page has been closed. The checkout page should not be closed before the payment is completed. If it's closed, the cron job function will still check payments but it might fail to update the customer.
  • The amount sent is different from the one shown by GreenWAVES. The amount sent must be the exact amount shown by GreenWAVES or the payment will not be detected.
  • The transaction is pending or has not been sent to the blockchain. Make sure the transaction is valid and has been sent. Use external websites like to check it.
  • The service or wallet from which you sent the transaction is not working properly. Send the transaction from a personal wallet, not from an exchange. Transactions made from exchanges can create troubles and are not advised.
  • Never use exchange addresses to receive payments, always use addresses from a personal wallet.
  • Ensure that you are sending the funds to the main network and not to a testnet network.

WooCommerce order is not marked as completed

If you GreenWAVES Payment show the payment as completed, but the WooCommerce order is still pending. Check all of the following.

  • Disable all security plugins and try again.
  • Make sure you are not blocking access to WordPress REST API.


Address generation

Single address

By default, GreenWAVES use the single address set in Settings > Cryptocurrency addresses for all transactions in the same cryptocurrency. More details below.

  • GreenWAVES detect the payment from its cryptocurrency amount, in which case, the amount is always unique for each transaction.
  • The amount always changes less than 0.02% of the original amount.
  • The user must submit the exact amount shown by GreenWAVES or the payment will not be detected.


Webhooks are automated data sent from GRWV.APP to a URL set by you when something happens. Use the webhook to validate and finalize the purchase. For security reasons you should always validate the purchase via webhook. You must be a developer and know how to coding to setup the webhook.

How to validate a purchase

  • In Settings > Webhook > Webhook URL enter the destination URL. GreenWAVES will send the data to this URL. The URL must point to a file that read the data received, with PHP, you can use the code below to read the data.
    $response = json_decode(file_get_contents('php://input'), true);
  • In Settings > Webhook > Webhook secret key enter a secret password of your choice. The password will be included in all webhook calls (see key value in the example below). Use it to verify that the webhook is sent by GreenWAVES and not someone else.
  • Save the changes. GreenWAVES will now start sending the below data when a payment is complete. To validate the transaction you must check that the value of the key status is equal to C. If the transaction was made from a dynamic checkout, you must also verify that the transaction amount_fiat value is correct and eqaual to the price amount of the purchased item.
        "key": "123456789",
        "transaction": {
            "id": "231",
            "title": "My checkout title",
            "description": "My checkout description",
            "from": "0x078303fEf888Eadd849312d8b73ca82933e5d00A",
            "to": "0x078303fEf888Eadd849312d8b73ca82933e5d00A",
            "hash": "0x219c676e0731892a1f7ef635b2945269c2d9b53d7c36cc331da1bb4e1e526c46",
            "amount": "0.001",
            "amount_fiat": "0.1",
            "cryptocurrency": "grwv",
            "currency": "eur",
            "external_reference": "",
            "creation_time": "2024-04-30 10:00:00",
            "status": "C",
            "webhook": "1"
            "vat": {"amount":"0.33","percentage":"22","country":"Germany","country_code":"DE"}


  • The webhook sent when a payment is confirmed is only ever sent 1 time.

Dynamic checkouts

To create checkouts by HTML code place the code below into the web page where you want to show the checkout. Copy the Embed code from the checkouts page.

<div data-bxc="name" data-price=""></div>

WordPress shortcode

If you are using the WordPress version you can also use the following shortcode.

[greenwaves id="custom-123" price="" description="" type="inline"]


If you are using the WordPress shortcode or the URL method remove the prefix data- from all attributes.

Attribute Description
The checkout ID. It must starts with custom-.
The price amount.
Enter the string you want, it will be sent via webhook and as a redirect URL parameter.
Redirect the user to a specific URL after the purchase is complete.
The checkout currency. Default: Settings > Currency.
Set the checkout type. Available options: inline, link, popup, hidden Default: inline.
Add a note to the transaction. The note must be base 64 encoded. The note will be visible in the transaction details.
Force the user to pay with a specific cryptocurrency. Available options: the cryptocurrency code, e.g. btc.

Warning Security measure

When using dynamic checkouts without encrypting attributes you must validate the payment via webhook and verify that the transaction amount_fiat value is correct and eqaual to the price amount of the purchased item.

Custom tokens

You can submit your ERC-20 and BEP-20 tokens and start accepting payments with them.

Unlisted token

If your token is not listed on major cryptocurrency exchanges, GreenWAVES cannot get your token's FIAT exchange rate easily. To solve this we can offer support and list your currency even if it is not supported by major exchanges. This service will cost to implement, and is subject to a range of 0$-200$. To list your token please contact us at or through Telegram

Listed token

If your token is listed on major cryptocurrency exchanges, please provide us with informations at or through Telegram


Use PayPal to start accepting payments via PayPal. To get started, follow the steps below.

  • Enter the PayPal email of the account that will receive the payments in GRWV.APP > Settings > PayPal > PayPal email.
  • From the top right profile menu click Account Settings > Website payments > Website preferences ( and set the Auto return for website payments to on. Enter http://# as URL.



Use Stripe to start accepting credit or debit card payments. To get started using Stripe, follow the steps below.


  • Activate Stripe Tax if you are using the Stripe Tax service.


Use Verifone (formerly 2Checkout) to start accepting credit or debit card payments. To get started using Verifone, follow the steps below.


  • Invoices are not available for pending transactions.
  • Invoices are deleted after 24 hours for security reasons. Administrators and users can re-generate them at a later time.
  • The invoice generation link is for example: Add the URL attribute download to show directly the PDF.


  • If you enable VAT validation you need to create an account at and enter the API key in Settings > VAT > Vatsense API key. This is a paid service but you have 100 free validations per month.
  • Once checked, all VAT numbers, even the invalid ones, are saved in the GreenWAVES database and excluded from any future verification.
  • To deduct the VAT amount for valid VAT numbers, it is necessary to enable VAT validation.
  • VAT is automatically calculated based on the user's IP address.
  • VAT is only shown if the IP address is from a VAT-applying country.
  • If VAT is enabled, your webhook must verify that the value is equal to or greater than the original value.
  • If the invoice is enabled and the user changes the country of the invoice, the VAT country changes accordingly.
  • The VAT amount is shown on the PDF invoice.
  • The VAT rates are provided by and are updated periodically.
  • VAT details are sent in the webhook and in the TransactionCompleted JavaScript event.
  • VAT details are visible in the transaction details.
  • VAT does not need to be enabled for WooCommerce purchases because it is handled by WooCommerce.


  • Pending transactions older than 48 hours are deleted automatically. You can change the interval from Settings > Exchange rates refresh interval. Once a pending transaction is deleted, the receiving address linked to it will be available again.
  • To disable a cryptocrrency from the payment options remove the cryptocrrency address.
  • Multiple checkouts can be present in the same web page but only one will be active at same time.
  • GreenWAVES will query the blockchain via AJAX every 5 seconds to verify the payment of pending transactions.
  • To test a completed transction multiple times without a real payment add the following attributes to the checkout URL: ?demo=true&amount=[123]&id=[ID]&webhook_key=[key]. Replace [123] with the exact transaction cryptocurrency amount, [ID] with the GreenWAVES transaction ID, [key] with the GreenWAVES webhook secret key, this attribute is optional. The blockchain transaction time must be higher than the GreenWAVES transaction time. If you are using the WordPress version, you have to set the webhook secret key.


GreenWAVES is powered by the free service below. We thank all the services below for offering free and professional services to the crypto community.



Download and Install the Wordpress plugin of GRWV.APP

  • The Wordpress Plugin for GreenWAVES Payments is available here.
  • After installation please connect the Webhooks and your User ID correctly.
  • Insert the shortcode from the GRWV.APP checkout page to your wordpress site to accept payments.


To start accepting cryptocurrency payments in your WooCommerce shop, follow the steps below.

Downlaod the GRWV.APP Plugin

  • Download the GRWV.APP WordPress Plugin from here. Upload the Plugin and install, and activate it, and enter the Settings Wordpress > Settings > greenwaves.
  • If you haven't already, create an account to GRWV.APP here. Head to the Settings menu and Setup your account by providing your wallet address for each currency you wish to accept. GRWV.APP > Settings >. Go to the Wordpress > Settings > greenwaves and copy the Webhook URL into the GRWV.APP Webhook URL at the settings page, also enter a Webhook KEY which can be anything, and acts as a password of your webhook URL.
  • From the WordPress administration area go WooCommerce > Settings > Payments activate the GreenWAVES payment gateway.


  • If you encounter problems, Check the option Do not finalize order to prevent a WooCommerce order from being finalized upon payment completion


To start accepting cryptocurrency payments in your Shopify store, follow the steps below.

  • Open your store settings area and click Apps and sales channels, then click App Development and Allow custom app development.
  • Click Create an app, enter the app name you want, and create the app.
  • Click Configure Admin API scopes and select the following: write_assigned_fulfillment_orders, read_assigned_fulfillment_orders, write_orders, read_orders
  • Click SAVE then open the API credentials tab and click Install app, after the installation copy the API access token and paste it into GRWV.APP > Settings > Shopify > Access token.
  • Copy and paste your store URL to GRWV.APP > Settings > Shopify > Store URL , e.g.
  • Open again your Shopify store settings area and click Checkout and accounts, insert the following code into the Order status page field:
    	if (!"cryptocurrency")) {
    		let GRWV_URL = "";
    		let GRWV_API = "GRWV_API_KEY";
    		let GRWV_PAYMENT_METHOD_TEXT = ["Pay with Crypto"];
    		let GRWV_INTERVAL = setInterval(function () {
    			let element = document.getElementsByClassName("payment-method-list__item__info");
    			if (element.length) {
    				if (GRWV_PAYMENT_METHOD_TEXT.includes(element[0].innerHTML)) {
    					document.location = GRWV_URL + "/pay.php?checkout_id=custom-shopify&price=" + Shopify.checkout.payment_due + "&currency=" + Shopify.checkout.currency + "&external-reference=shopify_" + Shopify.checkout.order_id + "&redirect=" + encodeURIComponent(document.location.href) + "&note=Shopify Order ID " + Shopify.checkout.order_id + "&cloud=" + GRWV_API;
    		}, 50);
    Replace GRWV_API_KEY with your GRWV.App API key which you can find at the GRWV.APP > Accounts > API Key
  • Open again your store settings area and click Payments, then click Add manual payment method and Create custom payment method. As Custom payment method name enter Pay with Crypto. You can change "Pay with Crypto" with something else but in such a case you have to replace it also on the code of the previous point. If you add translatons you have to add them in the code of the previous point, e.g. let GRWV_PAYMENT_METHOD_TEXT = ["Pay with Crypto", "Pagar con Cripto", "ادفع باستخدام Crypto"];.