POST with a JSON body in a stable envelope. The envelope carries delivery and routing metadata; the data object carries the event itself.
The envelope
The envelope is shared by every event type; each event’sdata schema and example payloads live in the catalog below.
Fields
Example
Example delivery (transfer.received)
Payload versioning
schema_version is pinned per subscription: a subscription is pinned to the version current at creation and keeps receiving that version’s payloads for its lifetime.
- Within a version, evolution is additive. New fields may be added to the envelope or the
dataobject. Existing fields keep their names, types, and meaning. Your parser must tolerate unknown fields rather than reject them. - Breaking changes ship as a new version. If a field is ever renamed, removed, or has its type changed, that arrives as a new
schema_version. Existing subscriptions stay on their pinned version until you explicitly opt in.
Event catalog
One entry per event type: what fires it, thedata schema, and example payloads.
transfer.received
Fired once per incoming transfer to a watched address, when WalletSuite first observes it on-chain. Thedata object:
Example payloads
Four completetransfer.received payloads - one per asset shape.
- Ethereum - native ETH
- Ethereum - ERC-20 (USDC)
- Tron - native TRX
- Tron - TRC-20 (USDT)
ETH native transfer
Address encodings
from, to, and asset_contract use each chain’s canonical address encoding, consistent with the rest of the WalletSuite API. On input - for example, when you register a subscription - common representations of an address are accepted and normalized to that canonical form.
Event kinds vs event types
Two different concepts share similar names:eventKinds is a subscribe-time filter, not a delivered field. Subscribing with ["INCOMING_NATIVE"] means you only receive native-coin transfers; ["INCOMING_FUNGIBLE"] means only token transfers; both means both. Either way, you distinguish native from token deliveries by reading asset_type on the payload, not by inspecting eventKinds (which is never sent). See Quickstart for creating subscriptions.
Related
Quickstart
Create a subscription, provision a signing secret, and receive your first event.
Verify Signatures
Validate the Standard Webhooks signature against the raw request body.
Delivery & Retries
Acknowledgement window, retry schedule, ordering, and at-least-once semantics.
Troubleshooting
When a payload fails to verify or never arrives - resolution checklists and FAQ.
Best Practices
Idempotency, async processing, and hardening your endpoint for production.