Skip to content

Commit d70cbd0

Browse files
authored
Merge pull request #129 from synonymdev/feat/fund-addr-script
Feat/fund addr script
2 parents a58697a + 6dc45a3 commit d70cbd0

2 files changed

Lines changed: 52 additions & 206 deletions

File tree

scripts/fund-address.sh

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
#!/bin/bash
2+
#
3+
# Fund a regtest address via Blocktank API
4+
#
5+
# Usage:
6+
# ./scripts/fund-address.sh <address> [amount_sats]
7+
#
8+
# Examples:
9+
# ./scripts/fund-address.sh bcrt1q... # deposits default amount (100k sats)
10+
# ./scripts/fund-address.sh bcrt1q... 50000 # deposits 50000 sats
11+
# ./scripts/fund-address.sh bitcoin:bcrt1q... # BIP21 URI (strips prefix)
12+
# ./scripts/fund-address.sh "bitcoin:bcrt1q...?amount=0.001" # BIP21 URI with params
13+
#
14+
15+
set -e
16+
17+
ADDRESS="$1"
18+
19+
# Strip BIP21 "bitcoin:" prefix and query params if present
20+
ADDRESS="${ADDRESS#bitcoin:}"
21+
ADDRESS="${ADDRESS%%\?*}"
22+
AMOUNT_SAT="$2"
23+
BLOCKTANK_URL="${BLOCKTANK_URL:-https://api.stag0.blocktank.to/blocktank/api/v2}"
24+
ENDPOINT="${BLOCKTANK_URL}/regtest/chain/deposit"
25+
26+
if [ -z "$ADDRESS" ]; then
27+
echo "Usage: $0 <address> [amount_sats]"
28+
exit 1
29+
fi
30+
31+
if [ -n "$AMOUNT_SAT" ]; then
32+
BODY="{\"address\": \"${ADDRESS}\", \"amountSat\": ${AMOUNT_SAT}}"
33+
echo "→ Depositing ${AMOUNT_SAT} sats to ${ADDRESS}..."
34+
else
35+
BODY="{\"address\": \"${ADDRESS}\"}"
36+
echo "→ Depositing to ${ADDRESS} (default amount)..."
37+
fi
38+
39+
RESPONSE=$(curl -s -w "\n%{http_code}" -X POST "$ENDPOINT" \
40+
-H "Content-Type: application/json" \
41+
-d "$BODY")
42+
43+
HTTP_CODE=$(echo "$RESPONSE" | tail -n1)
44+
TXID=$(echo "$RESPONSE" | sed '$d')
45+
46+
if [ "$HTTP_CODE" -ge 200 ] && [ "$HTTP_CODE" -lt 300 ]; then
47+
echo "✓ txid: ${TXID}"
48+
else
49+
echo "✗ Failed to deposit: HTTP $HTTP_CODE"
50+
echo "$TXID"
51+
exit 1
52+
fi

scripts/send-funds.js

Lines changed: 0 additions & 206 deletions
This file was deleted.

0 commit comments

Comments
 (0)