Endpoint
Authorization: Bearer <token> — obtain a token from Generate Token.
Request parameters
The fully-qualified HTTPS URL where Shogun will POST event payloads. Must use
https://. Shogun will reject plain http:// endpoints.Example: https://yourapp.com/webhooks/shogunThe event types you want to receive. Omit to receive all events, or specify one or more of:
| Value | Triggered when |
|---|---|
COLLECTION_SUCCESS | A payment is received on one of your virtual or current accounts |
TRANSFER_SUCCESS | An outbound transfer completes successfully |
TRANSFER_FAILED | An outbound transfer is rejected or times out |
Optional. A list of IP addresses from which Shogun should accept webhook delivery acknowledgements. Leave empty to allow any source.
Example request
Response
201 Created
true on success."00" on success.Human-readable result message.
The created webhook configuration.
Verifying webhook signatures
Every webhook Shogun delivers includes anX-Shogun-Signature header. The value is the HMAC-SHA256 digest of the raw request body, prefixed with sha256= and computed using your webhook secret.
Always verify this signature before you process the payload. This prevents your server from acting on spoofed requests from third parties.
Your webhook secret is the client_secret associated with your API client, available from Dashboard → Security → API Client.
Verification algorithm
- Read the raw request body as bytes — do not parse it first.
- Compute
HMAC-SHA256(secret, raw_body)and hex-encode the digest. - Prepend
sha256=to produce the expected signature. - Compare with the
X-Shogun-Signatureheader using a constant-time comparison function to avoid timing attacks.