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:
- API: Create a webhook endpoint — use the
urlfield to register the endpoint. - Web dashboard: Create webhooks
2
List available events and subscribe
- API: List webhook event types
- API: Create webhook subscriptions — use the
endpointIdto subscribe to any or all event types. - Web dashboard: Select events
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:
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:
- Generate a new wallet address for BTC Signet (
BTC_S) via Postman or the API reference. - 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:
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 toolThe
Api-Signature header is hex-encoded. Decode it to raw bytes before verifying.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:- List transactions
- (RIA only) Get KYC onboarding status