Magento 2 WAVES Crypto Payments Manual

WAVES Crypto Payments Cover

Introduction

Magento 2 WAVES Crypto Payments provides the possibility to accept WAVES token on Magento 2 merchants websites. WAVES is an innovative payment network and a new kind of money (cryptocurrency).

WAVES token has the fastest blockchain, therefore the merchant receives the funds very quickly, in fact, almost instantly. The transaction fees for processing WAVES payments are are the fraction of the USD cent and the payments are secure, so the fraud problems when the merchant had to provide the reimbursement for the customers after the fraud operations are impossible here.

Magento 2 WAVES Crypto Payments is the free base integration module. We have plans to implement the support for this token in several solutions, so stay tuned for the updates.

Requirements and Installation

WAVES Crypto Payments extension supports both Community and Enterprise edition of Magento starting from version 2.2. The current version of Magento installed on your website can be found in the lower right corner of any backend page.

Magento 2 Version

WAVES Crypto Payments extension has 2 separate ways of installation: via Composer or by copying the code.

Installation Via Composer

  1. Create a folder anywhere on your server (preferably not in the Magento installation directory). Put the zip archive into this folder.

  2. Use any SSH client to connect to your server. Navigate to the root Magento folder. Bear in mind that the user should write permissions to this folder and its subfolders.

  3. Add the folder with the extension's archive as a repository. For this, run the Composer command:

    composer config repositories.mageworx artifact {/ABSOLUTE/PATH/TO/FOLDER}
    

    like

    composer config repositories.mageworx artifact /mageworx/extensions/zip
    

    This command will add these lines to your composer.json file

    "mageworx": {
        "type": "artifact",
        "url": "/mageworx/extensions/zip"
    }
    
  4. Perform the command:

    composer require mageworx/module-waves-payment
    
  5. Clear the compiled code and the cache:

    php bin/magento setup:upgrade
    php bin/magento cache:flush
    php bin/magento setup:static-content:deploy
    
  6. To update the extension via composer perform the command:

    composer update mageworx/module-waves-payment
    

    Installation by copying the code

  7. Download the extension's package from your customer account, unzip it.

  8. Use any SSH client to connect to your server. Bear in mind that the user should write permissions to this folder and its subfolders.

  9. Upload all the files and folders from the extension's package to the root Magento folder.

  10. Via SSH, navigate to the root Magento folder and perform the command:

    php bin/magento module:enable MageWorx_WavesPayment
    
  11. Clear the compiled code and cache:

    php bin/magento setup:upgrade
    php bin/magento cache:flush
    php bin/magento setup:static-content:deploy
    

Base Extension Configuration

Log into the Magento Admin panel and go to STORES ⟶ Configuration ⟶ MAGEWORX ⟶ WAVES Crypto Payments .

WAVES Mageworx Magento 2

These settings specify the initial configuration of the extension.

Test-Net Mode Enabled provides the possibility to play around the settings before rolling out this method on the live host. The testnet is the blockchain that is used for testing purposes. The testnet WAVES token is a separate cryptocurrency with no value. The testnet wallet can be created here.

Recipient’s Wallet Address is the address that is generated after the merchant creates an account on the WAVES platform. Use this guide if you need to create an account. To check the wallet address, please follow this guide. The merchant should bear in mind that leaving the testnet wallet on the live site with the testnet mode disabled will lead to the situation when the clients would send the real WAVES tokens to the testnet wallet. As it is a different wallet (although the address contains the same letters and numbers), it would be impossible to withdraw the funds.

Recipient’s Wallet Additional Addresses setting allows to add several more WAVES addresses. It may be important if the merchants don’t wish to disclose the real quantity of the WAVES tokens on their addresses. An unlimited number of addresses can be used. The wallet address will be randomly selected each time during the transaction. Please bear in mind that the extension doesn’t store the seed phrase so the merchant should remember or keep securely all the seed phrases for each address.

Conversion Rate Adjustment is the possibility to manually adjust the exchange rate. It may vary for different store views. If the merchant has, e.g., 2 store views, one in the USD and another in the Korean Won (KRW), it is possible to surcharge 1.5 USD (per 1 WAVE) on the first store and 1700 KRW on the second one.

Exchange Rate allows to select the desired rates provider. The rates provider will be shown in the dropdown if the base store currency is listed there. Some rates providers work with some specific countries/regions only. The current rate is shown near each rate provider. The rate that is used for the price in WAVES calculation is updated instantly during the checkout process.

WAVES Mageworx Magento 2

The last option, Fixed Rate provides the possibility to ignore the rates fluctuations and put the fixed value. The fixed rate value enables support of the stores that use the base currency with no conversion rate (by all rate providers).

Frontend Experience

On the frontend the payment method is shown on the checkout as the payment method. Currently, the extension supports 2 separate payment methods: via the QR (suitable if the customer has the WAVES wallet on the smartphone (both iOS and Android devices are supported) or the direct pay (if the customer uses the webwallet or Windows/Mac OS/Linux client).

Waves QR-code Payment

WAVES Mageworx Magento 2

The payment method shows the WAVES logo and the default title (editable in the payment method configuration). If the customer selects this payment method, it unfolds and shows the information necessary for the payment process.

WAVES Mageworx Magento 2

This block contains the explanation text, the QR code, the link that can be used to pay directly from the phone (suitable if the customer is browsing the website using the smartphone and has the wallet), the amount of the WAVES to be paid and the time left for the automatic payment (time intervals are editable in the developer settings of the payment method configuration). The customers should open their WAVES wallet on the phone and scan the QR code). After the payment is processed, the order will be placed automatically.

If the user doesn’t complete the payment during the time specified for the automatic blockchain requests, the special button (Manually Check Transaction) appears.

WAVES Mageworx Magento 2

It manually initiates the blockchain request and if the payment was found, then the order will be placed as it should. If the transaction wasn’t found, then the extension provides the possibility to input the transaction ID in the special field.

WAVES Mageworx Magento 2

The transaction ID can be found in the wallet. When the customer adds this string, the Manually Check Transaction button changes automatically to Place Order.

Due to the peculiarities of the WAVES workflow, this situation is unlikely to happen.

The orders that have been completed by means of entering Transaction ID display the special “fraud possible” sign on the orders information page in the backend. If the merchant checks the wallet and fails to find this transaction, it can be easily closed or cancelled.

Waves Remote Payment

WAVES Mageworx Magento 2

The payment method shows the WAVES logo and the default title (editable in the payment method configuration). If the customer selects this payment method, it unfolds and shows the information necessary for the payment process.

WAVES Mageworx Magento 2

This block shows the default text, the amount of the WAVES to be paid, and the link that can be used to pay via webwallet. If clicked, the user gets redirected to the waves platform website.

WAVES Mageworx Magento 2

The client logs in and observes the popup that shows the amount to be paid in WAVES and the confirmation button.

WAVES Mageworx Magento 2

After the payment is done, the user observes the order confirmation page.

Payment Methods Configuration

The QR and remote payment methods can be set up in the backend. To edit them, go to STORES ⟶ Configuration ⟶ Sales ⟶ Payment Methods

Waves Remote Payment

WAVES Mageworx Magento 2

The payment method can be temporarily disabled by switching the Enabled option to No. The merchant can change the default name shown for the clients on the checkout and restrict the method to some countries only. The restrictions can be made for the order total as well (if the order doesn’t meet these requirements, it will be hidden for the client).

Sort Order number determines the position of the payment method in the list of Magento 2 payment methods that is shown during checkout. 0 is the first one, 1 is the second, 2 - the third, and so on.)

Waves QR-code Payment

The QR code Payment Method shares the same settings. It has three more default settings and a list of the developer mode configurations.

WAVES Mageworx Magento 2

The Failure Message specifies the text shown to the customer if the transaction wasn’t found in the blockchain

WAVES Mageworx Magento 2

If the Add the Manually Check Transaction disabled, the client won’t be able to fulfill the order after the time of the automatic check has passed.

Developer Settings

WAVES Mageworx Magento 2

This configurations set the timer for the automatic blockchain requests. The first setting maintains the delay before the initial blockchain requests after the customer opens the QR-code payment method, the second one is the period of the automatic requests, the third one sets the frequency of the requests. All these settings, are counted in milliseconds, so 3000 milliseconds equals to 3 seconds, 30 000 - 30 seconds, 500 is half a second. We recommend to play around these settings with care.

Waves Payments Block

The customer can observe the Waves Payment block on the order page.

WAVES Mageworx Magento 2

This block includes the name of the store, the order number,the date and time of the payment, the client’s wallet and the sum in the store currency and in WAVES. The transaction ID shows below and is encoded in the QR code as well.

In the backend the merchant observes the same block on the order details, invoice and shipping pages.

WAVES Mageworx Magento 2

The structure of this block is the same. If the paid sum (provided in the transaction ID) is not equal to the one that has been initially calculated or the transaction ID isn’t found in the blockchain, the special stamp will be shown:

WAVES Mageworx Magento 2

Sometimes, the transaction takes a bit more time than expected. This happens quite often if the customer uses the Remote Payments.

In this case, the store owner should click the Request Additional Information link to verify the payment.

Got Questions?

MageWorx offers FREE lifetime support and updates for any extension developed for Magento. Need help with the extensions? Feel free to submit a ticket from http://www.mageworx.com/support/

MageWorx offers outstanding services developing custom-tailored solutions for Magento platform to attain your eCommerce objectives. Our professional impassioned team provides profound and custom oriented development of your project in a short timeframe.