KADDEX Exchange
Open trading
KADDEX documentation

Native KAD settlement for Kadikama Exchange

KADDEX activates on Kadikama mainnet at block 16,000. It adds owner-controlled KAD vaults and native swap rules while the exchange keeps the familiar KAD / USDT order interface.

Activation at block 16,000

KADDEX is a Kadikama consensus upgrade included in Kadikama Core 1.0.2. Mainnet enforces the new witness-v2 KADDEX spending rules beginning at block 16,000.

  • The trading terminal remains locked until the network reaches the activation block.
  • Existing KAD balances, addresses, transactions and previously mined coins are not changed.
  • KADDEX deposits cannot be created on mainnet before activation.
  • Users who want KADDEX deposits or withdrawals must use Kadikama Core 1.0.2 or later.
  • Miners, pools and services that validate KADDEX transactions should upgrade before block 16,000.

The counter uses the live Kadikama block height. Block arrival is probabilistic, so the remaining block count is more reliable than a clock-based estimate.

How KADDEX works

KADDEX separates blockchain settlement from fast order matching. KAD enters through a native owner-controlled vault and USDT enters through the Ethereum settlement contract. Once deposits are confirmed and credited, compatible limit orders can be matched without waiting for a new blockchain transaction for every fill.

1Connect wallets
2Deposit
3Trade
4Withdraw

The exchange coordinates the order book, accounting and transaction metadata. It does not receive the KAD private key that controls an owner vault.

Connect Web3 and Kadikama Qt

  1. Connect a compatible Web3 wallet. This identifies the Ethereum address used for USDT.
  2. Open Connect Kadikama Qt and approve the short-lived request in Kadikama Core 1.0.2.
  3. Qt verifies the exchange origin, Web3 account and request expiry before signing.
  4. The browser creates a non-extractable trading key for order commands. This is not a KAD or Ethereum private key.

Connecting either wallet does not move funds. Never enter a seed phrase or private key on the website.

Deposit KAD into an owner-controlled vault

  1. Open Funds, choose Deposit from Qt and enter the KAD amount.
  2. The website creates a ten-minute request linked to the verified Web3 account.
  3. Kadikama Qt generates a new owner key locally and derives a native witness-v2 KADDEX vault.
  4. Review the amount, owner address, vault address and network fee in Qt, then confirm.
  5. Qt registers the public transaction metadata and broadcasts the funding transaction.
  6. The deposit becomes available after two Kadikama confirmations.

The owner private key remains in the Qt wallet. The exchange receives the transaction ID, output index, amount, owner public key and vault address, but not the private key.

Place, fill and cancel orders

  1. Select Buy KAD or Sell KAD.
  2. Enter the limit price in USDT per KAD and the KAD amount.
  3. The authorized browser key signs the exact command and account nonce.
  4. A sell order reserves KAD; a buy order reserves the required USDT.
  5. Compatible orders fill at the available price. A partial fill leaves only the unfilled remainder open.
  6. Cancelling returns the unfilled amount from Locked to Available.

Order placement and fills use credited balances, so they are faster than deposits and withdrawals. Blockchain confirmations are still required when assets enter or leave settlement.

Withdraw KAD with the owner key

  1. Choose an active KADDEX deposit in Funds and enter either the full or a partial withdrawal amount.
  2. Open the request in the same Kadikama Qt wallet that created the deposit.
  3. Qt verifies the funding output, amount and locally stored owner public key.
  4. Qt creates the withdrawal to a fresh address in the same wallet and signs it locally with SIGHASH_ALL.
  5. The exchange validates the complete signed transaction before it is broadcast.

A partial withdrawal sends the requested amount to the wallet and returns the remainder to the same owner-controlled KADDEX vault. The fixed KADDEX withdrawal fee is 0.00001000 KAD, and a non-zero remainder must be at least 0.01 KAD.

The website cannot replace the signed destination or amount without invalidating the Qt signature.

USDT settlement

KADDEX adds native rules to the Kadikama side. USDT remains an ERC-20 asset on Ethereum Mainnet.

  • A USDT deposit may require an exact token approval followed by the settlement-contract transaction.
  • ETH is required for Ethereum gas.
  • A USDT withdrawal is authorized for the registered Web3 address and claimed through that wallet.
  • Do not send tokens from another network or send unsupported assets to the contract.

Security model

  • KAD wallet keys and seed phrases remain in Kadikama Qt.
  • Web3 private keys remain in the selected Web3 wallet.
  • A native KADDEX vault commits to its owner public key and requires a valid owner signature to spend.
  • SIGHASH_ALL binds every signed KAD withdrawal to its complete inputs and outputs.
  • The browser trading key can authorize account commands, but it is not the owner key of a KAD vault.
  • The website and matcher remain availability dependencies for the normal trading interface and coordinated order book.

Keep a verified backup of the Qt wallet that created each KADDEX deposit. Losing that wallet means losing the owner key required to spend the vault.

Native consensus primitives

  • Vault: native SegWit witness version 2 with a 32-byte, domain-separated commitment to a compressed owner public key.
  • Owner spend: the witness contains the owner signature and compressed public key.
  • Swap claim: requires the buyer signature and the 32-byte preimage matching the committed payment hash.
  • Swap refund: requires the seller signature after the encoded block-height locktime.
  • Activation: consensus flag SCRIPT_VERIFY_KADDEX is enforced at mainnet height 16,000.

Before activation, legacy nodes see witness version 2 as an unknown witness program. After activation, upgraded nodes enforce the KADDEX owner, claim and refund rules.

Troubleshooting

  • If Trade is blurred, check the live counter. Mainnet trading unlocks at block 16,000.
  • If Qt rejects a request, verify Kadikama Core 1.0.2, full synchronization, the correct website and a request age below ten minutes.
  • If a KAD deposit is pending, wait for two Kadikama confirmations.
  • If a KAD withdrawal is unavailable, ensure the deposit belongs to the current Qt wallet and is not locked by an open order.
  • For a partial withdrawal, leave either zero or at least 0.01 KAD after the 0.00001000 KAD fee.
  • If a USDT action fails, confirm Ethereum Mainnet, the correct USDT token and enough ETH for gas.