Description
The WordPress Ethereum Metamask Wallet Connect plugin auto-creates a user wallet upon registration and allows user to send Ether or ERC20/NFT tokens from it.
Binance Smart Chain (BSC), Polygon and any other EVM-compatible blockchain is supported in the PRO version!
It is a valuable addition for the Cryptocurrency Product for WooCommerce plugin.
Using these two plugins your non-techie customers can register to obtain an Ethereum account address and then buy your NFT or ERC20 tokens to be sent to this new address.
The supported EthPress NFT Access Add-On can be used to control access for WooCommerce products, simple pages and posts.
Live Demo
The live demo wallet can be tested here: Ethereum Wallet Demo.
Shortcodes
Account
To show user’s Ethereum account address insert the [ethereum-wallet-account] shortcode wherever you like.
Attributes:
labelYou can uselabel="My label"attribute to set your own label text.nolabelAndnolabel="yes"attribute to display no label at all.
Custom Account label display example:
[ethereum-wallet-account label="My label"]
Account display without label example:
[ethereum-wallet-account nolabel="yes"]
Balance
To show user’s Ethereum account address’s Ether balance insert the [ethereum-wallet-balance] shortcode wherever you like.
Balance is auto-refreshed by listening to the blockchain
General attributes:
displayfiatAdd thedisplayfiat="1"attribute to display the calculated fiat balance too.updatetimeoutLimit balance update rate withupdatetimeout="60"for once per minute update.paperAdd rounded materials styled paer list under the balance control, likepaper="1".
Token attributes:
tokendecimalsUsetokendecimals = "2"attribute to configure the desired digits after the decimal separator count.tokendecimalcharUsetokendecimalchar=","attribute to configure the desired decimal separator character.
Token attributes PRO:
These attributes require the PRO version to be activated. Free 7 days Trial is available!
tokenaddressUsetokenaddress="0x6Fe928d427b0E339DB6FF1c7a852dc31b651bD3a"attribute to display balance of a specific ERC20 token.tokensymbolThe etherscan API sometimes doesn’t return the token symbol. Usetokensymbol="TSX"as a workaround in this case, or to give more descriptive/informal token symbol for your customers.tokennameThe etherscan API sometimes doesn’t return the token name. Usetokenname="Test Token"as a workaround in this case, or to give more descriptive/informal token name for your customers.tokenwooproductUsetokenwooproduct="123"attribute to show balance and a fiat balance for a token configured as a WooCommerce product with the Cryptocurrency Product for WooCommerce plugin. The token to fiat currency rate would be calculated from the WooCommerce product price. Dynamic ETH token price feature of the Cryptocurrency Product for WooCommerce plugin is supported.tokeniconpathUsetokeniconpath="https://example.com/icons/BTC.png"attribute to set the token icon shown.tokeniconheightUsetokeniconheight="54px"attribute to manually set the shown icon height. Useful for design fine tune.
Ether balance with fiat example:
[ethereum-wallet-balance displayfiat="1" updatetimeout="60" tokendecimals = "2" tokendecimalchar=","]
Ether balance with fiat and icon example:
[ethereum-wallet-balance displayfiat="1" tokeniconpath="https://example.com/icons/ETH.png"]
Simple token balance example:
[ethereum-wallet-balance tokenname="TSX" tokenaddress="0x6Fe928d427b0E339DB6FF1c7a852dc31b651bD3a"]
The token balance with fiat example:
[ethereum-wallet-balance tokenname="TSX" tokenname="Test Coin" tokenaddress="0x6Fe928d427b0E339DB6FF1c7a852dc31b651bD3a" tokenwooproduct="123"]
The token balance with fiat and icon example:
[ethereum-wallet-balance tokensymbol="TSX" tokenname="Test Coin" tokenaddress="0x6Fe928d427b0E339DB6FF1c7a852dc31b651bD3a" tokenwooproduct="123" tokeniconpath="https://example.com/icons/BTC.png"]
Send Form
To show a Send Form control insert the [ethereum-wallet-sendform] shortcode wherever you like.
In the Free version, this control allows to send ETH from your account.
ERC20 tokens sending is supported in the PRO version.
Features:
- Tokens list is auto populated based on tokens balances.
- QR Scanner is provided for the reciever address.
- The Ethereum Gas price is auto adjusted according to the EIP1559 or form the blockchain if the EIP1559 is not supported by the blockchain configured.
Attributes PRO:
These attributes require the PRO version to be activated. Free 7 days Trial is available!
tokenslistUsetokenslist="0x6Fe928d427b0E339DB6FF1c7a852dc31b651bD3a,0x0000000000000000000000000000000000000001"attribute to specify only certain tokens you want to support. It can contain a single allowed token address or a comma separated list of allowed token addresses. Use a special0x0000000000000000000000000000000000000001address to represent the basic blockchain coin like ETH/BNB/POL to allow simultaneous tokens and basic coin display with ordering, to make your token displayed first for example.onlytokensattribute can can be used to exclude the basic blockchain coin like ETH/BNB/POL.tokendecimalsUsetokendecimals = "2"attribute to configure the desired digits after the decimal separator count.tokendecimalcharUsetokendecimalchar=","attribute to configure the desired decimal separator character.tokeniconheightUsetokeniconheight="54px"attribute to manually set the shown token icon height. Useful for design fine tune.
The send form with decimals, decimal character and icon height example:
[ethereum-wallet-sendform tokendecimals="4", tokendecimalchar="," tokeniconheight="54px"]
The send form with your token displayed first in a dropdown example:
[ethereum-wallet-sendform tokenslist="0x6Fe928d427b0E339DB6FF1c7a852dc31b651bD3a,0x0000000000000000000000000000000000000001"]
The send form without the basic blockchain coin like ETH/BNB/POL displayed example:
[ethereum-wallet-sendform onlytokens="1"]
Events History
To show an account’s transactions events history insert the [ethereum-wallet-history direction="in"] shortcode wherever you like.
In the Free version, this control shows the basic blockchain coin like ETH/BNB/POL transactions only.
Features:
- NFT and ERC20 tokens events are supported in the PRO version. Free 7 days Trial is available!
- NFT token events display and NFT tokens sending support
- Pagination and filtering is available for the transaction events history table
- Transaction events are auto-refreshed by listening to the blockchain
Attributes:
directionAdd thedirection="in"attribute to display recieve, ordirection="out"for send events only. All events are shown if nodirectionattribute is specified, or a specialinoutvalue is set.rowsAdd therows="10"attribute to display 10 events on a pageiconheightUseiconheight="54px"attribute to manually set the shown token icon height. Useful for design fine tune.updatetimeoutLimit events update rate withupdatetimeout="60"for once per minute update.
The full send and recieve events history example:
[ethereum-wallet-history direction="in" rows="50" iconheight="54px" updatetimeout="120"]
The recieve events history example:
[ethereum-wallet-history direction="in"]
The send events history example:
[ethereum-wallet-history direction="in"]
Account Create
Use the [ethereum-wallet-account-management-create] shortcode to provide your customer account create widget wherever you like
Account Selection
Use the [ethereum-wallet-account-management-select] shortcode to provide your customer account selection widget wherever you like
Account Import
Use the [ethereum-wallet-account-management-import] shortcode to provide your customer account import widget wherever you like
Account Export
Use the [ethereum-wallet-account-management-export] shortcode to provide your customer account export widget wherever you like
QR-code is displayed for account and private key export shortcodes
Leaderboard
To display a table of all accounts with the basic blockchain coin like ETH/BNB/POL or ERC20 token balances insert the [ethereum-wallet-history direction="in"] shortcode wherever you like.
PRO version only. Free 7 days Trial is available!
Features:
- Fiat balances also shown.
- Avatars and logins are shown for the admin user.
- Integration with BuddyPress is provided for avatars display.
Attributes:
tokenaddressAdd thetokenaddress="0x6975be450864c02b4613023c2152ee0743572325"attribute to display token balances instead of the basic blockchain coin like ETH/BNB/POL balance.mintokenamountAdd themintokenamount="0.001"attribute to display users with token balances greater or equal to the value set only.
Specified token balance display example:
[ethereum-wallet-accounts-table tokenaddress="0x6975be450864c02b4613023c2152ee0743572325"]
Specified minimum token balance display example:
[ethereum-wallet-accounts-table mintokenamount="0.001"]
NFT Tokens List
To display a list of all account’s NFT tokens insert the [ethereum-wallet-nft] shortcode wherever you like.
PRO version only. Free 7 days Trial is available!
Features:
- Pagination
- The NFT image, video, audio and PDF display
- The NFT Send button
- The NFT Resell button. The WCFM Marketplace Cryptocurrency Plugin is required.
- The NFT external URL link button
- The NFT contract address
- The NFT token ID
- The NFT description
- Buttons to copy the NFT contract address and token ID or show them as a QR code
- Button to open the NFT contract address in a blockchain explorer like
etherscan.io
Attributes:
accountAdd theaccount="0x6975be450864c02b4613023c2152ee0743572325"attribute to display NFT tokens for the address specified instead of the current user account address.metaaccountAdd themetaaccount="ethpress"attribute to display NFT tokens for the address connected with the EthPress plugin instead of the current user account address. Anyuser_metakey can be used here.tokensAdd thetokens="0x1E75E322542b508427A3CFc1CEE81241e97D3B35,0x2Dd977fCAFb69A82C15D85D31D81e239A05e7af2"attribute to display NFT tokens for specified contract addresses only.columnsAdd thecolumns="3"attribute to display three NFT tokens in a rowrowsAdd therows="2"attribute to display two NFT tokens in a columnupdatetimeoutLimit events update rate withupdatetimeout="60"for once per minute update.usedefaultexternalurlAdd theusedefaultexternalurl="1"to display the default blockchain external URL likeopensea.ioinstead of the one for the JSON metadata.
Specified account example:
[ethereum-wallet-nft account="0x6975be450864c02b4613023c2152ee0743572325"]
Specified metaaccount example:
[ethereum-wallet-nft metaaccount="ethpress"]
Specified columns and rows example:
[ethereum-wallet-nft columns="3" rows="2"]
Dividends
To display dividends payment history insert the [ethereum-wallet-dividends] shortcode wherever you like.
PRO version only. Free 7 days Trial is available!
Features:
- Pagination and filtering is available for the transaction events history table
- Transaction events are auto-refreshed by listening to the blockchain
Attributes:
rowsAdd therows="10"attribute to display 10 events on a pageiconheightUseiconheight="54px"attribute to manually set the shown token icon height. Useful for design fine tune.updatetimeoutLimit events update rate withupdatetimeout="60"for once per minute update.
Dividends table example:
[ethereum-wallet-dividends rows="50" iconheight="54px" updatetimeout="120"]
To use the ERC20 Dividend Payments Add-On install the Cryptocurrency Product for WooCommerce and then go to Settings > Cryptocurrency Product > Add-Ons > Dividends.
Features
- Use the
user_ethereum_wallet_addressuser_meta key to display the user’s account address, or for theEthereum Wallet meta keysetting of the Cryptocurrency Product for WooCommerce plugin - The
user_ethereum_wallet_last_tx_hashuser meta key can be used to access the user’s most recent transaction - Integration with the Ether and ERC20 tokens WooCommerce Payment Gateway plugin is provided
Ethereum walletcolumn with linked user’s account addresses is displayed on theUsersWordPress admin page (/wp-admin/users.php)
PRO Features:
Full ERC20 and NFT tokens support in the PRO version! Free 7 days Trial is available!
- ERC1155 NFT token standard support
- Admin markup feature to earn Ether fee from your site’s Ethereum Wallet users
- Custom/private blockchain feature:
Ethereum Node JSON-RPC Endpointand other related settings to use Binance Smart Chain (BSC) Config, Polygon and any other EVM compatible blockchain - Multi-vendor support for the Cryptocurrency Product for WooCommerce plugin
Tools/Ethereum Walletsubmenu can be used to manually recalculate user account balances- User account addresses initialization on the
Tools/Ethereum Walletpage. Useful if plugin is installed on the already established site with many users registered. - ERC1404 Simple Restricted Security Token Standard support. If transfer is not allowed, corresponding error message would be displayed.
- The EthPress NFT Access Add-On support. The account generated is tested for NFTs configured ownership.
Disclaimer
By using this plugin you accept all responsibility for handling the account balances for all your users.
Under no circumstances is ethereumico.io or any of its affiliates responsible for any damages incurred by the use of this plugin.
Every effort has been made to harden the security of this plugin, but its safe operation depends on your site being secure overall. You, the site administrator, must take all necessary precautions to secure your WordPress installation before you connect it to any live wallets.
You are strongly advised to take the following actions (at a minimum):
- Educate yourself about cold and hot cryptocurrency storage
- Obtain hardware wallet to store your coins
- Educate yourself about hardening WordPress security
- Install a security plugin such as Jetpack or any other security plugin
- Enable SSL on your site if you have not already done so.
By continuing to use the Ethereum Wallet WordPress plugin, you indicate that you have understood and agreed to this disclaimer.
Testing
You can test this plugin in some test network for free.
The
goerliandsepoliatestnets are supported.
See the FAQ section for more details.
l10n
This plugin is localization ready.
Languages this plugin is available now:
- English
- Russian(Русский)
- German(Deutsche) by Johannes from decentris dot com
Feel free to translate this plugin to your language.
Screenshots

