The CryptoTax API gives you the ability to create legislation- and standards-compliant tax reportings for you and your customers.
In essence, creating a single tax report can be accomplished in two steps:
/requestReportCalculationAPI endpoint, also specifying information such as the tax country and tax year, and the format of the tax reportings.
/checkResultAPI endpoint until the calculation has been completed and your tax report is ready for download.
This is the base URL of the CryptoTax API:
The CryptoTax API is secured using JWT tokens. You must pass your individual token for each request using the HTTP header parameter
Authorization: Bearer <token>
You find a simple demo application in our GitHub repository here. It shows you how to use the CryptoTax API to create a tax report.
There are three options for white labeling reports created through the CryptoTax API:
If you want to opt for option (2) or (3), please send us your logo image when requesting API access.
Also, please provide your address information to include on the report cover letter.
The tax report calculations are always based on a country's (fiat) currency.
For Germany (country code
DE) the base currency must always be
EUR (i.e. asset id
For Switzerland (country code
CH) the base currency must always be
CHF (i.e. asset id
For all other tax countries you can choose one of the following supported fiat currencies as a base:
|Fiat currency||CryptoTax asset id||Code|
|Hong Kong Dollar||1120||HKD|
|Israeli New Shekel||1187||ILS|
|South Korean Won||1315||KRW|
|New Zealand Dollar||1683||NZD|
|New Taiwan Dollar||2294||TWD|
|United States Dollar||2335||USD|
|South African Rand||2599||ZAR|
This API endpoint gives you information on all currently available assets and their ids. You need this information when loading transaction data for tax calculation (i.e.
/requestReportCalculation API endpoint).
This API endpoint is used to check on the status of a started calculation request. If the
status property of the response shows the value
COMPLETED, the calculation results can be found on the
Request id which was fetched during tax data calculation request and should be used for fetching tax data
Calculated tax data
Tax data for requestId is not found
This API endpoint is used to request a new tax data calculation. In addition to information on all transactions (e.g. deposits, withdrawals, trades), you specify the tax year and country for which the report should be generated, as well as the report format (e.g. PDF).
Base asset id, only fiat is allowed
Enum: "json" "xlsx" "pdf"
Tax data format, default value json
Enum: "DE" "CH" "INT"
The tax country this report is created for. Use
Year for which tax data should be calculated
Array of objects (ApiTradeDto)
List of transactions
Data for tax calculation is loaded successfully