Skip to content

Latest commit

 

History

History
140 lines (96 loc) · 3.28 KB

File metadata and controls

140 lines (96 loc) · 3.28 KB

Wallet Setup Guide

Wallets must be created inside Docker containers to avoid changes on the host system.

Prerequisites

The backend Docker image includes:

  • Bitcoin Core CLI v31.0.0
  • Litecoin Core CLI v0.21.4
  • Solana CLI v1.18.25

Tatum.io RPC Configuration

Since we use Tatum.io free tier (testnet/devnet), wallets are managed via their API:

API Key: t-69d3352674917a27eae79ef1-59b72b2e09314777b0c96273 (Testnet & Deactivated)


Bitcoin Testnet Wallet

Using Bitcoin CLI with Tatum

The CLI cannot directly connect to Tatum.io (it requires JSON-RPC authentication). Instead, use Tatum API to generate HD wallet:

# Inside backend container
docker exec -it crypto-processing-services-backend-1 bash

Generate Wallet via Tatum API

# Create HD Wallet
curl -X GET https://api.tatum.io/v3/bitcoin/wallet \
  -H "x-api-key: t-69d3352674917a27eae79ef1-59b72b2e09314777b0c96273"

# Generate deposit address from xpub
curl --request GET \
     --url https://api.tatum.io/v3/bitcoin/address/xpub/0 \
     --header 'accept: application/json' \
     --header 'x-api-key: t-69d3352674917a27eae79ef1-59b72b2e09314777b0c96273'

Local bitcoind (Alternative)

# Start bitcoind on testnet
bitcoind -testnet -rpcuser=user -rpcpassword=pass -rpcport=18332

# Create wallet
bitcoin-cli -testnet -rpcuser=user -rpcpassword=pass -rpcport=18332 createwallet "main_wallet"

# Get address
bitcoin-cli -testnet -rpcuser=user -rpcpassword=pass -rpcport=18332 getnewaddress "payment_addresses"

Litecoin Testnet Wallet

Using Tatum API

# Create HD Wallet
curl -X GET https://api.tatum.io/v3/litecoin/wallet \
  -H "x-api-key: t-69d3352674917a27eae79ef1-59b72b2e09314777b0c96273"

# Generate deposit address
curl --request GET \
     --url https://api.tatum.io/v3/litecoin/address/xpub/0 \
     --header 'accept: application/json' \
     --header 'x-api-key: t-69d3352674917a27eae79ef1-59b72b2e09314777b0c96273'

Solana Devnet Wallet

Using Tatum API

# Create HD Wallet
curl -X GET https://api.tatum.io/v3/solana/wallet \
  -H "x-api-key: t-69d3352674917a27eae79ef1-59b72b2e09314777b0c96273"

Using Solana CLI

# Inside backend container
docker exec -it crypto-processing-services-backend-1 bash

# Generate new keypair
solana-keygen new -o /tmp/solana_wallet.json

# Get public key (this is your wallet address)
solana-keygen pubkey /tmp/solana_wallet.json

# Set devnet RPC
export PATH="/usr/local/bin:$PATH"
solana config set --url devnet

# Check balance
solana balance

# Airdrop for testing (devnet only)
solana airdrop 1

Environment Variables

After generating wallet addresses, set these in your environment:

# Bitcoin (testnet)
BTC_WALLET_ADDRESS=mzBc2HHNvS6REr8mTXUNRQPRs1EABgKf5r

# Litecoin (testnet)
LTC_WALLET_ADDRESS=nzN5jRS1CzK9VGBPQeY8G4ueC4Ybp2Ht2b

# Solana (devnet)
SOL_WALLET_ADDRESS=7aWgxBhMRuCjfQ9MgR9w7bS3TkZEZGVa3mRD4xA7LVe8

Verify Installation

# Check all CLI tools work
docker run --rm crypto-backend-test bash -c "bitcoin-cli -version && litecoin-cli -version && solana --version"