Skip to content

Instantly share code, notes, and snippets.

@davestaxcp
Last active March 11, 2024 13:57
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save davestaxcp/1e2cc086a13c9a2d045876852b57e5be to your computer and use it in GitHub Desktop.
Save davestaxcp/1e2cc086a13c9a2d045876852b57e5be to your computer and use it in GitHub Desktop.
Freewallet FAQ 2023 v0.9.23 - Write Up - Draft #5

Freewallet FAQ 2023 v0.9.23 - Write Up - Draft #5

The information below is a full length User Manual with an attached Frequently Asked Questions portion to help you understand the functions included with Freewallet Desktop v0.9.23 from the official Freewallet.io website. Freewallet is developed by Jeremy Johnson (Jdog), who is an active Counterparty Developer. Freewallet.io is the most up-to-date Counterparty Wallet that supports the majority of all Counterparty functions at this time.

This User Manual and attached FAQ's are written by davesta with the help of Jdog and the Counterparty Community. We have also decided to include the many helpful videos by RobotLoveCoffee and a few by RARE PEPES DOT COM as well.

It is our intention in this document to help new users learn Freewallet and be able to answer questions that are common amongst the Counterparty community. This document is also intended for specifically the Freewallet Desktop version and not the Freewallet Mobile version, as the Desktop version is updated more frequently.

If you have any questions or would like to submit feedback on how to make this guide better please reach out in the Official Freewallet Telegram or post your ideas, feedback and issues on the Freewallet Github.


Table of Contents:

What is Freewallet?

Freewallet Functions

Exploring your Balances, History and the Exchange and Dispensers Tabs

Trading Basics for BTCpay and DEx

Common Questions and Errors Using Freewallet (FAQ)

Getting Support

Errors Reported on Specific Versions


What is Freewallet?


What is Freewallet?

FreeWallet is an open-source wallet for Bitcoin (BTC) and Counterparty (XCP), the world’s first protocol for decentralized financial tools. It is built using Javascript, Bitcoin libraries and Counterparty software. It is available for all major desktop and mobile platforms.

Freewallet handles transaction signing locally, which means your passphrase and private keys never leave your browser. Watch-only addresses are also supported.

All trades and actions with the counterparty decentralized exchange from Freewallet use a secure automatic escrow system within the Bitcoin blockchain, which means that unlike centralized exchanges, no middleman is ever required for any features included. However, extra care needs to be taken with dispensers, as is explained in detail later in the article.

Freewallet is simply another “skin” of Counterwallet (both are Counterparty wallets) and any addresses, private keys or 12-word phrases made in Counterwallet can be used with Freewallet and vice versa. Though as an exception, Freewallet is the main wallet supporting Hardware addresses at this time.

Freewallet desktop is the most up-to-date and supported wallet by Counterparty at this time, though keep in mind there are some minute features Counterwallet has that Freewallet does not.


What are the features of Freewallet?

  • All encryption is handled client-side. Neither your passphrase nor any of your private information ever leaves your browser, workstation, or mobile device.
  • With FreeWallet, your passphrase is literally your wallet, and all of your addresses and keys are generated on-the-fly when you log in.
  • FreeWallet is open-source, and available for anyone to fork or review, so you know that it works exactly the way that it is supposed to.
  • Supports Sending and Receiving Bitcoin (BTC), Counterparty (XCP), and all Counterparty Assets
  • Create and Manage new and old Assets (Tokens, ownership, subassets etc.) on the Bitcoin blockchain
  • Distribute profits (dividends) to asset holders using BTC, XCP, or any other Counterparty Asset
  • Broadcast data feeds to the Bitcoin network
  • Sign a transaction with any address in your wallet, or sign a message that others can verify.
  • Trade XCP for any Counterparty asset on Counterparty DEx (peer-to-peer)
  • Integrated exchange interface that allows peer-to-peer trading of counterparty tokens in a truly decentralized and trustless manner.
  • Access P2P Assets with no middleman and no counterparty risk
  • Strong Privacy - No registration required
  • Supports multiple addresses as well as importing private keys and watch-only addresses.
  • Support for Bitcoin Core (BTC) transactions on both Mainnet and Testnet.
  • Add an Password, PIN or thumbprint scan to give your wallet an additional layer of security.
  • Support for QR Code Authorization which allows anyone to register/login to a site using only their bitcoin address.
  • Supports Desktop, Mobile and Browsers
  • Supports BTCpay (BTC/TOKEN exchange pairs)
  • Client-side Authentication/Encryption
  • Watch-only, Legacy, Segwit and Hardware Address Support
  • Supports BTC Dispenser Functionality
  • Setup dispenser watchlists to ensure your getting the best price on your dispenser purchases.
  • Supports Multisend Asset Function

Some features change over time, but the progress of both the Mobile and Desktop versions of Freewallet can be found here.

Where can I access Freewallet?

Freewallet is available at Freewallet.io. There is a desktop version, a mobile version and a browser extension of Freewallet.

Since the desktop version is the most updated with recent additions to the Counterparty code, all help and tutorials here currently are for the desktop version on Mac OS or Windows OS.

  • For Linux 32 bit operating system download - FreeWallet.linux32.tgz
  • For Linux 64 bit operating system download - FreeWallet.linux64.tgz
  • For Windows 7/10/11 32 bit operating system download - FreeWallet.win32.exe
  • For Windows 7/10/11 64 bit operating system download - FreeWallet.win64.exe
  • For Mac operating system download - FreeWallet.osx64.dmg

Freewallet Mobile is a verified app in the Apple Mac Store, but it is still flagged on Mac OS Desktop with a banner stating “This App is not from the App Store” message.

Please refer to Apple support for guidance to correctly install Freewallet. The process includes going to your "Settings" - then "Privacy" - and then clicking "Open Anyway".

After mounting the Freewallet .dmg on Mac OS Desktop it is important to drag the Freewallet app to the ‘Applications folder.’

Always be careful and always verify the software is from Freewallet.io which is the official site for download.

You can find a list of all updates for both Mobile and Desktop here.

Where can I access previous versions of Freewallet?

You can view and download all previous versions here.

If you would like to “rollback” versions of Freewallet, make sure you have backed up for passphrase and can access it as this will still be your login.

Also please reference this tutorial to make sure you have written down the private key of any imported or extra addresses you have created, since you may in some circumstances have to manually import them again when downgrading versions.

Where can I see my current version?

Click on the Freewallet logo in the upper left corner of Freewallet. Your version will then display under the Freewallet logo in the “About FreeWallet” popup.

image

This is also where you can check for new updates and use the Debug function of Freewallet.

Can I use the Counterparty/Bitcoin Testnet in Freewallet?

Yes you can. Freewallet automatically sets your Network as the Bitcore Core (Mainnet) but you can change to the Bitcoin Core (Testnet).

To do so, navigate to the “Settings” tab in the top right.

image

From here, under the “Wallet” tab you can change the “Network” to Bitcoin Core (Testnet).

image

What is xchain.io?

Similar to a BTC block explorer, xchain is the main block explorer used by the community for Counterparty functions at this time. It is an explorer specifically for information coded in the OP_Return function of Bitcoin transactions. This information is decoded and shown by xchain as all the processes that are about to be explained below.

In the future we hope to see alot more block explorers that show all Counterparty functions and information like xchain does. There are a few other websites that show a significant amount of Counterparty information xcp.dev and dankset.io but Freewallet uses xchain.io for its in app information shown.

That information can be Counterparty Asset sends, supply, token issuances, market orders, broadcasts, descriptions, and many more functions. This information is all public just like the Bitcoin blockchain is.

Freewallet uses xchain to show all of this information within the wallet itself. This also means tokens (like NFT’s) can utilize the Enhanced Asset Description function to incorporate Images, JavaScript, IPFS, Ordinals and a lot other types of information within tokens.

To learn more about how to read, analyze and properly use xchain feel free to learn more by watching this video tutorial by RobotLoveCoffee.

If xchain is down for maintenance, can I still access my funds?

Yes, and your orders and assets are still there.

The Counterparty Distributed Exchange and all Counterparty transactions are actually apart of the Bitcoin blockchain. This means that Bitcoin itself would have to be shut down entirely in order for it to go offline (which is the most robust and secure cryptocurrency at this time).

Freewallet uses the xchain.io servers to update and show BTC blockchain data for all Counterparty Assets and data. Sometimes (not often) xchain undergoes an implementation of a new update, or is verifying that all BTC blocks are being parsed correctly. When this (or something similar) occurs, a banner stating “xchain is behind on updating data due to maintenance, please have patience as it will be updated shortly.”

If you are waiting on a BTC or XCP transaction at this time you can still monitor your BTC address on a block explorer to verify if a BTC or XCP transaction is confirmed or still unconfirmed on the BTC blockchain.

You can always verify that xchain is up to date and displaying Bitcoin blocks correctly by checking here.

For checking a significant amount of hosts for Counterparty Network information including Xchain, Counterwallet and Coindaddy you can check their status here.

Why do I need small amounts of Bitcoin to do things in Freewallet?

Counterparty builds directly on top of the Bitcoin network, and every Counterparty transaction is a Bitcoin transaction as well. This means that Counterparty transactions are the same as as Bitcoin transactions, with some information attached.

Because of this, Counterparty transactions using Freewallet must pay a small BTC fee to the Bitcoin miners for each transaction sent. Beyond being a sign of our commitment to the health of the Bitcoin network, this allows Counterparty transactions to be given a high priority and be confirmed quickly.

Every Counterparty transaction is a bitcoin transaction with more information encoded into the OP_Return function. Internal transactions such as asset creation, issuance change, token locking etc. are transactions “sent to yourself” with this Counterparty information on layered on top of it.

The data can be seen on Counterparty block explorers like xchain.io, while all BTC transactions can be viewed on a BTC block explorer. Freewallet shows the OP_RETURN data from xchain. On xchain, any public address is linked to its the BTC data on the Bitcoin network.

If you are looking to get a function done quickly it is needed to do a high fee (or even higher) for the Bitcoin network to confirm it quickly. If you are looking to save bitcoin it is recommended to use a Segwit addresses instead of Legacy if you plan to do many transactions. In the event you arent sure what BTC fee to use, please reference the What BTC fee should I use? FAQ.

What BTC fee should I use?

The low/medium/high fee is an estimation by Freewallet when setting a BTC fee and is based off of average send size that is calculated at the time you create the action in Freewallet. This average fee estimation is just an estimation of the most recent block on the Bitcoin network and can vary from block to block.

image

If you need the transaction to go through as soon as possible it is always good practice to use the high fee setting, though the “High” setting may not be high enough for some users so it is recommended to educate yourself on average fee size of the time of send. If you'd like to 'just be safe' and get this transaction done 'no questions asked' it is possible to set a custom fee higher than the one recommended to you. Two to Three times the high amount, in most cases, is more than enough for priority.

Here is a great example of this process and a specific use case in video form, which was made by Robotlovecoffee and is a great informational resource to learn about BTC fees in Freewallet.

A good place to view this information for the BTC blockchain is https://mempool.space/ and https://jochen-hoenicke.de/queue/#BTC,24h,fee

Some users have asked for showing the fee in sat/vb as described here but in 0.9.23 the fee is shown as the total BTC amount. Despite having been issues relating to translating this "total btc amount" from users, as stated here, in most cases the "high" setting should be the default setting to use.

Take note that the $USD or Currency conversion is an estimate and it is ultimately your responsibility to set the correct fee at the time you send your transaction with the information stated above.

If using Counterparty is the first time you have manually set BTC fees for a manual transaction, make sure you are patient and educate yourself on the timespan it takes the Bitcoin Miners and Network to confirm your transaction. The average time for each Bitcoin block of transactions to be confirmed is about 12 minutes but in the past confirming blocks have taken 2 hours or more for even just one confirmation.

If you felt you used too small of a fee (or "high" setting did not end up being high enough for you) and urgently need to "increase the fee" of a previous sent transaction, please reference the Help! I used too small of a fee and my transaction is not confirming! FAQ.

Why is there more than one input on my BTC transactions?

Even though Freewallet is showing you the correct total amount of BTC in your wallet it may be that you have many Unspent Transaction Output’s (UTXO) that make up your total amount of BTC in your wallet.

This means that if you have 0.1 BTC it may be comprised of 10 smaller UTXO’s in your wallet worth 0.01 each. This naturally happens over time especially if you have done many counterparty transactions (small BTC transactions) and accumulate many UTXO’s on your address.

If you see more than one input from your address on a block explorer for a BTC transaction it just means you had to use more than one UTXO on your address.

When it comes to the topic of MPMA sends (Multi-sends) and extra outputs, these MPMA sends use Counterparty encoded send data within the Transaction data. These extra outputs are NOT send destinations. For instance you may see on a BTC explorer that extra outside addresses not related to your address are being included. Multisends work by encoding data into two transactions and having strange addresses (like addresses that start with "3") is not uncommon to see when looking over your transaction on a BTC block explorer (like Blockstream.info). How many extra output addresses are included depends entirely on the amount of data encoded in the send. It is important to note here that the data shown on xchain for your multi-send is showing the accurate destinations that the multi-sends are being forwarded to. The underlying tech is the reason you are seeing more outputs on a BTC block explorer.

If you are seeing the error "Failure to send not enough BTC in wallet" when you absolutely have enough BTC to cover your transaction it could be that this error is in relation to your UTXO’s on your address and please reference this guide in the Common Freewallet Errors section.

What is the Automatic Donation System? How do I turn it off?

Freewallet and Counterparty development is a public service to the Counterparty and Bitcoin community. Jeremy Johnson (Jdog) is the developer of Freewallet and relied on donations only. The first moment you sign in or create a wallet in Freewallet, a message appears:

image

This feature is entirely optional but is automatically set to on. In the settings you can choose which Fund to support by using Freewallet:

image

If you would like to turn ADS off, please follow this instruction:

Navigate to the “Settings” icon in the upper right.

image

Click the “Preferences” tab. Set the Auto-Dontate button to Disabled – Do Not Donate

image

In the Auto-Donate field you can enable to donate on all transactions, on 75%, 50%, or 25% of all transactions while using Freewallet. You can also pick the specific Counterparty Fund you would like to donate to under the “Cause” dropdown menu. Lastly you can choose exactly how much BTC will be donated each time ADS is used.

If you wonder where donated funds go, check out current and future Counterparty Improvement Proposals (CIP’s - https://github.com/CounterpartyXCP/cips) which is the main focus of the community for received donations. You can also join the conversation in the Official Freewallet Telegram, Counterparty Telegram, and Counterparty Twitter or you can even fork the protocol and begin experimenting yourself!

Does Freewallet support two-factor authentication?

No, and Freewallet does not plan to offer any 3rd party solutions like 2FA. Two-factor authentication solutions all require a centralized 3rd party for code validations which would mean Freewallet users would have to enter private information and give up identifying info. This goes against the security and theory of what Counterparty and Freewallet is used for which is decentralized transactions on top of a decentralized network (Bitcoin).

Freewallet is a deterministic wallet which means you can only access or recover your Bitcoin and Assets with your 12 word phrase. While Freewallet does allow you to create an 'in-app' password to lock your account, your 12 word phrase will always be your login and the password exists only as a barrier for your single instance of Freewallet. For more information about viewing and securing your 12 word phrase, be sure to check out the Displaying the Seed Phrase and Private Key of your Address(s) section of this FAQ.

Can I run my own Counterparty server?

Yes, although that requires a full bitcoin node and some technical knowledge.

Please refer to this page for details on how to setup a Counterparty Federated Node. If you are starting from scratch, it may take several days to download and index the bitcoin blockchain.

How do I check my Freewallet Server settings?

Simply navigate to the upper right “Settings” icon in Freewallet. Then click the “Server Settings” tab to view your settings.

The default server settings for Freewallet are shown below:

image

How do I use the Debug function on Freewallet?

To access the Debug feature, simply click on the logo on the upper left to see the “About Freewallet” popup. From here you can use the “Debug” button to see more in-depth details on the functions and errors when using Freewallet.

Always remember you can also use the Bitcoin Core (Testnet) to test and experiment functions using Freewallet without using any funds to do so. If you are wondering how to access the Testnet using Freewallet please reference this section.

image

What else do I need to know?

All encryption is handled client-side. Neither your passphrase nor any of your private information ever leaves your instance of Freewallet. This also means that there is no password recovery, so make sure you do not lose your passphrase.

We repeat, the ONLY way to access anything you have received or created using Freewallet is your 12-word passphrase. Do NOT share your passphrase or any private keys with anyone.

It is important to always verify and back up your 12-word passphrase as well as private keys from any addresses you have imported. How addresses are seen and accessed in Freewallet can be learned here.

While Counterwallet was historically the first Counterparty wallet, Freewallet is the most recommended and updated Counterparty wallet at this time. Though some features like Multi-sig addresses and Armory wallet implementation is available using Counterwallet and not Freewallet.

To see all recommended and reputable Counterparty wallets or Counterparty “skins” please review the list posted here.

Please ensure that the use-case you are aiming for is legal within your jurisdiction, and seek professional legal advice when starting a project.



Freewallet Functions


Getting Started with Freewallet

Freewallet is an open-source wallet for Bitcoin and Counterparty. It uses regular Bitcoin addresses, and lets you store Bitcoin, XCP, and user created tokens without having to trust a server.

What makes it different from many other wallets, is that the only possible way to access a wallet is by having access to the passphrase. In Freewallet, none of your private information ever leaves your PC.

For extra security, Freewallet also supports watch-only addresses, offline transaction signing and offline message signing.

If you would like a quick video overview of the different wallets you can use side by side with Freewallet and their functions, please check out this introductory explanation by RobotLoveCoffee, to see and understand what a Counterparty wallet, how they look and how Freewallet Desktop is different.

Creating a Wallet

Your account in Freewallet is secured by a 12-word passphrase and is a deterministic wallet. In fact, this passphrase is your wallet itself. Freewallet places this passphrase into a math equation and gets a list of Bitcoin addresses and private keys as the result. If the passphrase is the same, you can always calculate the same addresses and keys. You can do this even if Freewallet is offline.

This means that your passphrase, your addresses and your private keys are never sent anywhere. This also makes it extremely important to keep your passphrase safe, as it cannot be restored by anyone. Please ensure that you have written it down correctly. Remember that once you delete Freewallet off of your device, the only place this passphrase exists is the paper in your hand.

The first action you will prompted to take is to let Freewallet know if you would like to create a new wallet or login to an existing one.

image

If you are creating a new address, it is imperative that you write down your 12-word passphrase (on pen and paper and in multiple locations) or else your funds and tokens will be unrecoverable.

image

If you already have a 12-word phrase from Counterwallet (or any BIP-39 seed) you can type it in after selecting “Login to Existing Wallet”.

Counterwallet and BIP39 Formats are supported in Freewallet.

image

The open wallet button will only become active once you have entered a valid passphrase.

image

If this is your first time logging in, you will have to agree to the Freewallet License Agreement which can be found here (link).

image

You will also be prompted with the Automatic Donation System popup. By default, it is enabled, but can be turned off or customized to support specific Counterparty improvements. If you would like more information on ADS please read here (link).

One important thing to know before getting started is that when you perform an action in Freewallet (i.e. place an order, create a token, etc), it doesn't take effect immediately as it must first be confirmed on the Bitcoin blockchain. If this is new to you see the explanation of “Why do I need small amounts of BTC to do things?” here.

Locking and Unlocking Your Freewallet

Freewallet offers you to create a password for the device you are using Freewallet on. This password is never broadcast or shared and is kept internally on your device. This password will not be needed to recover your wallet if your device is lost. This password is only for accessing the irreversible functions on the Freewallet software.

To lock your wallet so it will need a password entry for any action click the “Lock” icon in the upper right of Freewallet.

image

If this is your first time locking your account you will prompted to create a password:

image

Your wallet password must contain at least 1 number:

image

Once you have set a password you will be prompted with the popup:

image

To use all of the immutable functions (and to see private data) you will now need to unlock your wallet.

image

Use the same process to unlock your wallet: Click the “Lock” icon in the upper right of Freewallet and enter the password you created when you first clicked the lock.

image

You will be prompted with the popup:

image

Once the correct password is inputted, this popup will appear:

image

Viewing, Creating and Importing Addresses

Freewallet uses regular Bitcoin addresses, and automatically generates 10 legacy BTC addresses and 10 Segwit addresses.

image

Freewallet starts you off on Legacy BTC Address #1. Which you can view by clicking the Address icon in the top right.

image

You can view the rest of the 19 addresses generated by clicking the Address icon on the top right of Freewallet and choosing “Change Address.” Your first 20 addresses are labeled up to #10 for legacy BTC addresses and up to #10 for your Segwit Addresses.

image

Please take note: A bitcoin seed can generate billions of addresses in theory, but Freewallet will only import the first 20 upon seed recovery. Any new addresses (not a part of the original 20) that are created or imported will not automatically load in from the passphrase alone if you log out of Freewallet or lose your device. Each individual address has its own private key, you are responsible to write down and maintain the private key of each address beyond your original 20 especially if imported. Learn more about how to view private keys for each address you own or create at “displaying the private key for your address”.

When you change your address (by simply double clicking on the address you desire to change to), it will now show you the contents of this address in the Balances tab and on your main screen. If it doesn't at first load up the balances when you change your address, use the refresh button using the gear icon in the upper left, or in the "History" tab in the upper left. This will refresh the data with the new data when you changed account.

image

By clicking the "Options" button at the bottom of the Change Address popup, Freewallet supports the creation or import of several different kinds of addresses:

  • Regular Address
  • Segwit Address*
  • Imported Address
  • Watch Only Address
  • Hardware Wallet Address

*Note that the private key of your default 'Address #1' noted above as a "Regular address" is also the private key for your 'Segwit Address #1' with the only change being that your segwit address has the prefix "p2wpkh:" before the private key. This is especially helpful when importing an address. You can use a single 'Regular address' (also called Legacy address format) private key to access the address's Regular and Segwit formats.

Taproot addresses (addresses that start with bcp1) and P2SH segwit addresses (addresses that start with a "3") are not supported by Freewallet at this time.

image

With the address currently selected as described above you can also Label your address by clicking the “Settings” icon and navigating to “Wallet” and changed the wallet label under the “Label” entry. This is entirely private, within Freewallet only, and is not shown on the blockchain.

image

As for the process of adding a hardware wallet address, it is the same process as described above, but you would select "Add Hardware Address". The current hardware address types supported are: Trezor, Ledger and KeepKey.

image

Show a QR Code for your Address

A Quick Response code, commonly known as a QR code, is an image containing scannable information. In the context of Bitcoin and Counterparty, QR codes usually represent Bitcoin addresses. (Although private keys can also be displayed as QR codes for paper wallets as well.) QR codes make it easier for users on mobile devices to send BTC, XCP, or user-created assets to your address by using the built-in camera of their device.

It is also a great way to display a Bitcoin address on a poster or sign. Someone passing by will only need a camera or phone with a camera (even low resolution will do) in order to save your address for later payment. And if they have a Bitcoin wallet on their device, they will be able to send BTC or Counterparty Assets immediately.

In Freewallet, the QR codes always represent your public address. You can make the QR code of an address public safely, just as you would with the regular address.

To display the QR code for your address, simply click “Address” and click “Show Address.”

image

Displaying the Seed Phrase and Private Key of your Address(s)

If you would like to show the private key of an address that is currently being displayed on Freewallet, click “Address” and click “View Private Key.”

image

Make sure nobody can see your screen when you view your private keys for any address.

image

You can also view your private key for all individual addresses quicker by right-clicking the address in your “Change Address” list to either View Address or View Private Key.

Always remember to keep these private keys safe, just like you would of your 12-word passphrase.

image

Please take note: Any new addresses (not a part of the original 20) that are created or imported will not automatically load in from the passphrase alone if you log out of Freewallet or lose your device. Each individual address has its own private key, you must write down and maintain the private key of each address beyond your original 20.

image

To view your passphrase, navigate to the “Settings” icon in the upper right and make sure you are clicked on the “Wallet” tab.

image

Your passphrase is not visible until you click the button that resembles an eye. If you locked your wallet with a password, you will be prompted to enter it now.

It is important to make sure your wallet is password protected and locked as mentioned in the “How to Lock and Unlock your Wallet” section of this FAQ so this function and all other immutable functions are secured.

Sending and Receiving BTC

To start using the broader functions of Freewallet you will need some BTC to cover the transaction fee’s for many Counterparty functions.

You can send and receive both Bitcoin and Counterparty tokens with Freewallet. Review the “Creating addresses and Viewing your Address” to make sure you know how to correctly view and copy your public address. Your generated Address #1 is most commonly used as the recipient address to send BTC to, but all of your addresses can be used to send and receive BTC. Once you have some BTC on your address you can start using the most common Freewallet functions.

The left panel shows in order: your BTC balance first, your XCP balance second (if you have any XCP) and then the rest of your Counterparty Tokens listed alphabetically.

To send BTC from your wallet, simply right click the BTC token icon in the left panel of Freewallet. Then click “Send BTC to…”

image

Here you will see a prompt for a Simple Send. First verify the Source is the address you would like to send BTC from. You can also click to the right side of your source address on the paper with notepad icon to change your address.

The destination Bitcoin address (only BTC) input in for the receiving address of where you are sending the Bitcoin.

The token name should be denoted as BTC here, though this form is also how you send Counterparty Tokens as well.

Make sure the amount field is the correct amount of BTC you wish to send. You can also use the MAX function to send all available BTC in this transaction. In the right side, an estimated USD value is attributed to the amount you are wishing to send.

The Memo field is for any notes you would like to add to the transaction. Be careful as these memos are publicly broadcasted on the blockchain along with your BTC transaction. You can also change the Memo type from Text to Data using the dropdown to the right of the Memo field.

Lastly and most importantly you can set the Fee of your BTC transaction. This is a very important choice and depends on how soon you would like this transaction mined by the Bitcoin network. This price can vary. Please see “What BTC fee should I use” for more information on this subject.

image

Please verify all of the information is correct. Then verify it again. After you are sure this the above inputs are correct press the “Send Funds” to sign and broadcast the transaction. A popup stating “Confirm BTC Send?” will display showing how much BTC is being sent and to what address.

image

Please verify yet again and click “Yes” when it looks correct. The transfer will be complete once it is verified by the Bitcoin network.

image

Freewallet will also give you the transaction link so you can monitor the transaction while it is being confirmed. This process can take a while so give it some time for your transaction to confirm. Since this is a BTC send you will be forwarded to Blockstream.info to monitor your transaction.

image

What is an Asset/Token/NFT? How can I store them?

Assets (also known as tokens, coins or even NFT’s) are user-created tokens that are stored inside the Bitcoin blockchain using Counterparty technology. Anyone can create their own.

All Freewallet addresses are regular Bitcoin addresses. You can store BTC, XCP, and user created assets on any Freewallet address, Segwit or Legacy. In fact, you can store any of these currencies on any regular Bitcoin address as well, provided that you have access to the private key of that address.

Altcoins (any cryptocurrencies other than Bitcoin) that have their own blockchain are not supported. Their blockchain is separate from the Bitcoin blockchain and thus entirely separate from Counterparty, XCP and Counterparty Assets.

To “store” these assets, simply send them or have them sent to your new Freewallet Bitcoin address. If you received tokens using other Counterparty wallets such as Counterwallet or rarepepewallet simply import your 12 word phrase and access to those tokens will show up on the left panel of Freewallet.

Sending and Receiving XCP, and User Created Tokens

You can send and receive both Bitcoin and Counterparty tokens with all 20 addresses that created when generating a new 12-word phrase.

To start using the broader functions of Freewallet, first simply send some BTC to your address of choice (most likely Address #1) to make sure you can cover the BTC cost of broadcasting transactions to use Counterparty functions.

It is recommended to send enough to cover a few transactions as the price of BTC fee’s may fluctuate.

If you are receiving XCP or any Counterparty asset to your address, the process is the same with BTC. Simply send the asset (using a Counterparty recommended wallet) with the receiving address being any of your BTC generated wallet addresses (most likely Address #1).

image

To send an asset you own, simply navigate to the left panel and find the TOKEN you wish to send. Then right click the TOKEN. Then click “Send TOKEN to…”

image

Here you will see a prompt for a Simple Send. First verify the Source is the address you would like to send the TOKEN from. You can also click to the right side of your source address on the paper with notepad icon to change your address (though it will need to be address you own the TOKEN on)

The destination Bitcoin address input is for the receiving address of where you are sending the TOKEN.

The token name should be denoted as the TOKEN you wish to send.

Make sure the amount field is the correct amount of TOKEN you wish to send. You can also use the MAX function to send all available TOKEN in this transaction.

The Memo field is for any notes you would like to add to the transaction. Be careful as these memos are publicly broadcasted on the blockchain along with your TOKEN transaction. You can also change the Memo type from Text to Data using the dropdown to the right of the Memo field. There is a 32 character limit for the memo in OP_Return sends.

Lastly and most importantly you can set the Fee of your BTC transaction. This is a very important choice and depends on how soon you would like this transaction mined by the Bitcoin network. This price can vary. Please see “What BTC fee should I use” for more information on this subject.

image

Please verify all of the information is correct. After you are sure this the above inputs are correct press the “Send Funds” to sign and broadcast the transaction. A popup stating “Confirm Send?” will display showing how much TOKEN is being sent and to what address.

Please verify yet again and click “Yes” when it looks correct. The transfer will be complete once it is verified by the Bitcoin network.

image

Freewallet will also give you the transaction link so you can monitor the transaction while it is being confirmed. This process can take a while so give it some time for your transaction to confirm.

After sending any Counterparty Token (including XCP) and you see this on xchain when clicking “View Transaction” come back in a few minutes and refresh the page when your unconfirmed transaction is confirmed on the bitcoin network.

image

Using the Multi Send function

The Multi Send function is similar to the Send function but is a separate tab. This is primarily used for sending multiple amounts of tokens to multiple amounts of addresses.

PLEASE TAKE NOTE that Multi-Sends when using a Trezor with Freewallet are not working at the moment

To access Multi Send, first right-click any token on the left panel and begin the process for a Simple Send.

image

Next, navigate to the Multi Send tab on the top of the popup window.

Here you can verify the source address in which you are sending next to the input “Source.” If you would like to change the address you are sending from, click the notepad with pencil icon to the right of the sending address on the “Source” input.

image

The ”Send List” input is a CSV formatted separated list of funds and a list of recipients who will be receiving funds from you. It is important to use the exact List Format as shown in Freewallet which is:

Address, Asset, Quantity, Memo (optional)

For example this might look like this with a memo at the end:

1FWDonkMbC6hL64JiysuggHnUAw2CKWszs, TEST, 1, donation

1FWDonkMbC6hL64JiysuggHnUAw2CKWszs, EXAMPLE, 10, donation2

bc1q0ssapwdzezj5la5gv6q2j06p4pmekrdcwz03l0, EXAMPLE2, 1, donation 3

bc1q0ssapwdzezj5la5gv6q2j06p4pmekrdcwz03l0, XCP, 1.00000000, donation divisible asset

Here is the same example without using the “Memo” field, in which you are not required to put the “,” at the end of the line item.

1FWDonkMbC6hL64JiysuggHnUAw2CKWszs, TEST, 1

1FWDonkMbC6hL64JiysuggHnUAw2CKWszs, EXAMPLE, 10

bc1q0ssapwdzezj5la5gv6q2j06p4pmekrdcwz03l0, EXAMPLE2, 5

bc1q0ssapwdzezj5la5gv6q2j06p4pmekrdcwz03l0, XCP, 1.00000000, donation divisible asset

Please take not that for Divisible Assets, such as XCP you must include all decimal points in the send. All Divisible assets can have 8 total decimals and all decimals must be included when filling the multisend form (ex. 1.00000000).

Next step is to pick your Fee used for this transaction. It is possible in large Multi-Send’s to have multiple transactions, so the fee you picked will be used as the fee for each transaction. If you have more questions about what type of Fee to use, please reference the “What Type of BTC fee should I use?” FAQ.

Keep in mind the “Memo” option is public and viewable on the blockchain so keep any personal information out of this field you would not like to be shown on public block explorers.

After pressing “Send Funds” Freewallet will pop up a confirmation asking if the details look correct. After you press “Yes” your transaction(s) will be broadcast to the Bitcoin network.

image

Viewing Your Tokens

If you would like to learn more about a token you have, right click the token from the left panel of Freewallet and then click "View TOKEN information".

image

You will then be able to see basic information about the token such as the description, total issuance, whether it is locked or divisible, and other Asset properties. This information is the same as the information shown on xchain for the specific tokens you are viewing. You can click the “More Info” button at the top to see the asset’s page on xchain.

image

If you are interested in what “Enhanced Asset Information” is, please refer to this guide (Exploring Token Information and Enhanced Asset Information link).

Disclaimer: All token information is provided by the creator and/or owner of the individual token and may not be accurate or up to date. Changing this information is an exclusive privilege of the address which owns the token on the blockchain. All counterparty tokens are stored entirely in the Bitcoin blockchain and cannot be limited, restricted, or altered by anyone except their owner in any shape or form.

Create a Counterparty Token (NFTs and FTs)

Freewallet makes it possible for anyone to create tokens (also known as assets, coins, derivatives) that are then owned by the address they were issued from. Ownership enables you to issue more units of your token, lock the supply, change the description, and customize other settings.

Once the issuance is confirmed by the Bitcoin network, your tokens can be freely traded on the Counterparty decentralized exchange against XCP and other tokens and (if you can convince them) centralized exchanges as well.

Tokens can be divisible or indivisible. While Counterparty has had this process active and usable since 2013, in recent years the term “NFT” has been used to describe Assets and Tokens.

To learn more about the difference between NFT, FT and what the token types Counterparty supports mentioned below, please review this informational video by RobotLoveCoffee, which gives a good overview of this topic.

In this process you learn how to create Non-Fungible Tokens (assets with only 1 whole numbered token), Fungible Tokens (assets with more than 1 whole numbered tokens) and lastly Divisible Fungible Tokens (assets that can be divisible to be less than 1 whole numbered token).

  • Tokens that are not divisible will only exist in whole units (1,2,3, etc.)
  • Divisible tokens support up to 8 decimal places.
  • You can create as many tokens as you need or want.

To see a deeper, in-depth video explanation of the full process of minting a Counterparty token, check out this informative video by RobotLoveCoffee that will take you through the whole process.

There are three types of tokens and all can be theoretically considered NFT’s, FT’s and Divisible FT’s:

Alphabetical Named

Alphabetical tokens (for example BACON) can be named, but must be between 1 and 12 uppercase letters and cannot start with A. To create an alphabetical token, you will need enough BTC for a transaction fee and 0.5 XCP on the address you are using. This is an anti-spam fee, which aims to reduce the amount of names a single individual can register without significant costs. The anti-spam fee is burned (destroyed).

Alphabetical Subasset

Alphabetical Subasset tokens (for example BACON.CRISPY) can be named, but must be between 1 and 250 upper or lower case letters. These can start with A. To create an Alphabetical Subasset of an already created and confirmed Alphabetical Named Asset you will need enough BTC for a transaction fee and 0.25 XCP on the address you are using. This is an anti-spam fee, which aims to reduce the amount of names a single individual can register without significant costs. The anti-spam fee is burned (destroyed).

For a deeper understanding and explanation of Subasset tokens, check out this informational video by RobotLoveCoffee.

Numeric

Numeric (or more precisely alphanumeric) tokens (for example A12149713090358620000) are free to register and only require a Bitcoin transaction fee (like all other Freewallet actions) on the issuing address. If you only want to create and trade numeric tokens, you will not require any XCP. Numeric tokens must start with an "A".

Creating a token is fairly simple: Navigate to the top right corner and click the “Actions” icon. From here select the “Create a Token” action.

image

First you will see the Source input line which should be an address that has enough BTC to cover the transaction fee’s as well as enough XCP to cover the anti-spam fee (for Alphabetical assets). You can change the address by clicking the note with a pencil icon to the right of the source input address.

Next step is to pick the type of asset you would like to create with the drop-down menu next to the “Type” input.

image

On the “Token Name” input, here is where you can name your token. The token must be between 4 and 12 upper letters and cannot start with the letter “A”. If you choose to create a Numeric asset, this asset name will be automatically picked for you (these types of Tokens automatically start with the letter “A”)

image

The next input is the “Quantity” input. Since locking the asset issuance and supplying more Token issuance to a token is a separate function and BTC transaction, picking the Supply here can be changed later. It is also possible to register a token with an issuance of 0 units, as a placeholder, though at the moment these tokens with 0 supply will not appear in the Freewallet left panel. If you are looking to issue more token units but cannot see your token because it has a supply of 0 units, please reference this tutorial on how to do so.

Next to this icon is the Divisible option. The default setting of Divisibility is set to No, though are able to change this to Yes by using the drop-down menu.

image

Divisible assets are divisible to 8 decimal places, and the limit of maximum issuance is 92,233,000,000.

You can create a description for your token at this time but it can be changed later with the Change Token Description feature. To learn more about Enhanced Asset Information as well as what you can include in the description please reference this tutorial here.

Last is the Fee you would like to use on this Bitcoin Transaction. If you have questions about what BTC fee to use please reference here.

How to Change Token Properties

Once you have created a token, the address you have used will automatically be the owner of this token. This means that you will have access to certain token settings that can be changed. You can access these settings in Freewallet by right clicking on your asset in the left column.

(If you have an asset with a quantity of 0 you will need to Issue additional units of your token before being able to see it in the left panel, though you can still do all of the functions stated below by manually typing in the Token Name when using Freewallet actions)

Any token (or units of a token) you possess you can:

  • Destroy units of the Token
  • Send the token
  • Dispense the token
  • Sell/Buy the token on the Counterparty DEx
  • Deploy Dividends to token holders

With ownership of a token, you can additionally do these actions:

  • Change the Token description
  • Issue additional units of your Token (if Token is unlocked)
  • Lock the Token issuance in order to permanently prevent more units from being issued
  • Transfer ownership of the Token

Changing the Token Description

You can change the description of your token as often as you like. This will be publicly viewable in the blockchain. If you would like to add images, and additional information in your description please reference the Enhanced Asset Info FAQ.

To change a Token Description of an asset you own on Freewallet, navigate to the top right “Actions” icon and select the action “Change Description.”

image

You can also right click the asset in the left panel and select “Change TOKEN description.”

image

Here you can input the new Description you would like to change into the Token Description input. You can also choose the Fee you wish to use. If you have questions about what BTC fee to use please reference here (FAQ link).

The maximum length of a Counterparty Asset description in Freewallet is 10000 single-byte characters long.

image

Counterparty provides a simple standard Enhanced Asset Information and this standard and provides a way to point to more information that could not just be stored in the limited description text.

Learn more about this feature here (FAQ link).

Can you lock the description?

As of now you cannot.

The community is currently debating a “lock description” feature in very recent discussions and propositions such as Theo Goodman’s Counterparty Improvement Proposal here (https://github.com/CounterpartyXCP/cips/commit/58268b60fb49a019955847ca8cedd034145d0948).

Issuing more Token Units

You can issue more units of your created token as often as you like as long as the token is unlocked. Each time you do this it will be publicly viewable in the blockchain. It is not possible to issue more tokens if the token is locked or not owned by you.

To issue more Token Units of an asset you own on Freewallet, navigate to the top right “Actions” icon and select the action “Issue Supply”. (This is also the required way to issue more Token Units of an Asset with 0 issuance).

image

You can also right click the Asset in the left panel and select “Issue TOKEN supply”

image

Here you input the amount issued you would like to change into the “Amount” input. You can also choose the BTC Fee you wish to use. If you have questions about what BTC fee to use please reference here (FAQ link).

image

Divisble assets are divisible to 8 decimal places, and the limit of maximum issuance is 92,233,000,000.

Resetting Your Token Issuance

This feature is a very recent addition to the Counterparty Protocol as well as Freewallet. This feature only will work if you as the user under these circumstances:

  • Possess the Asset Ownership of a token
  • Possess the ENTIRE supply of the token
  • The token is UNLOCKED

This feature is usually used when a user accidently made the token Divisible when they meant it to be Non-Divisible or vice versa. It could also be of use if the user would like to change the total supply of an asset without destroying some or issuing more tokens for a cleaner token experience.

To use the Reset feature in Freewallet first navigate to the Actions tab in the upper right and select "Reset Supply"

image

From here a pop-up window will show which will give you the option to input your Source address, which will have to be the address that has the specific requirements stated above (Ownership, Entire Supply). From here you will select the Token you would like to reset and then input the fee desired for this reset process.

image

Locking Your Token Issuance

If you would like to create a verifiably finite token, you will have to lock your token to prevent more units from being issued.

This action is irreversible.

You can lock token issuance of tokens on the specific address you have asset ownership of. Once you do this it will be publicly viewable in the blockchain and regarded as “locked.” It is not possible to issue more tokens if the token is locked.

To lock issuance of Token Units in Freewallet, navigate to the top right “Actions” icon and select the action “Lock Token Supply”.

image

You can also right click the Asset in the left panel and select “Lock TOKEN supply”

image

Here you be prompted to simply send a BTC transaction to initiate the Counterparty action to lock the token supply. Make sure in the Token Name field it is the correct token you would like to lock the supply of.

You can also choose the BTC Fee you wish to use. If you have questions about what BTC fee to use please reference here (FAQ link).

image

Once you have verified all the above information, click “Lock Token Supply” and the transaction will be broadcast to the Bitcoin Network.

Transfer Token Ownership

You can transfer Token Ownership, and therefore control over issuance and description, of your token. Token Ownership also can come with other uses, like proving to other users that you are the true Token Owner and can do the functions as described above.

Please keep in mind this action takes some time, and is irreversible.

To transfer ownership issuance of a Token in Freewallet, navigate to the top right “Actions” icon and select the action “Transfer Ownership”.

image

You can also right click the Asset in the left panel and select “Transfer Ownership of TOKEN”

image

Here you be prompted to simply send a BTC transaction to initiate the Counterparty action to Transfer Ownership.

First check that your source address is the address that holds Ownership of the Token.

Next, check the Destination Address and input the address you would like to Transfer Ownership to.

Make sure in the Token Name field it is the correct token you would like to Transfer Ownership of.

You can also choose the BTC Fee you wish to use. If you have questions about what BTC fee to use please reference here (FAQ link).

image

Once you have verified all the above information, click “Transfer Ownership” and the transaction will be broadcast to the Bitcoin Network.

Destroying Tokens

While in the past users would send to “burn addresses” to burn or destroy their tokens, Freewallet now has the action available to permanently “Destroy Unit Issuance” of tokens.

This action is irreversible. It is possible to for any user to destroy any token they possess.

To Destroy Supply of a Token in Freewallet, navigate to the top right “Actions” icon and select the action “Destroy Token Supply”.

image

You can also right click the Asset in the left panel and select “Destroy TOKEN supply”

image

First check that your source address is the address that holds the Token and the address you would like to Destroy from.

Make sure in the Token Name field it is the correct token you would like to Destroy Supply of.

Next, check and verify the Amount you would like to destroy.

You can also add a Memo to this destructive process, be careful as this Memo is public on the blockchain and will be displayed when looking up the destruction transaction info. Memo length is limited to 32 single-byte characters long using the destroy function.

You can also choose the BTC Fee you wish to use. If you have questions about what BTC fee to use please reference here.

image

Once you have verified all the above information, click “Destroy” and the transaction will be broadcast to the Bitcoin Network.

Paying Dividends to Token Holders

Counterparty supports Dividends through user-created tokens. This means that you can pay out BTC or any Counterparty Token to holders of a user-created token. This feature lets you distribute XCP, BTC or any other token to the holders of your own token. You can specify an amount per unit, and everyone who holds units of your own token will receive a proportional amount of the secondary token being distributed. Depending on the way it is used, this can also be referred to as 'dividend payments'. This feature has many clever uses, such as transparent voting.

It is possible to pay out distributions using Bitcoin directly. However, this process is a regular Bitcoin transaction without any extra added data (which would make it a Counterparty transaction). This means it will not be possible to distinguish it as a Counterparty type transaction on block explorers or inside Freewallet. It will simply appear as a regular BTC transaction with multiple recipients.

Because this makes it difficult to distinguish distributions from regular transactions, we recommend that you use one address per asset, and do not use that address for anything else for simpler records. This will make it much easier to keep track of past BTC distributions. Otherwise, it may be difficult for you and/or your users to get an overview of past distribution payments

If you would like to check out a video explanation of a single use case of deploying Dividends using Freewallet, check out this informational video on this subject made by RobotLoveCoffee.

To do so, go to Freewallet and right-click on your asset EXAMPLE, and then click “Pay Dividends on TOKEN.”

image

You can also use the “Actions” icon on the upper right and choose “Pay Dividends” though the “Token Name” input will not be automatically filled.

image

To distribute BTC to token holders, first verify the Token Name is the correct token you wish to pay dividend to holders.

In the “Dividend” input make sure you select the correct Dividend. For BTC, use the BTC icon, For XCP use the XCP icon and for other assets, use the drop-down menu to choose the correct asset.

image

For the correct Dividend amount, please reference this example:

You create a token TRADEME with 100 total units. You sell 25 TRADEME to user A. You sell 25 TRADEME to user B.

Now you have 50 TRADEME, while both users have 25 each. Next, you make a distribution payment of 0.001 BTC per unit. User A will receive 0.025 BTC User B will receive 0.025 BTC

If instead, you would like to make a distribution payment with a token (example token: DIVIDEND) You have 50 TRADEME, while both users have 25 each. Next, you make a distribution payment of 1 total DIVIDEND BTC per unit. User A will receive 25 DIVIDEND tokens. User B will receive 25 DIVIDEND tokens.

Voting with Tokens

Counterparty supports voting through user-created tokens, as well as broadcasting information onto the Bitcoin blockchain. This means that you can post the terms and options of your vote as a broadcast, and let users vote on its outcome with full transparency by using tokens.

To send available votes to the holders of your asset, go to Freewallet and right-click on your asset EXAMPLE, and then click “Pay Dividends on TOKEN.”

image

You can also use the “Actions” icon on the upper right and choose “Pay Dividends”

image

If you create a token (‘EXAMPLE’), you can create any other tokens (such as EXAMPLEVOTE) and pay distributions of EXAMPLEVOTE to all holders of EXAMPLE in one single action.

Choose EXAMPLEVOTE as the currency to distribute. This way, all holders of EXAMPLE will receive EXAMPLEVOTE in the amount you specify.

Now all you need are as many different Bitcoin addresses as there are choices in your poll. To cast their votes, holders of EXAMPLE can then send the EXAMPLEVOTE they have received to whichever choice(s) they agree with. The results of the poll will be public and verifiable thanks to the Bitcoin blockchain.

Please reference the FAQ on “Paying Dividends to Token Holders” as well as exploring the example below:

10 users own the token "EXAMPLE". You make a distribution payment of 1 EXAMPLEVOTE token to each holder. Now each of the 10 users receives EXAMPLEVOTE proportionally to their holdings of EXAMPLE.

You create a new address for each option of the vote. You create a broadcast from the issuance address of EXAMPLEVOTE, describing the vote, the choices, and the addresses which represent the choices.

Now whoever sends EXAMPLEVOTE to the new addresses you created as the “answers” to the vote, it will publicly broadcast and be shown on the blockchain as per the rules of your broadcast stated above.

It may be a good idea to create burn addresses for this purpose (addresses where the private key is not known). This way, the votes cannot be recycled or moved. For more information about creating a “burn address” see below on the topic “How do I create a Burn Address for use on Counterparty?”.

How do you create a Burn Address for use on Counterparty?

This process is considered an advanced one for new users and it is recommended to do your own research and educate yourself before doing so.

This education is useful though because the Counterparty Burn address that initially created the supply of XCP used this type of burn address. Learn more about the history of Counterparty and "Proof of Burn" here. A significant amount of past and current projects on Counterparty have used burn addresses for many uses. Learn more about this process in this Counterparty Forum post.

The process involves generating an address so it can never be accessed or imported to any wallet ever.

This mean you are trying to create a “burn” address that is "valid" and shows you have “nothing up your sleeve.”

We recommend educating yourself with this post. When you understand the process, we recommend using this python script if you wish to create a burn address.

Broadcast information on the Bitcoin blockchain

Counterparty lets you publish text and data on the Bitcoin blockchain, this is called a 'broadcast'. This is useful for proof-of-publication, notary purposes, and creating betting feeds and oracles. This information is timestamped (as blocks), freely browsable and permanently stored on the Bitcoin blockchain. You can view and search broadcasts on a block explorer such as xchain.

To make a broadcast from Freewallet, navigate to the “Actions” tab in the upper right and select “Broadcast Message.”

image

Here you can pick the source address you would like to broadcast from.

The next input is the Message you would like to broadcast.

The inputs for Value and Feed Fee are used when creating a Betting Feed. See the Betting Feed FAQ for more information (FAQ link).

The Timestamp function will automatically add the timestamp of when you publish the Broadcast. The “Timestamp” has no effect here (because timestamping is done by bitcoin miners) and may be removed in a future version.

image

Wait for the Bitcoin network to confirm your broadcast, and the Broadcast will be visible on the Bitcoin blockchain.

Signing a Message Using Freewallet

Freewallet lets you also manually sign messages with your address. Signing a message is done offline and is not broadcast to the blockchain. This is most commonly used to validate that you are in fact in control of your address. This can be used to "sign in" to websites like https://pepe.wtf/ and other uses include the "proof of ownership" of tokens you hold on that address. This cryptographic measure to prove your identity and control over the address you sign from is a valuable tool.

A great example of how this sign message feature is used by creators to access the website https://dankset.io can be found in this informative video made by RobotLoveCoffee.

To Sign a message first navigate to the top right of Freewallet and select “Actions.” Then select the “Sign Message” button:

image

You have the choice here to change the Source address of signing the message.

Next you will input the Message into the Message field.

After you sign the message your address specific Signature will complete in the Signature field of the pop up window.

image

Signing a Transaction Using Freewallet

Freewallet lets you also manually Sign Transactions on the Bitcoin blockchain using the Counterparty API. This feature has the option to Sign a Transaction but also broadcast this signing publically on the Bitcoin blockchain.

Please keep in mind this is for advanced users only that know how to sign transaction hex's. Please be careful of what you do there. The provider of the hex you are signing can STEAL ALL YOUR FUNDS if you broadcast. Prefer the use of our built-in features as mentioned in all other areas of this User Manual.

You should never blindly sign an unsigned transaction hex without first decoding it and verifying it is what you want to sign. Especially if you did not create said transaction hex yourself. Anyone can create a transaction that "says" a function will happen, but only the private key holder signature (which is YOU as the user signing a transaction) makes this function broadcast-able and mineable to the network. It is helpful to first read a transaction and its contents in full by using a hex decoder like this one made by Jdog but the responsibility of signing a transaction manually is soley at the user's discretion. Please note it is recommended here to only use this hex decoder mentioned above for use with Freewallet as it is community trusted and decodes Bitcoin and Counterparty hex information into a readable JSON format.

A good example of an automated way this is used in Freewallet is for features like signing a BTCpay transaction though only when pressing the "Auto-BTC pay" function is this is done automatically by Freewallet. The function mentioned below is for manually signing transactions.

To Sign a Transaction first navigate to the top right of Freewallet and select “Actions.” Then select the “Sign Transaction” button:

image

Here a pop up named “Sign Transaction” will appear. The Source input is the address you are using to sign the transaction.

The Unsigned Transaction is where you input the transaction details you wish to sign.

Click “Sign” and the Signed transaction input will now be visible on the network after broadcasting. You also have the option to Broadcast this Transaction signing.

image

Again, please keep in mind this is for advanced users only that know how to sign transaction hex's and understand the provider of the hex you are signing can STEAL ALL YOUR FUNDS if you broadcast without knowing what you are doing.

Using the Sweep Function

The Sweep Function is used to “sweep” all BTC and XCP assets from an address to a new one. The process will require BTC for the transaction fee as well as 0.5 XCP to complete this function.

This feature was originally implemented with this CIP by John Villar which stated: "there's one specific case where a whole address needs to move all its assets and ownerships to another address, be it due to migration of technology, wallet compromise or [Over The Counter] selling of its contents."

At the moment Freewallet v0.9.23 has this function disabled due to a bug. Please use v0.9.22 or earlier to access this feature.

If you are wondering how to "downgrade" or upgrade versions please refer to this FAQ.

To access the Sweep feature, navigate to the “Actions” tab in the upper right. The click the “Sweep Address” function.

image

At the moment Freewallet v0.9.23 has this feature disabled:

image

But in Freewallet v0.9.22, this feature shows these options:

image

  • Source is the Address you will be Sweeping from.

You will need access to this address (and all token ownerships) to do this function. You will also need access to the address you are sweeping to if you are simply trying to recover assets or move your assets to a new address you control. It is more common for users to sweep to a new address they have ownership of for safety, and less common to use this function to "quickly send everything you own to another address you don't have access to".

  • Destination is the Address you will be Sweeping to. This is address that will receive all tokens and/or asset ownerships on that address.

  • Balances gives you the option to Transfer all token balances, or to not.

  • Ownerships gives you the option to Transfer all token ownerships, or to not.

Freewallet allows both Balances and Ownerships to be sweeped or just one or the other. Just remember you will need the 0.5 XCP in your Source address and not the Destination address.

Freewallet will then pop up a confirmation window to confirm your address and settings you have chosen for your destination address. Please review all of this information with extreme care.

Take note if you are doing this in a situation you feel your private keys or passphrase may have been comprimised, please use a fee number even higher than the "High" setting that Freewallet recommends. This insures the Sweep function happens as fast as possible and is confirmed as fast as possible.

With this in mind, it may also always be a good reason to keep some XCP (at least 0.5) on addresses you hold many tokens or token ownerships to ensure you can do this process quickly if need be.

What if you make a mistake?

All transactions that are confirmed on the Bitcoin network are immutable and cannot be changed. All Counterparty transactions are Bitcoin transactions.

All actions broadcasted to the network are irreversible so it is important to verify all aspects and use these functions are your own risk and in the same manner you would verify any Bitcoin transaction details.

There is only one circumstance with all of the actions of Freewallet that is reversible and that is if you accidently mint a token to be divisible (when you wanted it to be nondivisible) or when you mint a nondivisible asset (when you wanted it to be divisible).

In this case you will have to own 100% of an asset, you also are required to be the owner of the asset and it is also required that the asset is not locked. To clarify again, you must own the entire issuance of a token, be the token issuer (or acquire token ownership) and the token will need to be unlocked. Locking a token is irreversible. This feature is called the "Reset" feature and is a very recent addition to the network and was implemented after the Destroy function became operable.

Can I burn BTC for XCP?

At the moment you can only burn tBTC for tXCP on the Bitcoin Testnet. If you wish to change servers in Freewallet please see the "How Do I change servers?" FAQ. (Link to FAQ)

In the past, at the very start of Counterparty, a specific amount of BTC was burned to create the entire XCP supply. Read more about this process here(https://counterparty.io/news/why-proof-of-burn/).

image

If you see these functions, they are not usable on the Bitcoin Mainnet at this time and are there for testnet functionality only.

image



Exploring your Balances, History and the Exchange and Dispensers Tabs

Freewallet has four separate tabs in the top area of the user interface: Balances, History, Exchange and Dispensers.


Address Balances

Your Balances tab shows your asset on the left panel of Freewallet. The left panel shows in order: your BTC balance first, your XCP balance second (if you have any XCP) and then the rest of your Counterparty Tokens listed alphabetically.

Left clicking your asset with bring up the Token information on the mid right side of Freewallet and the information is taken directly from xchain.

image

The gear icon in the upper right side of the left panel gives you the Action of “Refresh Balances” as well as Viewing Options for showing specific types of assets in your wallet.

image

If you own an Asset and a Subasset associated with that Token a drop down menu makes it easier to view Subassets:

image

To see the Subasset, simply click on plus “+” icon to show the Subasset. To hide it click the minus “-“ icon.

image

Address History

Freewallet lets you know your history of Bitcoin and Counterparty actions and is displayed on History tab. Note that depending on the speed at which blocks are solved and the BTC fee that you choose to use, it could take anywhere from 2 minutes to many hours for your actions to be confirmed. If you have questions about what fee to use make sure you check out “What BTC fee should I use?” explained here.

Note also there is a refresh button in the upper left side of the left panel. This is useful, but it is important to wait a few minutes (or more) so your transactions can be verified on the Bitcoin blockchain.

image

The Decentralized Counterparty Exchange (DEx)

The Exchange tab first shows “BTC” pairs which to be filled will have to use the BTCpay function as described in detail here (link to BTCpay FAQ). These pairs are denoted with the BTC/TOKEN or TOKEN/BTC pairs.

image

The next tab is the XCP tab which shows all Counterparty DEx orders with the XCP/TOKEN or TOKEN/XCP pairs. These (and rest of the markets) are not BTCpay markets and thus extra steps are not needed for these transactions to match.

You can also explore popular pairs like BITCRYSTALS, PEPECASH, WILLCOIN and other pairs in the market which are considered TOKEN/TOKEN1 or TOKEN1/TOKEN pairs.

You can also use the Search bar in the upper right to find open markets of any Counterparty asset (including XCP).

image

If you would like to make your own custom Market tab and track sales from any Counterparty asset simply click the “Gear Wheel” icon next to the search bar and select “Add Market”

You can also customize your viewing options to include or exclude Named, Subasset and Numeric tokens.

image

Here you can add the Token name of the Market you wish to track and it will appear as a new Markets tab:

image

Remember you can always manually search a Market in the search function. This is the same search function on xchain and the data shown is the same.

image

If you would like to find a market for a card or a pair that has not orders up yet simply manually type the pair into the search bar.

To learn how to use, trade and create orders on the DEx please reference the Trading Basics for BTCpay and DEx.

You can also start new exchange pairs if no orders have been put up for it by reading this tutorial here.

Understanding Dispenser Markets

Freewallet integrates a new Counterparty feature called Dispensers that allow for Tokens and Subassets to be “Dispensed” by sending BTC to a specific Dispenser address.

This function is entirely separate from BTC/TOKEN pairs and the BTCpay function. To learn more about the BTCpay function please see this FAQ.

Freewallet shows two tabs for the XCP and PEPECASH Dispensers available, but any Token can be set up in a dispenser and dispensed.

image

Freewallet first shows a tab for any open dispensers you have created on the address selected under the “My Dispensers” tab. Freewallet also shows two tabs for the XCP and PEPECASH Dispensers available, but any Token can be dispensed using this feature.

image

To add a Token you would like to view the Dispensers of, simply click the gear icon in the top right and select “Add Dispenser Watchlist.”

image

You can sort through these available dispensers by clicking the “BTC Price” column and other columns to sort the information the way you want.

You can also search the Dispenser available for any Asset by viewing its Asset page on xchain and clicking the “Dispensers” tab on it’s token page:

image

Above is an example of the XCP Asset page with the “Dispensers” tab clicked to view available dispensers.

Buying XCP and User Created Tokens from a Dispenser

It is possible to buy XCP (and all user created tokens) by using the Dispensers function in Freewallet. Though Freewallet is simply setting up a transaction to send Bitcoin to an address with a Dispenser on it.

This means you can also manually trigger these dispensers by sending BTC to a Dispenser address from a Legacy or Segwit BTC address, but with the Dispensers market tab, Freewallet will organize and show you the Dispenser details in an easily viewable manner.

For a quick overview, feel free to check out this informational video by RobotLoveCoffee on how to buy a Counterparty token that is listed in an open dispenser.

Because any user can create a Dispenser, the community member Niftyboss has created an audited and verifiable list of trusted XCP dispensers. It is recommended by the community to use these trusted XCP dispensers as they are from active and contactable people in the community that are receptive if a mistake happens on your end of this process.

Make sure if you are buying assets from a dispenser you use a Counterparty compatible wallet so you can easily access this token as most third-party BTC wallets do not support showing Counterparty asset information like Freewallet and Counterwallet do.

For buying XCP from a dispenser, first navigate to the 'Dispensers' tab in the top of Freewallet and then click on 'XCP' to view the XCP Dispenser markets.

image

If you are looking to view Dispenser markets for tokens other than XCP, you can add any token to be a custom tab (called a Dispenser Watchlist) by clicking the gear icon on the right and selecting "Add Dispenser Watchlist".

image

To remove any custom Dispenser Watchlist, simply right click the watchlist and select 'Remove Watchlist'.

image

For now, let us view the process for buying XCP. Navigate to the Dispenser list for XCP as stated before. Take note here you can organize this list by Escrowed, Give Amount, Give Remaining, BTC Price and Status by simply clicking on the text to sort by those details. The BTC Price sorting button is the most commonly used button here as it will show you the cheapest Dispensers:

image

Take note from the information on the highlighted dispenser below from the Dispenser address “18md1….DRXqx” and review the details of all columns thoroughly.

image

Please note the details of this dispenser as the “Give Amount” is 1.0 XCP per 0.00014999 BTC sent to this address. Also note there is only 19 XCP left to be bought out (Give Remaining) of the total 25 XCP escrowed in this open dispenser.

As you can see there are 3 dispensers open above this one with a cheaper BTC price, but those are giving 0.1 XCP and 0.01 XCP per dispenser.

This can be confusing so it is important you verify all of this information before making a purchase.

image

To dispense XCP from this dispenser you can simply click the “Buy Now” button in Freewallet and the popup above will automatically fill the details according to the Dispenser Price you chose.

image

Make sure to verify the details yet again as this action is irreversible.

image

After you successfully send your Dispenser Buy, you will be shown this pop up in which you can View Your transaction and track the status of it on xchain.

image

After you send your Dispenser Buy it will show up on xchain in the “Unconfirmed” Tab at the bottom the of the Dispenser page. You can view more details of this transaction on the bottom right by clicking “View.”

This function still works without using the “Buy Now” feature in Freewalet. Simply send the correct amount of BTC to the correct Source address as shown on the xchain dispenser page to dispense the correct amount of XCP (or any token) you would like to buy.

This will automatically dispense the Token you bought to the address you sent the BTC from.

image

Note this information above that is shown on xchain. As you can see this dispenser (at the time of the screenshot) is still open with 19 XCP remaining to give. To view this page simply click on the address of the dispenser in Freewallet and it will open the Dispenser details on xchain.

You can also see the history of Dispenses as one day ago a user Dispensed 6 XCP paying a total of 0.00089994 BTC to do so.

It is imperative you also check the “Unconfirmed” tab and make sure nobody has already put in a BTC order to purchase the remaining XCP in this dispenser.

It is also VERY important you use a High Fee when purchasing from dispensers. The High fee setting in Freewallet is just an estimate and a higher fee is EXTREMELY recommended in this circumstance to make sure your transaction is mined in the next Bitcoin block.

If you use a low fee your transaction will be “stuck” in the unconfirmed tab and may be dispensed instead by someone paying a higher fee to confirm before yours.

image

Please take note, if you see a dispenser and review it on xchain and see this warning above, DO NOT send BTC to this dispenser as it is either closed or out of funds to dispense.

You can also check out this video by RARE PEPES DOT COM for a good overview on how the process works and how to read xchain.io information correctly. For even more useful information, take a look at this informative video for help with buying XCP from a dispenser, though take note this video covers using rarepepewallet.com but the process is so similar with Freewallet, that it is good information to look over.

This feature is still in discussion and many Community Members have voiced their opinions on making this feature better in the future. Please check out the Counterparty Forums and the Counterparty CIP Github for more information on this discussion.

Setting up a Dispenser

You can set up a Dispenser to dispense Counterparty Tokens (including XCP) on any address you own

It is absolutely recommended you use an address that you do not normally send BTC to, as this may trigger an unwanted dispense.

For example if you set up a Dispenser for 0.001 BTC for a Token on your Address #1 and then “refilled” this address with 0.001 BTC or more, the token will be dispensed automatically. This can cause major issues especially if sending “refilling” BTC from a centralized exchange (your asset dispensed is most likely unrecoverable).

For a nice and quick video overview of this process, check out this informative video by RobotLoveCoffee to get a feel for how the whole process is done when using Freewallet. Take note that the process shown in the video above, is showing the second way to set up a dispenser below, which is "setting up a dispenser on a separate address."

There are two ways to set up a dispenser:

The first would be to manually send the Token you would like to dispense along with some BTC to cover the BTC fee’s associated with creating the dispenser to a brand new address that has not been used yet.

You can read up on the FAQ titled “Viewing, Importing and Creating New Addresses” if you have questions on how to access addresses on your account other than the default “Address #1”.

image

Once the Token and the BTC has confirmed on the new address simply navigate to the “Actions” icon in the top right of Freewallet and select “Create Dispenser”

image

Now you will be prompted with some information to correctly create the Dispenser with the right denotations in all inputs.

Note the Source and Dispenser are the same address as this will be the address the buyer must send BTC to trigger the Token dispense.

The Token Name is the Token you would like to Dispense.

The Available input is how many of the Token you wish to Dispense are on your address.

The Escrow amount is how many total tokens you would like to escrow into the Dispenser.

The Give amount is how many (out of the total Escrow amount) you would like to Give (or dispense) when the correct amount of BTC is sent to the address.

The BTC Amount is the total amount of BTC needed to be received to the address to initiate the dispense with Give Amount you inputed.

For example if I wanted to dispense 1 BIGGIEPEPE at 0.1 BTC each and wanted to put 5 total BIGGIEPEPE’s cards up for Escrow the inputs would read:

Token Name: BIGGIEPEPE Escrow: 5 Give Amount: 1 BTC Amount: 0.01 BTC

The Oracle selection was created recently and will denote the BTC amount in USD and the BTC price will fluctuate depending on the USD spot price at that time.

image

When you change the Oracle to “BTC-USD – US Dollar (USD)” the BTC Amount input automatically changes to be Denoted in USD.

The BTC price on an Oracle dispenser will fluctuate with the price of Bitcoin to USD.

The last step is to select your Fee you wish to use when creating the Dispenser. If you have questions about this, check out the “What BTC fee Should I Use?” FAQ.

The second way to set up a dispenser is to set up a dispenser on a "new" or "separate" address.

The process here is the same as stated before, except you will be inputing the specific address you would like to set up a dispenser on in the "Dispenser" field below.

image

As you can see the process is almost identical to the one described above except this second way of doing it saves a couple extra fee's you would have to do if you went about it manually. Also note in this process the Source address is different than the Dispenser address.

Also take note that this second process of creating a dispenser on a separate address is in current discussion with the community.

Unlike DEx orders, Dispensers have no expiration date and will remain live until either the token is sold out or the seller closes the dispenser.

Closing a Dispenser

It is important to first note ANY unconfirmed transactions on your dispenser before you close it. Though it is possible to close a dispenser before someone’s dispense has finished (especially if they used too low of a fee), if you do not refund the funds sent from Unconfirmed Dispenses it is seen as a very disrespectful and a fraudulent action to do to your buyers.

Since all of these transactions are publicly broadcasted on the Bitcoin blockchain, this data will be easy to access and unchangeable in the future.

It is much more responsible to openly express you are in control of the dispenser and will accurately address if any buyer issues arise because of transaction fee’s or unconfirmed dispenses.

This feature is still in discussion and many Community Members have voiced their opinions on making this feature better in the future. Please check out the Counterparty Forums and the Counterparty CIP Github for more information on this discussion.

To close a dispenser, first navigate to the address you have the Open Dispenser on.

Then go to the “Dispensers” tab on the top of Freewallet.

image

Here you will see the option to “Close” your dispenser on the right side. Simply click that red button and Freewallet will pop up this prompt:

image

Here you can choose your BTC fee and after you click yes, the transaction will be sent to the Bitcoin network and when it is confirmed your Dispenser will now be closed.

Exploring Token Information and Enhanced Asset Information

While you are free to put any type of description in the “description” field, some descriptions are supported to show correctly on xchain and Freewallet.

Counterparty provides a simple standard Enhanced Asset Information and this standard and provides a way to point to more information that could not just be stored in the description text.

These formats include the IMAGE Format, JSON Format, JSON Format with Hash, IMGUR Format, SOUNDCLOUD Format, YOUTUBE Format, IPFS Format, STAMP format and recently the Ordinals Inscription Format.

For more information on how to correctly input the description you wish to use please reference CIP 25 which at the moment is a Draft and not implemented yet.

There are also many tools and 3rd party websites that offer the service of easily converting your data or file you would like to include in your description to be coded in these “standard” manners to show correctly on xchain and other Counterparty Block Explorers.

These include, but are not limited to:

  • https://coindaddy.io - This is owned and operated by JDog and requires a $5 fee to host your data to produce a json for your token. This resource will take you through the process from start to finish if you have not already minted your XCP asset. If you have already minted an asset, but are just looking to change the description and use Enhanced Asset Descriptions, you will have to first sign in with your BTC address by signing a message using Freewallet (or other Counterparty wallets).

  • https://easyasset.art - This is more recent and uses Arweave to host your data and produce a json for your token. There is a great informative video from RobotLoveCoffee to use this website with use on Counterparty Descriptions.

  • You can also manually create a json file and host it using Arweave yourself, but the process is a little more in-depth and technically demanding. If you would like to go about this route (with long term data storage in mind) please reference this informative video by RobotLoveCoffee. This process uses this json tool and ArDrive.

  • For Ordinal Inscriptions it has been recommended by the community to use this tool to mint the details and media of your asset and then use this separate tool to correctly format your Inscription for your Counterparty Description which points to the Inscription. For more information on what an Inscription is, please reference this guide.

What’s a stamp?

A STAMP is a Counterparty transaction which contains a valid STAMP:base64 string in the description key. Using Freewallet you can mint a STAMP with either named or numeric assets, but the Bitcoin Stamps project accepts only the numeric asset type.

For more information check out the official GitHub explanation page here or get involved in the Stamps Telegram Group.

What’s an ordinal?

Ordinals use recent Taproot upgrade to mint inscriptions on individual Satoshi’s (the smallest unit of Bitcoin you can transact).

While the use of writing descriptions using Ordinals Inscription Format is drafted to be supported with CIP 25, Taproot addresses are not supported at this time by Freewallet or xchain. Though many strides have been made recently to update the Counterparty protocol to support Taproot addresses (and Inscriptions) in the future.

I want to trade a certain Asset, is it legitimate?

Assets/tokens are issued on the Bitcoin blockchain directly. This means that anyone with access to the internet is able to create and trade tokens freely without restrictions. There is no way to block Bitcoin addresses and transactions, which means that there is also no way to limit any Counterparty activity. We recommend significant due diligence and research before trading.

Freewallet does not filter any assets. Please check the official website of whatever asset/token you are planning to trade, and make sure to verify that it is legitimate.

In some cases, tokens from verified projects will have a green banner showing “This is an official card in the [Project Name] project.” While this is useful to verify that specific asset you are viewing is a part of the project you know it to be in, make sure to verify all aspects (token name, issuance, holders, token supply etc.) to make sure you are absolutely sure this is the token you intend to trade.

It has been attempted to fraudulently display this banner as part of the Digital Image Section of the description so it is not intended as “fix all” solution to individual due diligence when trading an asset.

image

For more help in recognizing fraudulent Counterparty assets, please read more here.



Trading Basics for BTCpay and DEx

This tutorial takes you through the process of buying and consequently selling a Counterparty-issued asset (or token/coin) from Freewallet. By "Counterparty-issued" we mean "issued on the Counterparty platform by its users" as the Counterparty Project does not issue assets (XCP is the only asset that was issued by the Project).

First, let's summarize how things work:

All Counterparty assets can be traded on the Counterparty Decentralized Exchange and most Freewallet sellers denominate their asset in XCP. It is possible also to sell your asset A for another asset B using the Counterparty Decentralized Exchange. Some main advantages of decentralized crypto-exchanges are obviously decentralization (no counterparty risk) and a lower cost of filled orders.

Some popular Counterparty-listed assets (such as PEPECASH and XCP) are available on traditional (centralized) crypto-exchanges such as Zaif and DexTrade where they are usually available denominated in BTC. This article covers only the DEx, but just so that you know the same asset can be traded on the DEx (usually denominated in XCP) and externally (usually denominated in BTC). Some advantages of centralized crypto-exchanges may include the speed of trading and may or may not have a better liquidity.

It is possible to trade on the Counterparty decentralized exchange directly inside Freewallet. You can trade any token against any other token, including XCP.

Please also check out this informative overview video by RobotLoveCoffee for a generalized understanding of how the Counterparty DEx works and how to navigate it.

Trading against BTC/TOKEN markets using BTCpay please refer here.

You can also sell tokens and subassets in dispensers and is explained here

Trading Tokens on the Decentralized Exchange (DEx)

This section will go over using the “Exchange” tab to put up buy and sell orders for Counterparty assets specifically also known as the Decentralized Counterparty Exchange or DEx.

image

Important: But before you begin, please be aware this exchange inside Freewallet is actually an interface to the Bitcoin network. This means that all tokens, buy, and sell orders are all actually individual Bitcoin transactions. These transactions are then order matched by the protocol.

This means that:

All buy and sell orders are automatically escrowed in the Bitcoin blockchain itself until they are completed. The Counterparty exchange is decentralized and peer-to-peer. This means that there is never a third party or middleman (such as a server administrator, traditional exchange, clearing house, or bank). This kind of trading is called 'trustless', because you do not have to trust anyone to handle your funds and complete your trade correctly.

Also take note, placing and cancelling orders requires the Bitcoin network to confirm these transactions, which may take some time. Each action requires a basic transaction fee (like any other regular Bitcoin transaction).

Some Freewallet features may be restricted due to regulatory uncertainty in certain countries. This does not mean that they are disabled in the decentralized exchange. These features are simply hidden from the user interface by default to avoid legal issues. Like Bitcoin, Counterparty exists without international borders. So, it is absolutely possible to use any of the features in any country by running your own copy of Freewallet, Counterwallet or Counterparty-cli, but please make 100% sure you are operating within the law before attempting this.

Disclaimer: All Freewallet (and therefore Counterparty) actions are Bitcoin transactions. And because anyone can make a Bitcoin transaction, anyone can create a decentralized token. If this concept seems confusing, consider that Bitcoin functions entirely without a central bank. This is an identical 'free-for-all' scenario. It is fundamentally impossible to have an 'owner' and or 'admins' at such an exchange. Escrowed funds are provably inaccessible until peer-to-peer orders are successfully matched, and all completed orders are irreversible.

Counterparty (the open-source Bitcoin toolkit for financial instruments and markets) itself cannot distinguish whether tokens are legitimate, so please ensure due diligence before trading. Always research the official website of the token you are trading and all details of its page on xchain.

Understanding Exchange Pairs

Please note BTC exchange pairs are BTCpay transactions and their tutorial can be read here.

To view all XCP and Counterparty token markets simply click the Exchange tab at the top of Freewallet.

image

You will see the tabs at the top indicating the Tokens BITCRYSTALS, PEPECASH and WILLCOIN as the default markets shown. You can also specify custom tokens to add to the ‘pinned tokens’ by clicking the gear icon to the left of the search bar in the upper right.

image

Here you can use “Add Market” to pin any Asset market in Freewallet the Exchange homepage. Most tokens are primarily traded against XCP, but you can trade absolutely any token against any token. For instance, you pin the token BACON to the Exchange homepage and be able to quickly access all markets associated with BACON.

With this dropdown you can also Refresh the Market data as well as determine “View Options” for specific tokens you are looking to buy and sell such as Named, Subasset and Numeric tokens.

If you search for a specific asset only in the search box, Freewallet will show you all the markets that have any history of orders with that specific Token. For example here let’s search BREITBARTPEP:

image

This example above is the Markets shown for the token: BREITBARTPEP.

If trading this token against PEPECASH or XCP is what you are looking for, then simply click the link of the token on the left side to take you to the pair.

If theoretically you wanted to start a new market pair, for instance: BREITBARTPEP/RAREPEPE you can start a new order in a new market pair by following this tutorial.

Buying and Selling XCP and Tokens on the DEx

Once you have found the market pair you wish to trade make sure you understand all the functions of the Order Pair shown in Freewallet.

image

Above we have for example the exchange pair PEPECASH/XCP. This data is all taken from the public trading information of this pair taken from all Counterparty orders.

image

On the upper left, there is a customizable graph that is by default set to All history of token and on the “Candlestick” setting for viewing the data.

image

When the time setting in the graph is set to “All” you can also use the slider at the bottom to view more specific timeframes.

image

On the right hand side there are some rudimentary information about each token in the pair to the right as well as links to more information about each token. These links will take you to each asset’s xchain page to review more public information about each token not shown here.

Below that is some small icons for the ‘tabbed markets’ mentioned before.

image

Next is the order book. The left panel indicates the place to Buy PEPECASH and the right side to Sell PEPECASH.

  • The Balance input is automatically filled with the balance of each Token you hold on the address you are selected on at the moment.
  • The Price is auto filled to the lowest price possible (market price), but this can be changed if you would like to set a limit order up to be filled later when a buyer/seller fills it
  • The Amount is how many you would like to buy/sell
  • Total is the amount this order will cost

If at first the numbers don’t make sense or confuse you it may be helpful to “switch” the pair to view it in the opposite manner.

image

To do this first navigate to the top left where the exchange pair is listed. Then click the two parallel arrows pointing away from eachother.

image

Doing so will now switch to XCP/PEPECASH. In which the orderbook will now show things “denominated” in XCP instead:

image

Now on the left side is Buy XCP and the right is Sell XCP and as you can see the order books ‘flipped.’ Also notice how the Balance’s for each remained the same, but the Price changed.

Let flip it back to PEPECASH/XCP and put an order to buy some PEPECASH with XCP:

image

In this example we have 0.25 XCP and if we wished to just buy 0.25 XCP’s worth at the current market price I would simply change the Total input to 0.25 XCP.

image

Freewallet will now automatically fill the “Amount” to be exactly how much you could buy at the market price, which in the example happens to be 0.00175 XCP. If we sent this order through Freewallet will automatically match any orders at the price and leave any remainder as an open order in the orderbook.

image

In this example if I sent this order through you can see in the order book there is only 69666 Pepecash available at this market price so the remaining 69,523.14285714 PEPECASH would remain up for sale at this price. In the event you bought more than the 69666 pepecash at this price, any amount higher than 69666 pepecash would be its own limit order and would remain on the order book for another user to fill.

Let’s say we would like to set a lower price than the market and would like to set up a custom Limit order and wait for someone else to match it in the future.

image

Here we now want to set the price of our XCP at 0.00155 per PEPECASH. But let’s say in this example we have decided we only want to buy 100 total PEPECASH at this price.

image

Freewallet will now auto fill the Total input with exactly how much XCP you would need at this custom price to get 100 PEPECASH in a potential match.

The Sell side of things on the right works much the same way, and if you get confused, always remember instead of “selling PEPECASH” you can just ‘flip’ the chart using the icon in the upper right. So instead of buying PEPECASH you can just denote things by selling XCP. How you would like to denote your order is user preference, just make sure you understand the order book thoroughly before making a trade.

image

Under the order book is Market Depth of the pair selected. This can give you some much needed information about where to place market orders as some pairs are more liquid than others.

Below Market Depth is the Trade History of the market. Each transaction can be viewed in greater detail by clicking the link on the date of the transaction on the left side which will take you to each specific transaction hash on xchain.

You can also click the My Trades button to see just your specific trade history in this market.

On the right side of that, if you had any open orders in the market they will appear here.

When you are ready to place an order and it all looks correct, simply click the “Buy” or “Sell” buttons and a confirmation pop up will appear:

image

This will show a “Confirm Buy Order?” or a “Confirm Sell Order?” pop up message which you can verify if the details on this order look correct.

The Expires input is how many Bitcoin blocks this order will stay active. The default setting (8064 blocks) is also the max amount of blocks a Counterparty Order will stay active.

If your order does not fill, or fills partially and is not filled when it is due to expire the funds will be automatically refunded to your wallet.

The last step is to select your Fee you wish to use when creating this order. If you have questions about this, check out the “What BTC fee Should I Use?”.

Cancelling Exchange Orders

To cancel any orders you have up on the Counterparty DEx, navigate to the Exchange pair where your order is live. This process applies to all BTCpay markets (BTC/TOKEN), XCP markets (XCP/TOKEN) and all Token markets (TOKEN/TOKEN2).

image

In the bottom right side of the Exchange pair you will the “My Open Orders” box that will show your active order and its details. Simply click the red “X” on the right side to cancel your order.

image

Here you will be prompted to set your fee for this transaction. Once the transaction has confirmed your order will be cancelled and your funds returned to you that were apart of your open order.

Starting an Exchange Pair that has no orders up yet on the DEx

If you find that a market has no orders (open or ever in history) you can be the first one to put an order up for that pair.

Let’s for example, use the market pair TEST/PEPECASH.

To find the market pair in Freewallet, simply manually type in the Market Pair into the search bar:

image

This will take you to the order page for this pair as shown below:

image

As you can see, there are No Trades Found for this pair as no user has created an order for it.

You can now simply use the Buy TOKEN or Sell TOKEN orders boxes to create the order you wish to put up for this pair and it will show in the My Open Orders tab as well as the blockchain.

Please reference how to do this correctly and in depth by reading the previous FAQ “Buying and Selling Tokens on the XCP DEx”.

Understanding BTCpay and the BTC/TOKEN on the DEx

Every pair in the “Exchanges” tab using the BTC/TOKEN or TOKEN/BTC is using the BTCpay exchange market, as Freewallet utilizes the Counterparty BTCpay function to complete these orders. Keep in mind in this situation explained above “TOKEN” can be any Counterparty Asset including XCP.

These orders do not function like XCP/TOKEN or TOKEN/TOKEN2 type orders. For the BTC side of the order to fill a second bitcoin broadcast and transaction must be completed. This process can be done by Freewallet automatically or done manually.

Take note a protocol bug was found recently that does NOT match any orders below 0.001 BTC. This has been brought to the attention of the Counterparty Community and laid out in detail here. Please take note of this issue right now before placing a BTC order for less than 0.001 BTC at this time.

For use of this feature in Freewallet, first orient yourself with the popup Freewallet asks to “Enable Auto BTCpay”.

image

The Auto-BTCpay function will only work if you enable it when this popup occurs. This function will successfully fill orders in which you are the user in the order using BTC to complete.

image

It is also important to note that the user in the order that is transacting BTC is required to also keep Freewallet open for the order match to occur (as well as the second Bitcoin broadcast mentioned above).

Auto-BTCpay only works for using BTC if Freewallet is OPEN and listening for order matches. If the wallet is closed and an order match happens in which you are the buyer using BTC, no BTC will be sent and the order match will expire.

For example:

If you are the seller of 0.01 BTC in the exchange pair BTC/TOKEN and you put an order up, you must enable Auto-BTCpay and keep your wallet open.

Conversely if you put in an order up and are trying to buy BTC in the order you made (Selling TOKEN for BTC) then you are not required to keep your wallet open as the buyer using BTC is the one required to keep Freewallet open during this process.

The process of how you view the BTCpay exchange pairs is the same as with Counterparty DEx orders:

image

First navigate to the “Exchanges” tab in the top of Freewallet. You can browse BTCpay order markets under the BTC tab and you can also use the search bar in the top right to search for individual tokens or specific BTC/TOKEN pairs.

The process of viewing the market, setting your price and placing your order is the same as described in the “Buying and Selling Tokens on the DEx” FAQ except for one key difference in the settings when placing your order.

image

In this example of a BTCpay buy order to Buy 1 RAREAIRDROP for 0.002 BTC, the “Expires” and “Fee” entries are identical to the inputs as seen in “Buying and Selling Tokens on the DEx” but you have the extra Auto-BTCPay option.

It is recommended to put this setting on “Yes – Automatically sign & broadcast BTCpay transactions”

image

Once you finalize your order you can view your transaction information by clicking “View Transaction.”

If you selected “Yes – AutoBTCpay” during the order creation Freewallet will fill this order automatically if you followed the steps above correctly.

The process of Freewallet confirming this order and then automatically signing and broadcasting the next transaction may take some. It is important to be patient here and to leave Freewallet open throughout this time period. Which depending on the fee you used could take quite some time.

If your order isn’t matched within a certain timeframe (usually around 20 blocks) it be cancelled automatically and the tokens (or BTC) will be returned to your wallet.

To cancel your order manually when it is still active please reference the “Cancelling Exchange Orders” FAQ.



Common Questions and Errors using Freewallet


I sent BTC (or a Token) to Freewallet, why doesn't it show up?

It either was not sent, it has not arrived, or the UI in Freewallet is not showing it just yet.

To check for BTC transactions, use a Bitcoin blockchain explorer (e.g. blockchain.info) and input your public address to see the public history of all of your transactions. If it's not on a blockchain explorer as confirmed or unconfirmed. It has not been sent yet.

If a transaction shows as “Unconfirmed” it means it has not arrived to your wallet just yet. It will need to be confirmed by the Bitcoin blockchain. Freewallet will show it in your wallet after 1 confirmation from the Bitcoin network.

You can also use xchain.io or any Counterparty block explorers to see your pending Counterparty related orders. When you are at your address page on xchain.io you can click the “More” tab on the right side to view your confirmed Orders, confirmed Sends and your Unconfirmed Counterparty transactions.

image

To learn more about verifying this process and how Confirmations on the Bitcoin Network work please reference this post.

In the event you have verified that this BTC transaction is confirmed and in your wallet, but is not showing on your User Interface for Freewallet you can try a few things:

Sometimes it helps to select the “History” tab on the top of Freewallet and press the “Refresh” icon if you know the transaction has already been confirmed by the Bitcoin Network. You can also use the gear icon on the 'Balances' page to refresh as well.

image

After that, try closing and restarting the program.

In the event restarting the program doesn't work, try restarting your computer entirely.

If even the restarting processes do not work, you can try logging out of your Bitcoin account and logging back in. If you are going to do this, MAKE 100% SURE you are backing up your 12-word phrase as well as the private keys of ANY IMPORTED address you may have imported. To review how to do this, check this FAQ.

In very few circumstances that none of the above has worked to fix how the Freewallet UI is showing your balance, you can always import your 12-word phrase of address specific private key into a BTC wallet like Electrum and try your BTC transaction there.

If this desired transaction of BTC is of the upmost importance and is a Counterparty function, you can always also try importing your 12-word phrase and try in a different Counterparty wallet like rarepepewallet.wtf or counterwallet.io

Why can't I see my assets I own or created with 0 issuance?

With the recent rise in popularity recently for issuing Numeric assets, many users are creating a significant amount of Alphabetical assets with 0 issuance.

While these assets with zero issuance (Alphabetical or Numeric) are still visible on the Blockchain and Counterparty Block Explorers like xchain, they are not visible in Freewallet at this time.

If you are looking to create more issuance to a token:

  • You have to own the Token Ownership of the token you would like to issue more of
  • The token must be unlocked

You can follow this FAQ regarding “Issuing More Token Units” in which you will have to use the “Actions” tab in the upper right, then select “Issue Supply” and manually type the Token you wish to increase the supply of in the “Token Name” input.

"Error While Trying to Broadcast Transaction"

First off, this is the most common error to be shown in Freewallet.

This error can happen for various reasons and the first thing to try would be to wait a moment then try sending your transaction again. This will not “double spend” your order as you will receive a confirmation popup when your order goes through. If you saw this message stating "Error while trying to broadcast Transaction", then the transaction did not go through.

If this messages pops up more than a few times and you have no luck, go ahead and try a restart of your computer and of the Freewallet software and try again.

If you are still having this error pop up, the next thing to do would be to make sure your Server Settings are on the correct values. Please reference “How do I check my Freewallet Settings?” and make if you changed these values to set them back at the default values shown.

In the event all of the above fixes did not help, it can be helpful to tweak the BTC amount sent or BTC fee you are using and to try again. This may not be what the user intends to do, but it can help solve this error if the user is willing to change some inputs for their use in this attempted transaction.

If you are still having issues, try updating your Freewallet to the most recent version. Many issues and problems get fixed just by using the most recent version. Check out all Freewallet versions here: https://github.com/jdogresorg/freewallet-desktop/releases . Just make sure that if you imported any addresses (that arent connected with your original 12 word phrase), that you note down the private keys for those extra addresses as they will not import into 0.9.23 automatically.

In some cases (not often) this error can show because the BTC in your wallet is ‘fragmented’ and the total balance you see is actually been split up into many smaller parts which are called UTXO’s (Unspent Transaction Output’s).

If you are still having this issue please reference the “Failure to send not enough BTC in Wallet” FAQ about consolidating your UTXO’s.

"Failure to send not enough BTC in wallet"

This error usually looks something like:

Error composing send transaction via API: Insufficient BTC at address [Your BTC Address]. (Need approximately 0.00XXXX BTC.) To spend unconfirmed coins, use the flag --unconfirmed. (Unconfirmed coins cannot be spent from multi‐sig addresses.)

First off, this could simply mean you actually do not have enough in your wallet to pay the fee. This does not have anything to do with your address being a “multi-sig address”. If you know you do have enough BTC in your account to cover the costs, the reasoning for this error could be many different things.

The second most common reason this is shown is because you may have some 'unconfirmed' transactions that were sent out from the address, but the Freewallet User Interface has not shown the data yet in the History tab.

Because there can be quite a long time between bitcoin blocks, it's always best to search your address on a BTC block explorer like blockstream.info and a Counterparty block explorer like xchain.io. Before trying to spend the BTC shown in your wallet, take a look to see if any past transactions are still unconfirmed. This error message could simply mean that you have sent out transactions that have not been confirmed, so the balance still shows in your BTC section of Freewallet but a portion of that BTC is not spendable.

What could also be likely is that you are trying to send the MAX amount of BTC and the fee you are using makes it so you do not have enough btc to send this transaction. The first thing to try here is the change the BTC amount sent and try again. In this case you may lower the amount of BTC you are trying to send slightly. The second would be to change the fee you are going to use slightly as well. Sometimes changing these two input's and trying again is the easiest fix for this error.

Also remember sometimes just closing and re-opening the Freewallet application will update the data Freewallet is pulling from to the latest block data on the blockchain.

If none of those fixes work, it is more likely this means the amount of BTC on your address is ‘fragmented’ and the total balance you see is actually been split up into many smaller parts which are called UTXO’s (Unspent Transaction Output’s).

This would make more sense as you could well enough have more than enough to cover the BTC fee with your ‘total’ BTC balance, but it is comprised of many many smaller amounts of BTC or UTXO’s that make up that total amount.

You can think of this issue in a different way: You don’t have a $100 bill in your account you have 10,000 pennies in UTXO’s and to cover your costs for the fee you need $1. This wallet does not let you spend the $1 fee with 100 pennies and will show you this error.

A couple of solutions have been proposed and documented to deal with and fix this issue like here but the simplest one out of all of them is to send more BTC to the address yourself (more than enough to cover the transaction cost) and then send ALL of the BTC in your account to yourself. Which means you would send all of the BTC that you hold on your address, to the same address as the sender (sending it to yourself).

Think of it like mailing a letter to yourself comprising of those 10,000 pennies and receiving back a $100 bill. In this circumstance instead you are “gathering your BTC UTXO’s” instead of sending yourself a letter.

In the Bitcoin world this is called “consolidating UTXO’s” and is very common.

If for some reason you cannot refill your BTC wallet with more BTC to cover the costs and consolidate your UTXO’s with Freewallet, then you may have to import your private key for that address into a wallet that supports this function natively.

There is no “consolidating UTXO’s” function natively yet in Freewallet though there are 3rd party wallets that do support this.

If you would like to see this feature supported in Freewallet, join the discussion on the Freewallet github. Every opinion posted there, no matter how small, will help future users and the developer to understand what is wanted in the community regarding Freewallet Functions.

One community recommended 3rd party wallet to do this process with with would be Electrum, but other wallets support this feature too.

Just make sure when you are importing your Private Key for the address you are having this error that you do so with a wallet service you trust.

For more information on what your private key is for this specific address in question and how to view it, take a look at "Displaying the seed phrase and private key of your adresses".

My Freewallet Exchange/Dispenser tab is resetting the data when I try to sort by BTC Price?

Unfortunately sometimes the Exchange and Dispenser tabs can get bugged and not return any information when clicking around the interface.

This does not mean there are no orders in these pairs or Dispensers for the ones you were searching. All of the data still exists on the blockchain and can still be viewed at xchain.io

image

Sometimes this issue will also pop up an error regarding the DataTables:

image

You can always click OK and manually enter the pair you wish to look up on search bar in the top right or just use xchain.io to search through the specific asset markets you wish to see.

image

Sometimes clicking on and off of the exchange can help this issue as well as restarting the Freewallet program. You can also try using the Refresh button in your History tab and also by clicking the gear icon in the upper left of the Balances page and clicking “Refresh.”

"Public key was neither provided nor published in blockchain."

This issue usually shows when Counterparty has not seen the ‘public key’ for this address yet.

It can happen when you are trying to initiate a Counterparty function (create Asset, creat Dispenser, etc.) on a new address with no previous blockchain history associated with it. This can happen if you only sent BTC to that address but this address has never sent BTC out in its history.

If you see this error all you need to do is do a BTC send FROM that new address and Freewallet will now see it’s public key published in the blockchain and the address will now be usable for Counterparty functions like Creating an Asset or Creating a Dispenser. This transaction can simply be sending BTC "to yourself", by simply sending BTC from that address back to that same address.

Freewallet will now be able to see the 'public key' for this new address and all Counterparty Functions will now be accessible.

I logged in and see none of my assets but I see them on xchain!

Since Freewallet is a deterministic wallet if you signed in with your 12-word seed phrase and do not see your assets you must first recheck you used the correct seed phrase that you backed up when creating your wallet.

It is possible you could have made a spelling mistake or used the wrong word and Freewallet simply “created a new wallet” from that new deterministic seed phrase.

If you are certain you have correct seed phrase, it is possible your server settings to update your balances is not updating. Please see “How do I check my Freewallet Server Settings?” and make sure you are on the default recommended settings.

If you added addresses that are not currently showing and that were "added addresses" (not the first 10 segwit and first 10 legacy addresses automatically), use the "Add Address" function to re-propagate them into your wallet.

Help! I used too small of a fee and my transaction is not confirming!

While it is recommended to use the "high" fee setting on Freewallet it may not be high enough as the user desires, before moving forward with this issue please review the "What BTC fee should I use?" section. It is important to note in this process that sometimes a singular transaction fee that worked just a moment ago can not be enough for the next transaction. For instance things like mempool changes, UTXO amounts on your address, unconfirmed transactions to your address and more can affect this choice.

In the instance you have a transaction that is not confirming in a reasonable amount of time it is because you broadcasted the transaction with too low of a fee. This fee amount that is needed to confirm a bitcoin transaction can change drastically from block to block on the bitcoin blockchain or sometimes stay very consistent.

The process described below is normally only used for extremely urgent transactions (with too low of a fee) to be pushed through and be confirmed. In the event you set too low of a fee and the transaction is just taking a while, it is best to just be patient and review how long it may take with the fee you used. https://mempool.space/ is a good place to review the most recent data on this subject, and the details of your transaction can be reviewed by using: https://blockstream.info/

Please keep in mind bitcoin blocks are confirmed on an average timespan of 12 minutes apart, though this could be drastically longer or shorter of a waiting period.

In the event you are stuck in the unconfirmed state on your transaction you can try to "speed it up" by issuing a second transaction from that same address, but this time with a much higher fee. This second transaction (Child tx) will need a high enough fee to cover itself as well as the transaction that came before it (Parent tx).

In Freewallet this second transaction can be a transaction for any XCP function, but in this use case it is most common to be a BTC send "to yourself." Also it is common here to send the MAX amount of BTC to youself as it will consolidate the UTXO's on your address. Though this is not technically needed to send MAX BTC amount, the Child transaction just has to have a high enough fee to cover the fee's for both. So the amount of BTC here "sent" in the transaction doesnt really matter for solving this issue, its just getting that second fee amount correct that is important.

If you would like to know more about consolidating your UTXO's as described above, please reference the "Failure to send not enough BTC in wallet" FAQ.

Basically the bitcoin miners will have a higher chance of confirming both transactions once the Child transaction is chosen to be confirmed by the bitcoin miners. Just make sure to not only check what Freewallet is suggesting for a "high" fee, but to also add a higher amount to cover the Parent transaction. Three to four times the amount of the "high" setting should work in this circumstance.

Since this is specific feature is more of a "Bitcoin" feature and less of a 'Freewallet' feature this Child Pays For Parent can also be used with other Bitcoin wallets like Electrum. Some users prefer entering their private key for the address used in the CPFP into Electrum and doing this process there, though it is not necessarily needed to do so.

Something to note about this process is the need to have extra bitcoin in your address to do this second transaction with the appropriate fee. It may be needed to send more BTC to this address if you cannot cover those fees.

If you'd like to learn more about CPFP in general, please reference this guide.

If you would like to learn more about CPFP, but specifically for use with Electrum please reference this guide

I sent/dispensed an XCP asset to a Wrapped Segwit Address (address beginning with "3"). What can I do?

At the moment on a protocol level, Wrapped Segwit Addresses (or addresses beginning with "3") are supported by Counterparty but Freewallet does not support signing those transactions at this time.

Another developer by the name of JP Janssen (JPJA) had devloped an OP_Return builder for Wrapped Segwit addresses here, but at the moment this is experimental and it is recommended to get into contact with JPJA to better help experiment with the process.

If you find yourself in a situation that an XCP asset has been sent to a Wrapped Segwit Address and you are looking to access this token, it would be best at this time to wait until a further release of Freewallet that supports Wrapped Segwit Addresses so they can be used for all Counterparty functions.

I sent/dispensed an XCP asset to a Taproot Address (an address that starts with "bc1p"). What can I do?

At the moment Freewallet does not support Taproot Addresses and neither does the Counterparty Protocol, though it does look like Taproot addresses may be supported in the near future with this protocol proposal. Keep in mind when looking forward to future proposals, that all the payments to developers to upgrade the protocol is by bounty and donation only.

In the event you find yourself in a situation that you sent an XCP asset to a Taproot address your only option is to wait for the Counterparty Protocol to upgrade and then to wait for Freewallet (or another Counterparty wallet) to support this protocol change in a future release.

I updated Freewallet and can only see my first 20 addresses! How can I get them back?

Since Freewallet is a deterministic wallet your 12-word phrase will generate the same addresses back when selecting "add a new address". This is the case for adding Normal and Segwit addresses, so if you "cannot see them" the answer is as simple as clicking "add new address" until the one you cannot see comes back into view. Depending on how many addresses you added to the original 20 on the previous version of freewallet it may take many additions to get all the addresses back you previously used.

If you had imported addresses from a separate 12-word key using the addresses's private key you will not be able to import those automatically in this way because they are not tied to the 12-word key you have used to generate the first 20 addresses. This is why it is so important to save any private keys from other addresses any time you import them into Freewallet.

My second transaction on an MPMA (Multi-send) is not getting confirmed and giving me an error. What can I do?

Recently there was a bug found relating to Multi-sends and adding a hardware wallet address. You can read more about it with this issue request.

It has been reported that if you "remove" or temporily "unadd" the hardware wallet address in Freewallet that this issue goes away. This is even the case when you are trying to do a multi-send from ANY address on your Freewallet.

So if you run into this issue try that first as stated above, though at the moment it is unsolved and the community has found this to be a work-around for a temporary fix.

I just sent a transaction and Freewallet gave me a link to the transaction but xchain says "Transaction not found on xchain"

If this is your first time using Freewallet for any function, remember that this process is not necessarily instant. It can take anywhere from 10 seconds to 10 minutes for the transaction to show correctly on xchain. So please be patient and refresh the xchain link every few minutes to confirm your transaction has gone through.

You can also view your address on xchain and use the "more" button on the bottom right to view you "unconfirmed" transactions:

image

In the event the transaction you did was just sending BTC and not using a Counterparty function (like minting or sending an XCP asset), then this wont automatically show on xchain. This transaction link will have to be viewed on Blockstream.info as it is simply a BTC transaction and doesn't include OP_Return data in it. You can use the "Transaction Hash" as the information you would use to search for the transaction on Blockstream to view the details of your BTC send. For more information on this, check out the "What is xchain?" FAQ.

Error composing dividend transaction via API: ['zero dividend']

If you see this error in Freewallet, it usually denotes a specific situation when using the Dividend function. If you see the error:

image

This indicates that no users will be paid dividends using this transaction, so the Counterparty protocol does not let you generate the transaction (and in this situation Freewallet as well).

This error can have something to do with an asset that was previously 'reset' and should be fixed in the next Counterparty release.

It has also been reported when trying to send an asset which is divisible (less than 1 total supply).

The work around for this error would be to use a MPMA (Multisend) to distribute your dividends instead of using the dividend function.

Find out more about Multisend in this FAQ

How do I use Freewallet to mint an Emblem Curated Vault?

Freewallet is a great tool to be able to send your XCP asset to a Curated Emblem Vault for sale on Opensea and other Ethereum platforms.

The projects supported by Emblem Vault at this time are Rare Pepe, Fake Rare, Fake Commons, Age of Rust, Dank Rare's and a few other options from the Counterparty Community.

The process is pretty simple, but coming from a Counterparty background, some steps can be confusing and vastly different than Counterparty functions.

Check out this extensive tutorial for using Freewallet to mint Curated Emblem Vaults.

To view price action of XCP and ETH sales of some of the main Counterparty assets that are sold across different blockchains, check out: https://pepe.wtf/ and https://hnft.wtf/.

My Apple/MacOS is saying Freewallet is not verified by the app store. What should I do?

This is shown because the Freewallet Desktop version has not "signed binaries" with the Apple Mac Store. This also includes having to pay the Apple/MacOS team $99 a year to have a 'verification certificate'.

appnotinappstore

To get around this flag:

  • Open Freewallet Desktop
  • When the error is seen navigate to your "Settings" on your Mac device
  • Click the "Privacy" tab
  • Click "Open Anyway" to tell your device Freewallet Desktop is okay to run.

This process is also mentioned here in this FAQ.

Jdog has mentioned getting these 'signed binaries' all situated for the next Freewallet version. Which would also clear up this Mac issue as well as this Windows issue.


Getting Support

Because Counterparty is community developed, community funded, and primarily upkept by active community developers and avid users, getting support usually starts with an in-depth reading the documentation already published about the platform.

The official support room on Telegram for Freewallet is: https://t.me/freewallet_io and the offical place to document issues is: https://github.com/jdogresorg/freewallet-desktop/issues

These FAQ’s and Documents are simply a conglomerate help guide put together from information from https://forums.counterparty.io/ , https://github.com/CounterpartyXCP , and some issues and comments from the Official Counterparty Chat https://t.me/Counterparty_XCP.

These guides and FAQ’s are continually being updated to match the most recent upgrades, versions and developments but do take time for them all to be agreed upon by the community and put together. It is important to first do a thorough check of Freewallet Issues: https://github.com/jdogresorg/freewallet-desktop/issues, Counterparty Forums https://forums.counterparty.io/, the Counterparty GitHub https://github.com/CounterpartyXCP, including the Counterparty Improvement Proposal Discussions https://github.com/CounterpartyXCP/cips/discussions, before coming to the Official Freewallet Telegram chat for support.

At all times feel free to engage in all aspects of the Freewallet Github https://github.com/jdogresorg/freewallet-desktop/ including the Issues and Discussion sections for any questions, concerns, help, and future additions to Freewallet. Keep in mind the users and community will most commonly use those references as stated above to help your issue.


Errors Reported on Specific Versions

Not all errors and issues report with specific versions noted and not necessarily all are reported in the Issues section of the Freewallet Github, though with this in mind you can review all changes made to each version of freewallet here: https://github.com/jdogresorg/freewallet-desktop/releases

It is common that issues using older versions of Freewallet have been fixed and simply updating to the recent release and trying your action again can solve many problems. Be sure to review the issues section of the Freewallet github and review if any problem may be version specific or if it has already been solved/fixed: https://github.com/jdogresorg/freewallet-desktop/issues.

In the event you are experiencing an issue on the most recent release of Freewallet please document and thoroughly note the process you used that brought up the issue so it can be recreated and verified by other users and the developer. Being very thorough and detailed for the entire process of the issue you are encountering is needed in this cirumstance. Please be patient as it may take a while to find a solution or fix for your issue.

@misterdna
Copy link

Similar to a BTC block explorer, xchain is the block explorer for Counterparty functions, or specifically the browser for information coded in the OP_Return function of Bitcoin transactions.

I think it might be better to say something like "XChain is currently the only block explorer for Counterparty functions," to help give people a better understanding of the ecosystem - that XChain is not "the official" explorer, and also that the ecosystem could use more than one explorer.

@davestaxcp
Copy link
Author

Similar to a BTC block explorer, xchain is the block explorer for Counterparty functions, or specifically the browser for information coded in the OP_Return function of Bitcoin transactions.

I think it might be better to say something like "XChain is currently the only block explorer for Counterparty functions," to help give people a better understanding of the ecosystem - that XChain is not "the official" explorer, and also that the ecosystem could use more than one explorer.

Good looks, Will change - it is better to influence future users to make a different block explorer

@GreatBees
Copy link

When I decided to try cryptocurrencies, I chose Freewallet because of its low fees and user-friendly interface. I transferred a small amount of money there to start with. After the first transaction they suddenly blocked my wallet, demanding verification. I sent all the necessary documents, but the wallet remained inaccessible. Just lost money and nerves.

@davestaxcp
Copy link
Author

When I decided to try cryptocurrencies, I chose Freewallet because of its low fees and user-friendly interface. I transferred a small amount of money there to start with. After the first transaction they suddenly blocked my wallet, demanding verification. I sent all the necessary documents, but the wallet remained inaccessible. Just lost money and nerves.

Freewallet 0.9.23 (which the official site is Freewallet.io) does not require verification and is a standalone executible program hosted on this Github by Jdog:

https://github.com/jdogresorg/freewallet-desktop/releases/

It sounds like you downloaded and accessed an entirely different wallet.

@Apiggpyr
Copy link

My experience with Freewallet was a nightmare from start to finish. After depositing 0.05 BTC into my wallet, I attempted to withdraw it, only to find that my account had been inexplicably blocked. Despite reaching out to support multiple times, I received nothing but automated responses, leaving me feeling helpless and frustrated. It's clear to me now that Freewallet is nothing more than a scam designed to steal users' funds. I urge anyone considering using this platform to steer clear and report their fraudulent activities to App Store and other relevant platforms!

@davestaxcp
Copy link
Author

@Apiggpyr

Freewallet 0.9.23 (which the official site is Freewallet.io) does not require verification and is a standalone executible program hosted on this Github by Jdog:

https://github.com/jdogresorg/freewallet-desktop/releases/

It sounds like you downloaded and accessed an entirely different wallet. The version I wrote this FAQ for does not "block addresses" and has no "automated responses"...... where did you download the wallet? who coded it? how did you verify it?

You mentioned "App Store" but this Desktop Version of Freewallet.io is not even on the App store mate....It sounds like you downloaded and accessed an entirely different wallet.... and now are trying to comment on a completely different software FAQ and proving this isnt even the program you used.....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment