Skip to content

Latest commit

 

History

History
 
 

account_cryptocurrency

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Account Cryptocurrency

Beta License: AGPL-3 OCA/currency Translate me on Weblate Try me on Runboat

This module provides basic support for the management of cryptocurrencies.

  1. Cryptocurrencies are commonly considered property from a taxation standpoint.
  2. This means that every time that you receive or send cryptocurrencies, you are entering into a taxable transaction, and will need to report on the gain/loss resulting from the receipt/issue of the cryptocurrency.
  3. When you receive cryptocurrencies (in exchange for goods delivered, service rendered or because you mined it), that translates into taxable income to the recipient. The valuation should be based on the market value of the cryptocurrency at the time of receipt, and it can be provided by a third party (e.g. the exchange platform) or needs to be identified by you somehow.
  4. You have to retain the cost of the crytptocurrency for as long as you keep it.
  5. When you pay out cryptocurrencies (in exchange for goods or services purchased, or if you exchanged fpr another crypto or normal currency) this constitutes again a taxable transaction. In that case the gain/loss is computed as the difference between the cost of the cryptocurrency that you pay with, and the value of what you receive back, valued in your operating normal currency.

Table of contents

  1. For the user that will do the configuration, make sure to activate the option 'Show Full Accounting Features' in the user profile.
  2. Activate the Multi-Currency in 'Invoicing / Configuration / Settings / Multi-Currencies.
  3. Create the cryptocurrency in 'Invoicing / Configuration / Accounting / Currencies'. Complete the following fields: 'Inventoried', 'Valuation Method'. Indicate the desired rounding factor.
  4. Add to the cryptocurrency an 'Inventory Account'. This Account must indicate in field 'Account Currency' the same currency.
  5. Create an Account Journal associated to the payments of the crypto currency, in 'Invoicing / Configuration / Accounting / Journals'. Indicate in the 'Currency' field the cryptocurrency. In the 'Default Credit Account' and 'Default Debit Account' you should indicate a new Account of type 'Expenses', with a name similar to 'Cryptocurrency X Gain/Loss'. The new Account must also refer to the cryptocurrency account.

Additional remarks:

  • In case that your company currency is not EUR, make sure that the main company currency has no exchange rates. Go to 'Invoicing / Configuration / Accounting / Currencies' and for the company currency press the button 'Rates' and delete any rate listed.
  • The maximum allowed decimal places associated to currencies has been increased to 18, that is what Ethereum cryptocurrency accepts as the maximum divisibility.
  • If you have negotiated your invoices with customers / suppliers using crypto currencies, you can indicate them in the corresponding invoice.
  • When you receive/send payments you can indicate the cryptocurrency that you want to use for the payment. Once the payment has been posted you will be able to navigate to the associated currency moves.
  • You cannot make internal transfers using cryptocurrencies.

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

  • Eficent

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/currency project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.