The [ethereum-wallet-account]display
The [ethereum-wallet-sendform]display
The [ethereum-wallet-history]display
The Blockchain settings 
The [ethereum-wallet-account-management-create]display
The [ethereum-wallet-account-management-import]display
The [ethereum-wallet-account-management-select]display
The [ethereum-wallet-account-management-export]display
The [ethereum-wallet-nft columns="3" rows="2"]display
The [ethereum-wallet-balance]display with different settings
The [ethereum-wallet-nft columns="3" rows="2"]token info display
The API Keys settings 
The Admin Fee settings 
The Advanced Blockchain settings part 1 
The Advanced Blockchain settings part 2 
The IPFS settings 
The [ethereum-wallet-accounts-table]accounts with fiat balances display
Installation
Make sure that System Requirements are met on your hosting provider. This provider is tested for compliance: Cloudways
- Enter your settings in admin pages and place the
[ethereum-wallet-sendform],[ethereum-wallet-balance]and other shortcodes wherever you need it. - For the proper use of the
[ethereum-wallet-accounts-table]shortcode, change thePermalink Settingsto anything other than the default value.
Use this guide to install and configure the WordPress Ethereum WalletConnect plugin: Install and Configure.
FAQ
-
How to install the Ethereum Wallet plugin?
-
Follow this video guide please:
-
How to put shortcodes on a page?
-
Follow this video guide please:
-
How to setup the admin comission fee settings?
-
Follow this video guide please:
-
How to configure plugin for the Ethereum Mainnet?
-
Follow this video guide please:
-
How to configure plugin for the Binance Smart Chain (BSC) Mainnet?
-
Follow this video guide please:
See details on the Binance Smart Chain (BSC) Config page please.
-
How to configure plugin for the Binance Smart Chain (BSC) Testnet?
-
Follow this video guide please:
See details on the Binance Smart Chain (BSC) Config page please.
-
How to configure plugin for the Polygon Mainnet?
-
Follow this video guide please:
See details on the Polygon Wallet WordPress Plugin Configuration page please.
-
How to configure plugin for the Polygon Mumbai Testnet?
-
Follow this video guide please:
See details on the Polygon Wallet WordPress Plugin Configuration page please.
-
How to enable bcmath, gmp and mbstring PHP modules?
-
Got a message “WordPress Ethereum Wallet requires GMP module to be installed.”?
Contact your hosting provider support. This provider is tested for compliance: Cloudways
On a *nix dedicated server use command similar to this one:
sudo apt-get install php-bcmath php-gmp php-mbstring service apache2 restartFor AWS bitnami AMI restart apache2 with this command:
sudo /opt/bitnami/ctlscript.sh restart apache -
What a typical shortcodes configuration I can use?
-
Possible shortcodes configuration:
[ethereum-wallet-nft columns="3" rows="2"] [ethereum-wallet-account] [ethereum-wallet-balance displayfiat="1" tokeniconpath="https://example.com/icons/ETH.png"] [ethereum-wallet-balance tokensymbol="TSX" tokenname="Test Coin" tokenaddress="0x6Fe928d427b0E339DB6FF1c7a852dc31b651bD3a" tokenwooproduct="123" tokeniconpath="https://example.com/icons/BTC.png"] [ethereum-wallet-sendform] [ethereum-wallet-history] [ethereum-wallet-account-management-select] [ethereum-wallet-account-management-create] [ethereum-wallet-account-management-import] [ethereum-wallet-account-management-export] -
Why the Infura.io Api Key is required?
-
The Infura.io Api Key is required to interact with Ethereum blockchain.
-
Where the Infura.io Api Key can be obtained?
-
Register for an infura.io API key and put it in admin settings. Use this Get infura API Key Guide if unsure.
-
How to test this plugin on a Görli testnet?
-
- Set the
Blockchainsetting toEthereum Görli Testnet - Request some Görli Ether from some faucet
- Buy some
0xb4354f51b51ab69d7415d54108dd2f68223c3239TSX token by sending some Görli Ether amount to it’s Crowdsale contract:0x448276ac3c99620f02cc2ac60964aca44b20929a - Send some Görli Ether to the account this plugin generated for you. Use
[ethereum-wallet-account]shortcode to display it - Now test the plugin by sending some Görli Ether from the generated account address to your other address. Use the
[ethereum-wallet-sendform]shortcode to render the send form on a page. - Check that proper amount of Görli Ether has been sent to your payment address
- You can use any ERC20 token to test the same
- Set the
-
How to test this plugin on a Sepolia testnet?
-
- Set the
Blockchainsetting toEthereum Sepolia Testnet - Request some Sepolia Ether from some faucet
- Send some Sepolia Ether to the account this plugin generated for you. Use
[ethereum-wallet-account]shortcode to display it - Now test the plugin by sending some Sepolia Ether from the generated account address to your other address. Use the
[ethereum-wallet-sendform]shortcode to render the send form on a page. - Check that proper amount of Sepolia Ether has been sent to your payment address
- You can use any ERC20 token to test the same
- Set the
Reviews
ডেভেলপার এবং কন্ট্রিবিউটর
“Ethereum Wallet” is open source software. The following people have contributed to this plugin.
কন্ট্রিবিউটরTranslate “Ethereum Wallet” into your language.
ডেভেলপমেন্ট এ আগ্রহী?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
4.12.7
- scoper error fix 2
4.12.6
- scoper error fix
4.12.5
- freemius library version update
- etherscan API v2 migration
4.12.4
- freemius library version update
4.12.3
- fix issues when exchange rate is N/A. When WooCommerce is not installed or currency exchage API Key not provided
4.12.2
- freemius library version update
4.12.1
- MATIC to POL migration
- freemius library version update
4.12.0
- Audio and PDF support for NFT tokens
4.11.0
- WooCommerce HPOS compatibility implemented
- freemius library version update
4.10.8
- Fix balance display for
tokeniconpathattribute - freemius library version update
4.10.7
- Fix admin tools issue with very old plugin instalations
- Confirm message before account deletion or selection
- freemius library version update
4.10.6
- freemius library version update
4.10.5
- Blockchain explorer API Key settings fix
4.10.4
ethprice_api_urlsetting fix
4.10.3
web3.jsversion updated
4.10.2
- Better Freemius.com licensing support
- Wrong gas calculation issue for EIP1559 fix
4.10.1
- Wrong gas calculation issue is fixed. For more info see here.
4.10.0
- The
usedefaultexternalurlattribute is added to the[ethereum-wallet-nft]shortcode. If set to1, the default blockchain external URL likeopensea.iowill be used instead of the one for the JSON metadata.
4.9.0
- ERC1155 NFT token support
4.8.4
- Refactor supported blockchains info
4.8.3
- Remove unsupported test networks
- Check if infura API key plan supports the network selected
4.8.2
- Undefined array key “tokenlist” warning fix
4.8.1
- Blockchain settings configuration is simplified for both, infura.io supported and custom networks
4.7.5
- Blockchain explorer paths fixes
4.7.4
sepoliatestnet support is added
4.7.3
woocommerce/action-schedulerupdate to the 3.5.1
4.7.2
woocommerce/action-schedulerupdate to the 3.4.2 version as used in the WC 6.9.1 version
4.7.1
- The NFT re-sell button is shown only if user is a vendor
4.7.0
- The EthPress NFT Access Add-On support is added.
4.6.1
- Fix for the
tokensattribute of theethereum-wallet-nftshortcode.
4.6.0
- The
metaaccountattribute added to theethereum-wallet-nftshortcode. Add themetaaccount="ethpress"attribute to display NFT tokens for the address connected with the EthPress plugin instead of the current user account address. Anyuser_metakey can be used here. - The
tokensattribute added to theethereum-wallet-nftshortcode. Only tokens specified here will be shown.
4.5.4
- NFT display error for NFTs with no image is fixed
4.5.3
- Docs improved
- Unnecessary freemius sections removed
4.5.2
- Better NFT support if
external_urlis not set
4.5.1
- People often skip the ‘s’ letter. This fix is to workaround such mistakes.
- Fix fatal error if network is configured incorrectly and WooCommerce is not installed.
4.5.0
ethereum-wallet-sendformshortcode can be configured withtokendecimals,tokendecimalcharandtokeniconheightattributes, like[ethereum-wallet-sendform tokendecimals="4", tokendecimalchar="," tokeniconheight="54px"]- Success notification after tx is sent from send form, activity or NFT tokens list.
- QR code scan fix.