Bitcoin and Altcoin Wallets

Description

Custodial cryptocurrency wallets.

At a glance

Bitcoin and Altcoin Wallets is a FREE WordPress plugin by dashed-slug.

Your users can deposit, withdraw and transfer Bitcoins and other cryptocurrencies on your site.

Free wallet adapter extensions

You can extend this plugin to work with other coins if you install wallet adapters.

There is a built-in wallet adapter that lets you connect with Bitcoin core and similar wallets, such as: Dogecoin core, Bitcoin ABC (Bitcoin Cash wallet), Litecoin core, etc. Any wallet that uses the Bitcoin core RPC API is compatible.

The following wallet adapters are available for free to all dashed-slug subscribers.

You do not have to pay for membership to get the wallet adapters.

Premium app extensions

Premium dashed-slug members get unlimited access to download all the premium extensions:

Premium members get auto-updates for any installed extensions. See how to set up auto-updates.

follow the slime

Find the dashed-slug on the web:

Donating

This is a free plugin built by the dashed-slug team!

  • Bitcoin: 1DaShEDyeAwEc4snWq14hz5EBQXeHrVBxy
  • Litecoin: LdaShEdER2UuhMPvv33ttDPu89mVgu4Arf
  • Dogecoin: DASHEDj9RrTzQoJvP3WC48cFzUerKcYxHc

Screenshots

  • [wallets_deposit] – Users can view their deposit addresses, create new addresses, and associate them with a label.
  • [wallets_move] – Users can transfer funds to other users on the system, off-chain. Whether they pay fees to your site is up to you.
  • [wallets_withdraw] – Users can request to withdraw funds to an external wallet.
  • [wallets_balance] – Users can view their balances, either one-by-one, or as a list. Equivalent amounts can be shown in USD, EUR, BTC or other currencies that you choose.
  • [wallets_transactions] – Users can view paginated details on their past transactions. You can choose which columns are rendered and in what order.
  • Wallets post type – Easily manage your various wallet backends via the Wallet post type.
  • Wallet post type – The wallet post type encapsulates all connection settings with your wallet’s API and displays wallet status.
  • Currency post type – Associate the currencies you want to offer with your wallets, using the Currecy post type. Easily edit settings related to each currency. Group currencies together using a special Currency Tags taxonomy.
  • Address post type – Keep track of deposit and withdrawal addresses. Easily edit address details, or list transactions associated with addresses. Group addresses together using a special Address Tags taxonomy.
  • Transaction post type – Easily edit transaction details or create new transactions. Group transactions together using a special Transaction Tags taxonomy.
  • Capabilities settings – Since version 6.0.0, all settings are neatly organized into tabs, both for the plugin and for its premium extensions.

Installation

To get started, install the plugin and follow the on-screen installation wizzard.

You can also consult the documentation. In the WordPress admin screens, see Wallets Admin DocswalletsInstallation instructions.

Disclaimer

By using this free plugin, you accept all responsibility for storing and handling user funds.

Under no circumstances is dashed-slug.net or any of its affiliates responsible for any damages incurred by the use of this plugin.

By continuing to use the Bitcoin and Altcoin Wallets plugin, you indicate that you have understood and agreed to this disclaimer.

FAQ

Where is the plugin’s documentation?

Since version 6.0.0, the plugin displays its own documentation in the admin screens. Just go to the Wallets Admin Docs menu, where you’ll find the documentation for the plugin, and for any plugin extensions you have installed.

Developers can study the PHPdocumentor pages at: https://wallets-phpdoc.dashed-slug.net/

How secure is it?

When users issue transactions, these can require verification via an email link by the user. Additionally, you can require that an admin also verifies each transaction. (See “Confirmations” in the documentation).

Of course, the plugin is only as secure as your WordPress installation is.

You should take extra time to secure your WordPress installation, because it will have access to your hot wallets. At a minimum you should do the following:

  • Install a security plugin such as Wordfence.
  • Read the Codex resources on Hardening WordPress.
  • If you are connecting to an RPC API on a different machine than that of your WordPress server over an untrusted network, tunnel your connection via ssh or stunnel. See here.

Some more ideas:
– Add a user auditing tool such as Simple History.
– Add a CAPTCHA plugin to your login pages.
– Only keep up to a small percentage of the funds in your hot wallet (See Cold Storage in the documentation).

I am installing a bitcoin full node on my server. How can I run it as a service so that it is always running?

This will depend on the Linux distribution on your server.

To setup bitcoin core as a service on systemd I used this guide.

Here is my /etc/systemd/system/bitcoin.service file:

[Unit]
Description=Bitcoin wallet service
After=network.target
StartLimitBurst=5
StartLimitIntervalSec=10

[Service]
Type=simple
Restart=always
RestartSec=1
User=alexg
ExecStart=/usr/local/bin/bitcoind

[Install]
WantedBy=multi-user.target

You will need to edit the user name to match yours, and possibly the path to your bitcoind binary.

Follow the article to set the service to run automatically on system restart. You should never have to enter the bitcoin command directly in the shell. Always let the system start it automatically as a service.

After that, you must check with your hosting provider (the provider who supplies the server for your bitcoin daemon) to see if there are any firewalls, blocking incoming communication with TCP port 8332. Also check any local firewalls that you may be running, such as ufw.

Can I control which users have a wallet?

Yes, simply assign the has_wallets capability to the appropriate users or user roles. You should also assign more capabilities, such as list_wallet_transactions, send_funds_to_user, and withdraw_funds_from_wallet.

You can control the capabilities per user role by navigating to: SettingsBitcoin and Altcoin WalletsCapabilities.

Can I use the plugin to create an investment / interest paying site?

Yes, you can use the premium Airdrop extension to perform recurring airdrops. These can effectively be paid out in the form of an interest on the user’s wallet.

Can I use the plugin to create a WooCommerce store that accepts cryptocurrencies?

Yes, you can use the premium WooCommerce Cryptocurrency Payment Gateway extension. With it, users can use their on-site balance to checkout their shopping carts.

Can I use the plugin to create a crypto faucet?

Yes, you can use the premium Faucet extension to let users earn crypto by solving CAPTCHAs.

Can I use the plugin to create a crypto exchange?

Yes, you can use the premium Exchange extension to create market pairs. However the markets are local only, which means that no liquidity is imported from other exchanges. Read the disclaimers.

Can I use the plugin to do a token sale?

No, this plugin is not suitable for token sales.

However, you could, of course, setup markets using the Exchange extension, and set a large limit sell order with your admin account. This will allow users to buy your shillcoin. You can even disable buying or selling separately.

Can I use the plugin to accept tips for articles?

Yes, you can use the premium Tip the author extension. This lets you attach a tipping UI to posts/articles. You can control where the tipping UI is shown, by post type, category, tags, or even author. Only authors with the receive_tip capability can receive tips, and only users with the tip_the_author capability can send tips.

Can I use the plugin to create a paywall?

Not yet. However, a premium extension to let you do just that is currently in development.

How can I change the plugin’s code?

The plugin and its extensions are yours to edit. You are free to hack them as much as you like. However, you are generally discouraged from doing so, for the following reasons:

  • I cannot provide support to modified versions of the plugin. Editing the code can have unintended consequences.

  • If you do any modifications to the code, any subsequent update will overwrite your changes. Therefore, it is not recommended to simply fire away your favorite editor and hack away themes or plugins.

Whenever possible, use an existing hook (action or filter) to modify the behavior of the plugin. Then, add your code to a child theme, or in separate plugin file. Any PHP file with the right headers is a valid plugin file.

If you can’t find a hook that allows you to do the modifications you need, contact me to discuss about your need. I may be able to add a hook to the next patch of the plugin.

Why is my CSS not being applied to the UI elements?

This is usually due to the plugin’s CSS rules hiding your own rules. Don’t just spam !important, instead take the time to study CSS rule specificity. If you are unsure how to apply a particular rule on the plugin’s UIs, you can contact me.

How can I change something in the UI elements?

There are several ways to do this, depending on what type of change you want to apply. Please check the documentation under Frontend and ShortcodesModifying the UI appearance.

How can I perform transactions from my PHP code?

There are two ways to do this:

  1. You can create DSWallets\Transaction objects, populate all the fields, then save the obects to the DB. For details, check the documentation under: Developer referenceWorking with custom post type objects, and the PHPDocumentor page for the Transaction class for example code.

  2. You can use the Legacy PHP-API. This is compatible with previous versions of the plugin.

How can I perform transactions from the JavaScript frontend?

There are two ways to do this:

  1. You can use the WP-REST API. Consult the documentation under: Developer referenceWallet APIsWP-REST-API.

How can I change the wallet backing a particular currency?

It is possible that, for a particular cryptocurrency you may want to replace the wallet backing it with another wallet. For example, you may be offering Bitcoin via the CoinPayments service, and want to start using a Bitcoin core full node wallet. Or you may be using Bitcoin core, and you want to move to a new wallet.dat file.

This has become a lot easier with versions 6.0.0 and later, because Currencies and Wallets are now decoupled:

  1. Create the new Wallet with the built-in Bitcoin adapter for full nodes. Connect to your new full node wallet.
  2. Edit your Currency, in this case, Bitcoin. Set the Wallet to your new full node wallet entry, and Update the Currency.
  3. Transfer the hot wallet balance from one wallet to the other. Transfer all the funds to an address generated by new Hot Wallet. The address must NOT be a deposit address assigned to a user. For example, you can use the deposit address shown in the Cold Storage tool for your new wallet.
  4. Delete all the old deposit addresses for that currency. This will force the plugin to generate new deposit addresses from the newly connected wallet.
  5. Inform your users that they must no longer use the old deposit addresses, if they have them saved somewhere.

If unsure about this process, please contact me.

How does the plugin work in multisite installations?

How it works depends on whether the plugin (and its extensions) are network-activated or not. In network-activated setups, users have one balance ber currency, across all sites the network. If the plugin is NOT network-activated, users have a different balance on each site on the network, and each site can have different currencies and wallets.

Note that the plugin and its extensions MUST either all be network activated, OR all must be activated on individual blogs. Do not mix-and-match network-activated and non-network-activated wallets plugins.

Consult the documentation section Multisite for more information.

How to handle a hack/cyberattack?

While the latest WordPress version is often secure, the same cannot be said about all the WordPress plugins out there. Every day new security vulnerabilities are found involving WordPress plugins. Since WordPress is such a popular software platform, it gets a lot of attention from hackers.

Take an immediate backup of the site, and the server it runs on, if possible. This will preserve any traces that the hackers may have left behind. Funds theft is a crime and you can report it to the police, just like any other hack.

It’s best if you are prepared beforehand: Keep the software on the site updated regularly. Take the time to harden your server and WordPress installation. Try to use only reputable plugins on your site and keep them updated. Use a security plugin.

Finally, only keep a small percentage of the user balances on the hot wallet, utilizing the Cold storage feature to transfer the remaining funds to offline wallets. That way, in case WordPress is compromised, you don’t lose all your users’ funds! Please take wallet management seriously. There is no software that will automatically do opsec for you. Have a plan on how to act in case of theft.

If you think you have discovered a security vulnerability in this plugin, please let me know over email (not on a public forum).

How can I become a premium member and get access to the app extensions?

Paying members can download the available App extensions and can download updates to those extensions.

Study the available Membership plans

What payment methods are available

The site accepts Bitcoin and Ethereum. Please deposit the correct amount to your account, then choose a subscription.

Since 1 November 2022,
membership is implemented using the plugin itself. The downloads are protected behind a paywall
using the Paywall extension.

Previously the site accepted PayPal recurring payments. If you have already signed up using PayPal, you can continue to use it to pay for membership. New PayPal accounts are no longer available.

If you wish to pay via a different method, contact me by email.

You can send a PayPal payment to my business email address and let me know. I will then activate your membership manually, within 1 business day.

I cannot download the premium plugins after paying for membership.

If you have paid for an EU business plan, you must provide a valid VATIN. Please enter the VATIN without the country code prefix, and enter the correct City and Country for your business, in your profile details.

If you have paid for a regular plan, and for some reason you still cannot download the premium plugins, please contact me by email.

