Exchange Onboarding Guide#
This guide will help you add Concordium’s native token (CCD) to your cryptocurrency exchange.
Before you start, it is a good idea to read about the core concepts of the Concordium blockchain, particularly identities and accounts. The Concordium Whitepaper provides a comprehensive overview of these concepts.
Identity creation#
Concordium requires identity verification before account creation, which is a fundamental part of its regulatory compliance framework.
Mainnet identity creation#
For Individual Identities:
You can use any of the Concordium wallets by following the documentation at Create an identity
For Company Identities:
Follow the documentation at Company Identity Creation
This process involves identity verification through Concordium’s approved identity providers
Testnet identity creation#
For Both Individual and Company Identities:
No formal verification is required
For individual identities, use any of the Concordium wallets
For company identities, follow the documentation at Company Identity Creation
Account creation#
Once you have a verified identity, you can create multiple accounts from it.
Up to 25 initial accounts can be created from a single identity
Accounts can be created using any Concordium wallet, follow the documentation at create an account for more information
Node setup#
Running your own node is essential for exchange integration.
Hardware requirements#
Before setting up a node, ensure your hardware meets the requirements for running a node.
Node distributions#
Node distributions for different platforms are available at the Downloads page.
Platform-specific setup instructions#
For custom node setups, contact Concordium Support.
Integration methods#
Concordium offers several methods for integrating with the blockchain:
SDKs#
You can use one of the official Concordium SDKs:
Rosetta API#
Concordium provides an adapter to expose the Rosetta API, which is useful for exchanges already supporting this standard.
gRPC V2 interface#
Concordium provides a gRPC V2 interface as well, details can be found in this documentation article.
Transactions#
Checking for incoming transactions#
Node Query Method
The most reliable method is to query your node directly
Transaction Logger
Alternatively, you can run a transaction logging service
This service logs transactions to a database where you can efficiently lookup the transaction for a specific account
Transfer CCD on withdrawal request#
FAQ#
Account aliases#
Q: Do we have to create a company identity for each account?
No, one identity can have multiple accounts. Once you have a verified identity object, you can generate as many accounts as you need from it. It should not be necessary for you to have several identities, one will suffice. For your users, the recommended setup is to use account aliases:
This means that you create one or more omnibus accounts and generate aliases/subaccounts for individual user transfers
Subaccounts share the same private key but have different addresses, making it easy to organize user deposits and withdrawals
Each account can have up to 2^24 aliases (approximately 16 million)
Transfer with MEMO#
Q: How can we include additional data with transactions?
Transaction confirmation#
Q: When is a transaction considered confirmed?
Concordium has explicit finalization:
Once a block is created, it usually takes 1-2 seconds to be finalized
Average block time is about 2 seconds
The node will report a transaction as finalized once it’s in a finalized block
Finalization is not based on the number of successor blocks
Getting testnet CCDs#
Q: How do I get CCDs for testing on testnet?
For individual accounts:
Request a CCD drop directly through the Concordium wallets
For company accounts:
$ curl -X PUT https://wallet-proxy.testnet.concordium.com/v0/testnetGTUDrop/YOUR_ACCOUNT_ADDRESS
Replace
YOUR_ACCOUNT_ADDRESS
with your account address. You can only request one CCD drop per account.
Additional support#
For specific help to integrate your exchange with the Concordium blockchain, contact support@concordium.software.
Please start your subject line with “Approved Exchange” to prioritize your support request.