A self-transfer occurs when you send your cryptocurrency from one of your wallets/exchanges to another, such as transferring funds from your Coinbase account to your Binance account. Self-transfers are non-taxable events.
When you import records from multiple accounts, ZenLedger usually matches up the two sides of a self-transfer. It will identify a self-transfer based on the AMOUNT and TIME (outgoing occurs before incoming).
When the sides are not matched, it could cause a few errors such as:
Sell Without Buy
Increase in tax liability
Troubleshooting Self-Transfers and Missing Imports
After you have imported all of your data and believe you have imported everything, you may still see items on your 8949 that don't look right to you.
All coin-to-coin trades are treated by the IRS as a sale of the original (outgoing) coin and the acquisition of the new (incoming) coin. Depending on your accounting method (FIFO, LIFO, or HIFO) you may have a capital loss or gain on the disposition of the original coin and this will be reported on the 8949. More about cryptocurrency taxation here.
If we see an outgoing without a corresponding incoming, this would appear as a sale. If this was actually a self-transfer, then we likely have either a missing wallet or a wallet that is not reported in UTC and/or has a timestamp of the incoming after the outgoing transaction. Example for the latter: You have 1 BTC outgoing from Coinbase at 8:30 am UTC but your wallet shows incoming 7 hours earlier at 1:30 am in your timezone - this would not match as a self-transfer and would need to have the timestamp edited to make sure the incoming is after the outgoing. More about editing self-transfers here.
Most of the time when there is a missing source, you get errors on the 8949. Below is a way to view these while checking transactions and fix these by importing the missing source.
How to Manually Mark Self-Transfer
Find one of the transactions in the pair (either the "buy" or the "sell").
Select the circular green arrow symbol to the far right of that transaction line.
Mark it first as Incoming (or Outgoing, whichever is appropriate)
Then select the circular green arrow again, and mark it as Self-Transfer.
In the pop-up window Possible Outgoing section, select the grey bubble to the left to create the match.
If there are no Possible Outgoing suggestions, choose to Create a Manual (Matching Transaction Not Found). Manually enter the matching transaction.