How can I cancel my membership?

If you have signed up with a PayPal recurring payment, you can go to your PayPal dashboard to cancel the recurring payment.

Additionally, if you wish, you may delete your account from the profile screen on the dashed-slug website. Deleting your account does not automatically cancel your PayPal subscription. Simply visit your profile

If you have paid via cryptocurrencies, there is no need to cancel. You can delete your account if you want, by visiting your profile. There is usually no need to do so.

I am not happy with the plugin. Can I ask for a refund?

You can ask for a refund of any payment within 30 days from the day of payment, no questions asked. Please contact me by email.

Are you available for custom development work?

Unfortunately I am not available for custom development work.

Can you install the plugin for me?

I do not undertake installations. I remain available to assist and answer any questions about the installation and configuration process.

Regarding plugin installations, please consider this: Unless you know how the plugin works, you will not be able to provide support to your users, or fix issues when these arise. If you are not a developer, you should probably hire a developer to perform the installation and maintenance.

Can you add XYZ feature?

You can always suggest a feature to me. If it makes sense and I have the time, I might implement it. I do not make promises on this, therefore I do not accept payment for features.

I am encountering some problem or I have another question.

First check the Troubleshooting section of the documentation. The answer to your question may be listed there.

If you cannot find the answer to your question, please consult the documentation under Contact Support.

How can I reach you over IM?

I speak daily with many people, while I also do the development, testing, management, marketing, and everything else.

For this reason, I am NOT reachable over chat apps.

Please state your request on the forums or over email, and I will respond within 24 hours, Monday to Friday. If you are encountering an error, please show me the error message in a screenshot. Try to explain what you did so far and how you arrived at the error.

Reviews

April 13, 2024 2 replies
A very interesting person.I ordered a plugin from him.I paid, but I can’t download it.I write to him, he writes to me.As a result, minus a week of time, minus 10 euros of money and no plugins.But I had an interesting time.Thank you Alex.
December 3, 2020 1 reply
I appreciate all your efforts on this plugin. It solved all my issues, thank you
Read all 27 reviews

Contributors & Developers

“Bitcoin and Altcoin Wallets” is open source software. The following people have contributed to this plugin.

Contributors

“Bitcoin and Altcoin Wallets” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Bitcoin and Altcoin Wallets” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

6.4.0

  • Add: New feature allowing old transactions to be aggregated to reduce DB table sizes and improve performance.
  • Add: Upon plugin activation, an index is added to the postmeta table’s columns post_id and meta_key, to improve performance.

6.3.3

  • Fix: Issue affecting creating new transactions from admin, introduced in 6.3.2, now fixed.

6.3.2

  • Fix: Security issue where a logged in user with access to the admin screens could perform XSS attacks is now fixed.
  • Fix: Deprecation warnings in PHP8.4 about implicitly nullable types are now squashed.
  • Improve: Along with easycron, the plugin also now suggests cron-job.org which is a free alternative.

6.3.1

  • Fix: Issue regarding editing addresses/transactions via the admin screens, introduced in 6.2.6, is now fixed.

6.3.0

  • Add: It is now possible to submit bank transfer requests with a combination of SWIFT/BIC and Account Number. This will be useful for African countries.
  • Improve: Saving transactions and addresses to the DB is now much faster. This should improve the UI experience when submitting transactions.
  • Fix: When submitting a bank transfer request, it is no longer possible to click the submit button again while another request is underway.

6.2.7

  • Fix: Issue with withdrawal fees not loaded, introduced in 6.2.6 is now fixed.
  • Fix: Issue with transaction emails not being sent in some environments, introduced in 6.2.6, is possibly now fixed (CNR).

6.2.6

  • Change: When the plugin loads batches of Wallets, Currencies, Transactions, or Addresses, it now does it faster and with less SQL queries to the DB to improve performance.
  • Add: New built-in object cache to further improve DB performance. Can be turned off in general settings.

6.2.5

  • Fix: Issue preventing the plugins from running on Windows (XAMPP).
  • Fix: Deprecation warning in WP-REST API currency endpoints.
  • Fix: Plugin header now correctly indicates that the plugin requires PHP 7.0 or later.
  • Fix: DSWallets\Transaction objects now correctly load the timestamp field from the DB.

6.2.4

  • Fix: Issue with Fiat Withdrawals not checking for the has_wallets capability correctly is now fixed.
  • Add: Extensible way to exclude some currency tags from [wallets_deposit] and [wallets_withdraw] shortcodes, for the upcoming Taproot Assets adapter.

6.2.3

  • Fix: Clicking the re-scrape button in Bitcoin-like wallet adapters now refreshes the page again.

6.2.2

  • Fix: Issue introduced in 6.2.0 where wallets were prevented from being enabled/disabled, now fixed.
  • Fix: Minor warning in logs when saving bitcoin wallet adapters.
  • Add: The debug tab in the Dashboard panel now shows the database version.
  • Add: Mention of rpcbind in accompanying installation instructions.

6.2.1

  • Fix: Issue introduced in 6.2.0 where the wallet admin screen would crash on new installations is now fixed.
  • Add: Generic error handling for when the metabox of a wallet adapter crashes.
  • Add: New REST API endpoint for retrieving an Address by its post ID. See the REST API documentation for details.
  • Change: The wording for the description for the “Contract Address” field under Addresses is now changed to include Taproot Asset IDs for the upcoming tapd Wallet adapter.

6.2.0

  • Add: New feature for Bitcoin Core (and similar) wallet adapters: Admin can now restart scraping from a specific block height.
  • Fix: If another theme or plugin loads an old version of Parsedown, causing ParsedownExtra to fail to load, the documentation viewer falls back gracefully to whatever Parsedown is currently loaded.
  • Change: The “Contract address” field for “Currency” entries can now accept Asset ID hex strings. This is necessary for the upcoming Taproot Assets Wallet Adapter.
  • Improve: If cron jobs are not running, the warning message in the admin screens now links to the relevant documentation.

6.1.10

  • Fix: Fixed issue where the PHP curl library would not return meaningful error messages to the admin user in case of connection failures.
  • Add: When actions are initiated via the frontend UIs by clicking a button, the button is now animated until the action completes. Additionally, the actions are performed asynchronously for a better user experience.
  • Remove: Duplicate display of Confirmation link in withdrawal transactions is now removed. The Confirmation link is shown once at the top left part of the screen.
  • Remove: The “post slug” metaboxes are not useful and have been removed from the following CPTs: Wallets, Currencies, Addresses, Transactions.
  • Remove: The plugin’s CPTs are no longer available to be added to frontend menus, since the posts themselves are only useful in the backend.
  • Add: The PHP templates now come with a warning about not editing the templates in-place. The warning links to the documentation where the admin can learn more about this.
  • Add: Troubleshooting section in documentation now has more information on how to restore the manage_wallets capability to the admin user.

6.1.9

  • Fix: Silly syntax errors introduced right before summer vacation.

6.1.8

  • Add: New setting allows for deposits to be ignored if they have a timestamp earlier than a set cutoff value.
  • Add: When initiating an addresses and balances-only migration, the deposit cutoff value is set to the current timestamp.

6.1.7

  • Fix: Issue introduced in 6.1.6 which prevented admin transaction editing is now fixed.
  • Fix: If you have setup walletnotify for Bitcoin core and similar wallets, the notification API is now disabled while migration is underway.
  • Change: The walletnotify and blocknotify WP-REST API endpoints associated with Bitcoin core and similar wallets now returns uniform error messages. The HTTP status is not always 200, but reflects the error that was encountered. The value of the returned status field is no longer success/error but is the HTTP response code, which is 200 when the call was successful.

6.1.6

  • Change: In the plugin’s general settings, the maximum deposit address limit is now applied per user and per currency. Was previously applied per user only over all currencies.
  • Fix: When listing transactions in the admin screens, if the associated currency has block explorer URIs, these are now used to link addresses and TXIDs to a block explorer.
  • Add: New filter wallets_tags_exclude_min_withdraw allows a currency’s minimum withdrawal amount to not apply to transactions with the specified tags. This will allow the upcoming lnd extension to bypass this restriction for Layer2 transactions.
  • Improve: Transactions that are not modified will no longer be re-written to the DB. This improves performance, plus it allows the last modified timestamp to remain intact in case of no actual modification of transaction data.
  • Fix: The new mechanism for detecting whether a camera is available for scanning QR-Codes, introduced in 6.1.4, was buggy and is now fixed.

6.1.5

  • Fix: Usage of words “debit” and “credit” is now correct according to how the terms are used in everyday language, as opposed to their usage in accounting.

6.1.4

  • Fix: Shortcode [wallets_fiat_withdraw] does not submit withdrawal requests with invalid amount.
  • Add: Shortcode [wallets_fiat_withdraw] now accepts atttributes: currency_id, symbol to specify the default currency.
  • Add: New WP-REST API endpoint /users/U/currencies/C for retrieving a single currency C and the balances of user U for that currency.
  • Improve: Added a new withdrawal check: It is now impossible for a withdrawal to be executed as long as it has a TXID assigned. If you need to repeat execution, you must clear the TXID.
  • Improve: The [wallets_withdraw] UI now uses a getUserMedia() call to determine if a camera is available to scan QR-Codes. Previous method using CSS media queries was not optimal.
  • Improve: The included copy of moment.js is now upgraded to version 2.29.4.

6.1.3

  • Fix: Setting the currency_id attribute on the [wallets_deposit] shortcode now works again.
  • Fix: Listing the addresses of a specific user now works again.
  • Fix: Listing the addresses of a specific type (deposits, withdrawals) now works again.
  • Improve: The transactions editor now loads faster on sites with many thousands of users. The user dropdown is replaced with an text input where you type a user_login and it autocompletes with AJAX.
  • Improve: It is now possible to search addresses by keyword, and the keyword is matched against the address title AND the address string.
  • Add: Addresses with the archived tag will not be shown in the REST API and frontend. This will be useful for the Lightning adapter later, among other things.

6.1.2

  • Fix: Issue with editing transactions in admin when system holds too many transactions is now fixed.

6.1.1

  • Fix: Issue with transactions search in admin is now fixed.
  • Fix: When editing wallet adapter settings, it is now possible to uncheck boxes for boolean values.

6.1.0

  • Add: New option “Admin must approve withdrawals”. When on, pending withdrawals must be approved by an admin in the Transactions list screen using the “Approve” batch action.
  • Add: The frontend “VS amounts”, i.e. the equivalent amounts expressed in “VS currencies”, are now shown with a number of decimals that is configurable by the admin.
  • Add: Admin can now search transactions by TXID.
  • Fix: Admin can now search for cancelled or failed transactions.
  • Fix: When filtering posts, all enabled filters are now shown in bold and with ARIA accessibility attributes.
  • Add: For pending withdrawals, admin can view the results of withdrawal pre-checks.
  • Fix: Daily withdrawal counters for currencies are now correctly enforced at all times.
  • Add: Daily withdrawal counters are now visible in the profile screen of each user.
  • Add: For pending withdrawals, developer can add withdrawal pre-checks with action wallets_withdrawal_pre_check and with filter wallets_withdrawals_pre_check.
  • Fix: When showing [wallets_account_value] shortcode without any enabled “VS currencies”, the account value is now shown as ‘?’ and not ‘Undefined ?’.
  • Fix: Documentation updated to reflect changes in premium plugin payment method and added mention to new Paywall extension.
  • Fix: Improved logging for wallet adapters cron task.
  • Fix: Added guard clause in currency icons cron task to protect against missing returned data from remote service.

6.0.0

  • Change: Sourcecode rewritten from scratch and modernized for PHP7.x compatibility: Namespaces, callbacks, etc.
  • Change: Coin adapters removed and replaced with wallet adapters. Wallet adapters are a more versatile abstraction of external wallets.
  • Change: All amounts stored on the DB are now stored as integers. This avoids FP/rounding errors, but requires the admin to specify the number of decimals on a Currency explicitly.
  • Add: Wallets now have their own CPT and editor screen. Connection information for wallet APIs is now decoupled from currency details.
  • Add: Currencies now have their own CPT and editor screen. Currency details are now decoupled from wallet connection information details.
  • Change: Currencies are no longer identified by their ticker symbol, since these can clash. Currencies are now uniquely identified by their post ID.
  • Change: Transactions now have their own CPT and editor screen. Transactions are no longer stored in custom SQL tables, but are stored as posts.
  • Add: If a transaction is saved without a comment, a basic comment is entered as a title.
  • Change: Addresses now have their own CPT and editor screen. Addresses are no longer stored in custom SQL tables, but are stored as posts.
  • Add: When creating a new address, if admin sets the address string empty, a new address string is created from the wallet.
  • Add: Currencies, Transactions and Addresses can be organized via tags. These are implemented as WordPress custom taxonomies.
  • Add: When listing Wallets, these can be filtered by Wallet Adapter type.
  • Add: When listing Currencies, these can be filtered by associated Wallet or Currency tag.
  • Add: When listing Transactions, these can be filtered by Currency, User, Type (deposit/withdaw/move), Status (pending, done, cancelled, failed), or Transaction tag.
  • Add: When listing Addresses, these can be filtered by Currency, User, Type (deposit/withdaw/move), Status (pending, done, cancelled, failed), or Transaction tag.
  • Add: When editing Wallets, Currencies, Transactions, or Addresses, there are now metaboxes that let an admin easily jump between associated CPTs. For example, can click a link to go from a Currency to the Transactions of that Currency.
  • Add: A new “Migration” tool helps users transfer balances from the old custom SQL tables to the new format. Please study the documentation for details.
  • Add: A new Object-Oriented way to create and manipulate Wallets, Currencies, Addresses and Transactions. Lots of example code snippets included in the docs and PHPdocumentor files.
  • Add: A documented library of helper functions can be used by PHP developers to interface with the plugin. This lives in the DSWallets namespace.
  • Change: The old PHP-API is renamed as “Legacy PHP-API”, but not removed. Only the wallets_api_adapters filter is removed, since there are no more Coin Adapters.
  • Add: A new cron job scheduler that runs jobs based on priorities. Can be triggerred externally to improve site performance.
  • Add: New email queue system based on cron, handles large volumes of outgoing emails by sending them in batches.
  • Add: New cron job that iterates over defined currencies and pulls icons/logos from CoinGecko when possible. Adds images to the WordPress media collection, and sets the logo as Currency featured image. Admin can override the featured image.
  • Change: All the plugin’s settings are now placed under the Settings menu, and organized in tabs. Extensions, when installed, add tabs to the settings screen.
  • Change: Capability settings are now in a settings tab. The existing capabilities are retained. It is also possible to edit the capabilities related to the new CPTs (Wallets, Currencies, Addresses, Transactions).
  • Add: Fiat currencies are now created automatically by a cron job when you enter a fixer.io API key. Fiat currencies can be associated to the built-in wallet adapter that handles manual Bank transfers. The Fiat Coin Adapter extension is removed.
  • Change: It is now possible to define any number of Bitcoin-like wallets and currencies without any plugin extensions. The Full Node MultiCoin Adapter extension is removed.
  • Change: The UIs are now self-contained. All the HTML markup, knockout.js attributes, JavaScript code, and CSS rules are encapsulated within the template files, and are overridable.
  • Change: The UIs are now rendered independently. This improves frontend performance. If one UI crashes, the remaining UIs continue to work.
  • Remove: There are no more static templates. All templates are dynamic. This reduces confusion about how templates work.
  • Add: Currencies can be used by users even if not associated with a Wallet, or if the wallet API is unreachable. If wallet API is unreachable, only deposits and withdrawals will not be available, but on-site transactions are still possible.
  • Add: New shortcode [wallets_status] informes users if a wallet is online.
  • Change: The exchange rates mechanism now relies on CoinGecko. If the admin provides the CoinGecko ID for a Currency, the exchange rates are retrieved automatically via cron.
  • Improve: In the Currency editor, if a currency is not associated with a CoinGecko ID, it is still possible for an admin to setup a fixed exchange rate for a currency.
  • Improve: The admin can choose against which well-known currencies the exchange rates are stored (these are the “VS currencies” and correspond to CoinGecko data).
  • Improve: The frontend UIs, when they display equivalent amounts in other currencies, no longer display amounts in one fixed site currency. User can click to rotate between displaying the equivalent amounts in all available “VS currencies”.
  • Add: Daily withdrawal limits per Currency. Can be set for all users, or per user role.
  • Add: More information in the plugin’s widget in the dashboard screen.
  • Add: A new WP-REST API which utilizes the RESTful API mechanism built into WordPress replaces the old JSON-API.
  • Change: The old JSON-API is now marked as deprecated and is disabled by default. Can be enabled in settings for backwards compatibility.
  • Add: A new system that displays documentation in the admin screens. Some screens feature direct links to the relevant documentation. As extensions to the plugin are installed, their documentation books are added to the system.
  • Change: The user profile screen has been improved. Lists all balances held by a user and links to the user’s lists of Addresses and Transactions.
  • Change: The cold storage UI screens have been improved.
  • Remove: The frontend Widgets have been removed. Please use the shortcodes instead.
VIP777 login Philippines Ok2bet PRIZEPH online casino Mnl168 legit PHMAYA casino Login Register Jilimacao review Jl777 slot login 90jili 38 1xBet promo code Jili22 NEW com register Agila Club casino Ubet95 WINJILI ph login WINJILI login register Super jili168 login Panalo meaning VIP JILI login registration AGG777 login app 777 10 jili casino Jili168 register Philippines APALDO Casino link Weekph 50JILI APP Jilievo xyz PH365 casino app 18JL login password Galaxy88casino com login superph.com casino 49jili login register 58jili JOYJILI apk Jili365 asia ORION88 LOGIN We1win withdrawal FF777 casino login Register Jiligo88 philippines 7777pub login register Mwgooddomain login SLOTSGO login Philippines Jili188 App Login Jili slot 777 Jili88ph net Login JILIMACAO link Download Gcash jili login GG777 download Plot777 app download VIPPH register Peso63 jili 365.vip login Ttjl casino link download Super Jili 4 FC178 casino - 777 slot games JILIMACAO Philippines S888 register voslot LOVE jili777 DOWNLOAD FK777 Jili188 app CG777 app 188 jili register 5JILI login App Download Pkjili login Phdream Svip slot Abcjili6 App Fk777 vip download Jili888 register 49jili VIPPH register Phmacao co super Taya777 link Pogo88 real money Top777 app VIP777 slot login PHMACAO 777 login APALDO Casino link Phjili login Yaman88 promo code ME777 slot One sabong 888 login password PHMAYA casino Login Register tg777 customer service 24/7 Pogibet slot Taya777 org login register 1xBet live Acegame888 OKBet registration JILIASIA Promotion Nice88 voucher code AgilaClub Gaming Mnl168 link Ubet95 free 50 PHMAYA casino login JLBET 08 Pb777 download 59superph Nice88 bet sign up bonus Jiliyes SG777 download apk bet88.ph login JILIPARK casino login Register Philippines PHMAYA APK CC6 casino login register mobile PHMACAO com download MWPLAY app JILIPARK Download Jili999 register link download Mnl646 login Labet8888 download 30jili jilievo.com login Jollibee777 open now LOVEJILI 11 18JL casino login register Philippines JILIKO register Philippines login Jililuck 22 WJPESO casino PHMAYA casino login Jili777 login register Philippines Ttjl casino link download W888 login Register Galaxy88casino com login OKBet legit tg777 customer service 24/7 Register ROYAL888 Plot777 login Philippines BigWin Casino real money PHLOVE 18JL PH 18JL casino login register Philippines SG777 Pro Taya777 pilipinong sariling casino Jiligames app MNL168 free bonus YesJili Casino Login 100 Jili casino no deposit bonus FC178 casino free 100 Mwcbet Download Jili888 login Gcash jili download JILIMACAO 123 Royal888 vip 107 Nice888 casino login Register FB777 link VIPPH app download PHJOIN 25 Ubet95 legit phcash.vip log in Rrrbet Jilino1 games member deposit category S888 live login FF777 download FC777 VIP APK ME777 slot Peso 63 online casino OKGames app Joyjili customer service superph.com casino FB777 Pro Rbet456 PH cash online casino Okbet Legit login taruhan77 11 VIPPH 777Taya win app Gogo jili 777 Plot777 login register Bet99 app download Jili8989 NN777 VIP JP7 fuel Wjevo777 download Jilibet donnalyn login Register Bossjili ph download 58jili login registration YE7 login register FC777 new link login 63win register Crown89 JILI no 1 app Jili365 asia JLBET Casino 77PH fun Jili777 download APK Jili8 com log in CC6 casino login register mobile ph365.com promotion phjoin.com login register 77PH VIP Login download Phdream live chat Jlslot2 Me777 download Xojili legit PLDT 777 casino login Super Jili Ace Phdream 44 login Win888 casino JP7 Bp17 casino login TTJL Casino register FB777 slot casino Jili games online real money phjoin.com login register BET99 careers ORION88 LOGIN Plot777 login Philippines Labet8888 login JILI Official Pogibet app download PH777 casino register LOVEJILI app Phvip casino VIP jili casino login PHMACAO app 777pnl legit YE7 casino online Okbet download CC6 bet app 63win club Osm Jili GCash LOVEJILI 11 Www jililive com log in Jili58 casino SuperAce88 JiliLuck Login Acegame 999 777pnl promo code MWPLAY good domain login Philippines Pogo88 app Bet casino login Superph98 18jl app download BET999 App EZJILI gg 50JILI VIP login registration Jilino1 new site pogibet.com casino Jili Games try out Gogojili legit 1xBet Aviator WINJILI ph login Jili168 register How to play Jili in GCash 777pnl PHDream register login JILISM slot casino apk FB777 c0m login EZJILI Telegram MWCASH88 APP download Jili88 vip03 APaldo download 1xBet 58JL Casino 58jl login register Jili scatter gcash OKJL slot jili22.net register login 10phginto APaldo 888 app download 1xBet live FC178 Voucher Code 58jl Jili888 ph Login 365 Jili casino login no deposit bonus JP7 VIP login PHBET Login registration 58jili login registration VVJL online Casino Club app download Jili77 login register Jili88 ph com download KKJILI casino WJ peso app Slot VIP777 BigWin69 app Download Nice88 bet Suhagame philippines Jiliapp Login register Qqjili5 Gogo jili helens ABJILI Casino OKJL download 1xBet login mobile Pogibet 888 777 game Okgames casino login Acegame888 Bet86 promotion Winph99 com m home login JP7 VIP login 20phginto VIPPH register KKJILI casino OKJILI casino Plot777 app download NN777 register bossphl Li789 login Jiligo88 app Mwcbet Download Betjilivip Https www BETSO88 ph 30jili Https www BETSO88 ph Jilievo Club Jili888 register Jili777 download APK JILI77 app download New member register free 100 in GCash 2024 Royal888casino net vip JOLIBET withdrawal MW play casino Jili365 login FB777 Pro Gold JILI Bet99 registration 55BMW red envelope Bet199 login philippines JILI188 casino login register download Phjoin legit or not Bigwin 777 Bigwin pro Apaldo PH pinasgame JILIPARK Login registration JiliApp ph04 Ph143 Jili168 login app Philippines MW Play online casino APK 77tbet register 8k8t Bigwin casino YE7 Download App Ph365 download apk Acejili Ph888 login S888 juan login 63win withdrawal Okbet cc labet 8888.com login password Mwbet188 com login register Philippines MNL168 net login registration kkjili.com download Jili888 Login registration Abc Jili com Download JILIPARK casino login Register Download AbcJili customer service live777. casino Jilievo casino jilievo APP live casino slots jilievo vip Jolibet legit PH888 login Register 888php register 55BMW win Mwbet188 com login register Philippines AbcJili customer service Jili88 ph com app 200Jili App MAXJILI casino ROYAL888 deposit mi777 Jili games free 100 ACEGAME Login Register Jilibet donnalyn login Voslot register Jilino1 live casino 18jl login app apk JILI Vip777 login Phtaya login Super Ace casino login Bigwin 777 Ubet95 free 190 superph.com casino Jili22 NEW com register SG777 win Wjpeso Logo 1xBet login mobile Jili88 casino login register Philippines sign up Okbet cc Agg777 slot login Phv888 login P88jili download jiliapp.com- 777 club Fish game online real money One sabong 888 login password QQJili Taya365 slot mnl168.net login Taya365 download Yes Jili Casino PHMACAO APK free download 365 casino login Bigwin 29 JILISM slot casino apk Wow88 jili777.com ph 888php login 49jili VIP Jilino1 legit SG777 slot Fish game online real money Voslot free 100 18jl login app apk OKJL app Jili22 NEW com register Nice88 free 120 register no deposit bonus Sugal777 app download 288jili PHJOIN VIP com Register Jl77 Casino login KKjili com login Lovejili philippines Pogo88 casino SLOTSGO VIP login password Jili22 net register login password Winph 8 we1win 100 Jili slot 777pnl promo code Sg77701 Bet88 download for Android PH365 casino Royal Club login Jili88 casino login register MWPLAY login register Jilibay Promotion 7SJILI com Register FC777 casino link download Royal meaning in relationship OKBET88 AbcJili customer service 777ph VIP BOSS JILI login Register 200Jili App KKJILI casino login register maxjili Mwcbet legit JILIASIA 50 login Milyon88 com casino login 8k8app17 Royal slot Login Phmacao rest 338 SLOTSGO Ph888 login PHGINTO com login YY777 app Phdream register Jili22 net register login password Lucky Win888 Jiligames API Agila club VIP 77PH VIP Login download Acegame888 register PHMAYA Download Jili88 online casino 7XM Lovejili philippines 63win register Jilimax VOSLOT 777 login 18JL Casino Login Register JILIASIA 50 login 50JILI VIP login registration 7XM com PH Nice888 casino login Register 58jl Jili168 casino login register download Timeph philippines 90jilievo Jili88 casino login register OKBet legit JILI slot game download Bet99 promo code 58jili app 55BMW com PH login password KKjili casino login bet999 How to play Jili in GCash BigWin69 app Download OKJL Milyon88 com casino login phdream 888php register Ph888 PH777 registration bonus JLBET Asia LOVEJILI download Royal Casino login 646 ph login Labet8888 review JLBET Casino Jili888 ph Login Wjpeso Wins JILIMACAO 666 Jiliplay login register JILIAPP com login Download JiliLuck download WIN888 PH JL777 app Voslot777 legit Pkjili login 20jili casino Jolibet login registration Phjoin legit or not Milyon88 com casino register JILI apps download 88jili login register Jili 365 Login register download 11phginto Jili777 vip login Ta777 casino online Swertegames Taya365 download 777PNL online Casino login Mi777 join panalo 123 JILI slot 18jili link Panalo lyrics Jiliplay login philippines yaman88 Bet88 login Jili888 Login registration FF777 TV Ok2bet app Pogibet casino philippines Www jilino1 club WOW JILI secret code AB JILI Jili168 online casino BET99 careers Go88 slot login JILI Vip777 login CG777 Casino link OKBet GCash www.50 jili.com login WINJILI download Lucky bet99 Acegame888 77ph com Login password ACEGAME Login Register ACEGAME casino Swerte88 login password Wj slots casino APALDO Casino Phjoin slot JLBET com JLBET ph Taya777 org login 49jili slot Svip slot Jili77 download APK 200jiliclub Bet199 philippines Jili888 Login registration 88jili withdrawal phjoin.com login register Swerte88 login registration Voslot777 legit Superph11 AAA JILI app download Www jililive com log in VIP777 Casino login download Jili77 download APK Jilibet donnalyn login Register JILICC sign up Pogibet app download www.mwplay888.com download apk Jili68 Jililuck App Download APK Yy777 apk mod Jili77 vipph.com login labet8888.com app Phdream live chat Ph646 login register mobile 7777pub download Jolibet Fortune Tree 90JILI app 18JL login Philippines JLSLOT login password 50JILI fun m.nn777 login 88jili withdrawal PH Cash Casino APK 888PHP Casino LINK Boss jili app download Jili999 login register FB777 download APK Free 100 promotion JILIPARK Download VIP PH casino JILIHOT ALLIN88 login 8K8 com login PHMAYA casino login 58jili withdrawal Ubet95 free 100 no deposit bonus KKJILI online casino M GG777 100jili APP JILI888 slot download PHBET88 Jili Games demo 1xBet OKJL Casino Login Nice888 casino login Register Betso88 App download APK VIP777 app Gcash jili register 1xBet registration 58jili withdrawal Jili63 Suhagame23 218 SLOTSGO AGG777 login Philippines Bay888 login JILIVIP 83444 PHCASH com casino login Jilievo 666 Jili 365 VIP register PHMAYA link PH cash VIP login register Yaman88 casino JP7 VIP We1Win download free rbet.win apk Jili168 casino login register download Milyon88 com casino register 18JL login app 88jili withdrawal AAA Casino jilibet.com register Winjili55 UG777 login app PH777 download Jili365 bet login app Osm Jili GCash 77tbet philippines GI Casino login philippines 88jili login FC178 casino free 100 SG777 Com Login registration Nice88 free 100 Oxjili Royal777 Top777 login FB777 live 200jili login Gogojili legit Yes Jili com login phcash.vip casino Sugal777 app download 58JL app Login Panalo login JILI games APK Lucky99 Slot login Jili scatter gcash 7XM APP download FB JILI casino login download PHMACAO app ROYAL888 Link Alternatif ACEPH Casino - Link 55bmw.com casino Timeph app Osm Jili GCash M GG777 Ubet95 login Jiligo88 CG777 Casino Philippines Tayabet login Boss jili app download YY777 app download Nice88 free 120 register no deposit bonus Bossjili7 XOJILI login 68 PHCASH login ezjili.com download apk Jili 365 VIP APK Milyon88 pro Jili88 casino login register download Jili online casino AgilaPlay Jili scatter gcash 7777pub login CC6 app bonus JK4 online PHJOIN casino Joyjili login register 22phmaya 5JILI Casino login register Betso88 VIP Winph 8 Phmacao rest JILI Slot game download free s888.live legit APALDO Casino link Plot 777 casino login register Philippines Ph646wincom Jili168 login app Philippines KKJILI casino Apaldo PH Phdream live chat Slot VIP777 PH888BET 22 phginto 50JILI APP MWPLAY login register Slotph We1Win apk VIP777 slot login Nice88 PRIZEPH online casino Jilipark App 7XM app for Android Jili58 Jili168 free 100 APALDO 888 CASINO login APaldo download Jiliasia8 com slot game phcash.vip casino OKJL Casino Login YY777 live Jili888 register Winjiliph QQ jili casino login registration Abcjili5 NN777 register Phvip casino Taya 365 casino login OKBet app Osm Jili GCash Nice88 free 100 5JILI Casino login register Bet88 app download 5 55bmw vip Jlph11 JILI slot casino login Nice88 bet sign up bonus JILI Slot game download for Android Abc Jili com Download FF777 TV Peso 63 online casino MILYON88 register free 100 7777pub JILIASIA 50 login CC6 online casino latest version Royal Club apk 1xBet login registration CG777 Casino Philippines 1xBet app Mwcbet net login Password LOVEJILI 21 FBJILI Now use Joyjili Promo code JILI188 casino login register download PHMACAO SuperPH login AGG777 login app Peso 63 online casino filiplay Sugal777 app download Galaxy88casino com login EZJILI Telegram JiliApp ph04 Jilino1 com you can now claim your free 88 PHP download 63win Coupon Code PHDream 8 login register Philippines MNL168 website CC6 online casino register login 3jl app download apk Jlph7 TA777 com Login Register password 5jili11 FF777 casino login Register KKJILI casino login register 10 JILI slot game 3JL login app Jili100 APP Winjili55 Milyon88 info Jilino1 VIP login YE7 bet sign up bonus Apaldo games Wj casino app AbcJili win.ph log in Jili22 VIP 204 SG777 Jl77 Casino login YY777 app download Jilimacao Okjl space Wjevo777 download Ubet95 free 100 no deposit bonus PHMAYA APK Xojili legit 77PH bet login Taya365 pilipinong sariling casino LOVEJILI AAAJILI Casino link Jollibee777 How to play mwplay888 18jl app download jilievo.com login password VIP PH casino mnl168.net login JiliLuck download Win2max casino 777PNL download app Ubet Casino Philippines Win888 Login Jili88 casino login register Philippines sign up Bet99 APK 18JL casino Login register Download Naga888 login JLPH login PHMACAO APK free download How to register Milyon88 Royal888ph com login JiliCC entertainment WINJILI customer service PHBET88 Jili888 Login Philippines SG777 slot FBJILI Jili365 bet login app Ubet95 free 100 no deposit bonus Taya 365 casino login LOVEJILI Jili777 free 150 YE7 casino login register download QQJili 58jili login Download S888 sabong Gi77 casino Login taya777 customer service philippines number 24/7 WINJILI customer service Https www wjevo com promocenter promotioncode Nice99 casino login Phdream 44 login Mi777app 777PNL online Casino login phjl.com casino JILILUCK promo code Pogibet 888 login BigWin Casino legit Jolibet app download Jilli pogibet.com casino JP7 VIP login Ug7772 Phjoy JILIMACAO 123 PH143 online casino jili365.bet download PH cash VIP login register Abc Jili Register Mwgooddomain login 58JL Casino link 365 Jili casino login no deposit bonus JILIEVO Casino 777 60win OKGames casino 49jili VIP kkjili.com app JILIPARK casino login Register Philippines Agila Club casino OKGames GCash OKBet casino online S888 juan login Yaman88 log in Winph99 com m home login Jili88 casino login register Winjiliph CG777 Casino LOGIN Register Ubet Casino Philippines Agilaclub review Is 49jili legit ph646 JLBET link JiliCC entertainment Jilicity withdrawal Ta777 casino online Jili777 login register Philippines JP7 coupon code Milyon88 one Ug7772 Jilibet casino 77PH VIP Login download Jili live login 68 PHCASH 7XM APP download Boss jili login MWCASH88 APP download Jilicity login Acegame888 real money LIKE777 JILILUCK app JiliBay Telegram Bet199 login philippines Ph646wincom PHJOIN login OKGames register JILIASIA withdrawal Panalo login 88jili Login Philippines Wjevo777 download phjl.com casino Fcc777 login Labet8888 login JILI8998 casino login PHJL Login password Jilibay Voucher Code 28k8 Casino P88jili download 49jili apps download Fk777city we1win CG777 Casino login no deposit bonus MW play casino FF777 casino login Register Philippines download JILIAPP com login Download Bet199 PHGINTO com login Bet88 bonus Sw888 withdrawal Vvjl666 Jiliapp 777 Login QQ jili login Jilicity download Jili188 login Philippines Timeph philippines Casino Club app download Nice88 bet login registration Bay888 login PH Cash casino download Jiliko777 Nice88 PH 777pnl Jiliplay login register JILI VIP casino cg777 mwcbets.com login Fbjili2 JILIAPP download 7xm login 77jl.com login JILI Slot game download for Android MWPLAY app superph.com casino Nice88 free 120 WJ peso app Jili58 register 3jl app download apk Betso88 link OKGames login free JILIASIA 888 login 58jl login register Jilibet888 68 PHCASH login Jili88ph net register 55BMW Casino app download APK Abc Jili com Download FB777 register login Philippines Jilievo org m home JiliLuck download jlbet.com login register Jp7 casino login 18JL Casino Login Register YE7 casino APK prizeph Boss jili login Royal logo FC178 casino - 777 slot games Taya777 pilipinong sariling casino Ph888 MWPLAY app @Plot777_casino CG777 login BOSS JILI login Register JILI PH646 login Vvjlstore Mi777 casino login Download Okgames redeem code 50JILI VIP login registration Bet88 login AGG777 login Philippines JILIMACAO Yesjili com legit P88jili com login OKBET88 Gold JILI VIP PH casino VIP PH log in bet88.ph legit kkjili.com app JiliLuck Login JILI Vip777 login 63win withdrawal bet999.ph login m.nn777 login 58JL 8k8app17