Skip to main content
1

Create your webhook endpoint

Either create your own endpoint or use the Svix Playground for rapid testing.Once you have an endpoint, register it via API or the web dashboard:
2

List available events and subscribe

3

Get validation key

The validation key is used to verify that webhook messages originate from Anchorage Digital. Find it on the web dashboard or via API.Sandbox validation key:
c14b7f3da18abb17b7304f925a68b18c1ea0dad6663b6b54cb67a737ecb77cd0
4

Trigger an event

To test in sandbox, send testnet assets to a wallet, or attempt a withdrawal or transfer via API or the iOS app.For a deposit event:
  1. Generate a new wallet address for BTC Signet (BTC_S) via Postman or the API reference.
  2. Use the BTC Signet Faucet to send testnet BTC to that address.
5

Receive the webhook message

Once the event fires, your endpoint will receive a message like the following:
{
  "payload": "eyJ0cmFuc2FjdGlvbklkIjoiNjE4Y2JkNTVlNzE2ZmFlMGVkODNjYTcyOWM4MDI2NmEifQ==",
  "timestamp": 1729112450,
  "message_id": "aa2dbc06-1665-44c0-bb8e-d2b0ad15a564",
  "event_type": "deposit.pending-attribution"
}
6

Validate the message signature

Verify the webhook message is from Anchorage Digital using the validation key and the API signature header.You can validate manually or use an open-source tool:Ed25519 Signature Tool
FieldValue
AlgorithmBase64
Message encodingText (UTF-8)
MessagePaste the raw message response
Key encodingHex
Seed (private key)Leave blank
Public keyValidation key
SignaturePaste the Api-Signature header value
7

Decode the payload

The payload field in the response body is Base64-encoded. Decode it to retrieve the event data.Use a Base64 decode tool — paste the payload value into the decode input.
8

Fetch additional details with the transaction ID

Use the decoded transactionId (or customerId for KYC events) to fetch full details from the API: