Overview

When end-users receive transfers that are gifts on your platform, the initial acquisition information of the transaction will be considered "missing cost basis". As a result, gains and losses cannot be accurately calculated.

Digital Asset exchanges that have built out a customer experience to accept gift information can send the transfer information to Taxbit to calculate and maintain inventory values, and to determine the appropriate cost basis during the disposal based on IRS gift guidelines.

Creating Gift Transfers

A set of Transfer Lots can be created and associated with a transfer-in transaction that has a subtype of Gift. A Transfer Lots item consists of an Acquisition Date (of the lot), Quantity (in the lot), and Cost Basis (value of lot at acquisition) and should represent the original gifter’s acquisition date. You can leverage the Transfer-Lots APIs with the POST, GET, and DELETE.

Validations

During a POST, the quantity of assets of a set of transfer lots must match the transfer transaction’s quantity. If there is a mismatch in quantity, there will be a failed 400 response.

🚧

If a transaction with existing transfer lots is updated and the validation rules are broken, Taxbit will return the transfer lots with a 203 response.

During an update of a transaction with existing transfer lots, the following will conditionally occur:

  • If transaction date-time moves backward, any impacted transfer lots where the transfer-lot timestamp is later than the transfer-transaction timestamp will be ignored, and missing cost basis lots will fill the remaining quantity of the transfer
    • Calling a GET transfer-lots for this transaction will return a 203 response.
  • If quantity of the transfer-in transaction changes, ignore all lots & create MCB lot for the transfer-in.

Downstream Impact

API

Creating transfer-lots with gifted lots for values will have downstream impacts on Transactions and Gains items. Taxbit’s API can inform if there has been an impact or derivation from a user-provided-cost-basis value.

  • Transactions GET – the tag has_transfer_lot_data = true if the cost basis was manually set on the transfer_in transaction
  • Gains (/v1/gains/cost-bases) GET – account_owner_edited = true when a gain item is impacted by a user-provided cost basis
    • The cost basis is determined based on the FMV at time of disposal based on US IRS rules for gifts.

👍

The same Transfer Lots endpoint is used for gifts received or "user-provided-cost-basis" for transfers from a different platform. They can be differentiated based on the type/subtype combination.