Skip to main content

AI Summary

  • It requires more manual effort, but it works for literally any transaction source.
  • Use Custom File when your exchange or transaction source is not supported in KoinX integrations
  • Download the template from Integrations → Custom File → Download Template File
  • Every row in the file represents one transaction
  • Three fields must always be filled: Date and Time (UTC), Type, and Label
  • Other fields depend on what happened in that transaction
  • Upload the completed template under Integrations → Add Integration → Custom File
  • Only files in KoinX Custom File template format are accepted

When Should You Use Custom File?

Not every exchange or transaction source is supported directly in KoinX’s integration library. Maybe you:
  • traded on a smaller regional exchange
  • executed OTC deals
  • used a platform that no longer exists
  • received crypto from an external wallet
  • interacted with DeFi platforms that don’t have a native integration
For situations like these, Custom File is the universal fallback. Instead of connecting an exchange or wallet, you upload your transaction history using KoinX’s standardised template format.
If the exchange is supported in KoinX, always use the native integration or exchange file upload instead.Custom File should be treated as the last resort.

How Custom File Works

The Custom File template is a structured spreadsheet. Each row describes one transaction, including:
  • what happened
  • which assets moved
  • how much was sent or received
  • any fees involved
KoinX reads this data and reconstructs the transaction history. Think of it as manually describing your crypto activity to the system.

How to Upload a Custom File

1

Click Add Integration.

2

Select Custom File from the integrations list.

You will see a page titled Integrate Custom File with an auto-generated wallet name such as: Custom File-1
3

Click Download Template File.

This downloads the official KoinX Custom File template spreadsheet.
4

Open and Fill the Document

Only files using this exact format can be uploaded. Open the template in Excel or Google Sheets. Each row represents one transaction.Fill the fields according to the guide below.
5

Return to the Custom File integration page.

6

Upload the File

7

Click Submit

KoinX will process the file and import the transactions.
The Custom File upload area only accepts files in KoinX template format.You cannot upload a raw exchange CSV here.If your exchange is supported in KoinX, use the exchange-specific file upload integration instead.

Understanding the Template Structure

The template contains multiple columns so it can support every possible crypto transaction type. However, not every column applies to every transaction. We’re dividing this template to two parts:
  1. Required Fields
  2. Transaction Data Fields
This allows the template to represent any crypto activity. Let’s dive deeper to understand these fields and what values are to be entered:

Required Fields (Always Needed)

These fields must be filled for every row. If any are missing, the file will fail to upload.
  1. Date and Time (UTC) This is the exact timestamp of the transaction. Format: YYYY-MM-DD HH:MM:SS
    Example: 2023-05-30 14:34:25
    1. Must use 24-hour format
    2. Must be UTC timezone
    3. Avoid letting Excel auto-format dates. A safe approach is to copy the example timestamp from the template and edit it. Spreadsheet software sometimes silently changes date formats, which can break the import.
  2. Type The Type describes the broad category of the transaction. Allowed values:
  3. Label Label adds more detail about the transaction. The allowed labels depend on the Type you selected. For example:

Transaction Data Fields

The remaining fields describe what assets moved in the transaction. You only fill the fields relevant to that transaction.
  1. Received Asset Fields Use these when crypto was received.
  2. Sent Asset Fields Use these when crypto was sent.
  3. Fee Fields Use these when a transaction fee was paid.
  4. TDS Fields These apply only when tax was deducted at source. Primarily relevant for Indian exchanges.
  5. Address and Hash Fields These are useful for blockchain transactions.
  6. Token Contract Fields These identify tokens on EVM chains.
    Only required for less common tokens.

Rules for Empty Fields

Do not leave cells blank. Use placeholders. Example:

Sample Scenarios:

Type: Trade
Label: Buy
Example: Received 1.5 ETH and Sent 2850 USDT
Type: Deposit
Label: Airdrop
Example - Received 500 ARB tokens
Type: Withdrawal
Label: External Withdraw
Example - Sent 0.1 BTC
Type: Expense
Label: Brokerage or Gas Fee
Example - Paid gas fee of 0.003 ETH

Common Issues and Fixes

Most common cause:
  1. Incorrect timestamp format.
    Make sure the format is: YYYY-MM-DD HH:MM:SS. And that the timezone is UTC.
  2. Label does not match Type
    Example mistake: Type: Trade and Label: Airdrop
    This will fail because Airdrop is only allowed for Deposit.
If you don’t know certain values:
  • Use 0 for amounts
  • Use - for coin names or addresses
Even partial data can still be processed.
You can upload multiple files to the same Custom File integration.Each upload will add new transactions.

Frequently Asked Questions

No. The Custom File integration only accepts KoinX template format.Use the exchange-specific integration if available.
KoinX will try to determine the market price at that timestamp using its pricing data.Providing values manually may improve accuracy for obscure tokens.
Only if TDS was actually deducted.Otherwise:
Yes, KoinX offers custom file creation as a chargeable service. The cost depends on the transaction count and complexity of the transaction types.
Last modified on June 25, 2026