Skip to main content

Webhook Events

This is the complete reference for all webhook events fired by Stable Genius.

Event Envelope

Every webhook event shares this envelope structure:

Payment Intent Events

payment_intent.confirmed

Fired when USDC is received and confirmed on-chain for a payment intent.

payment_intent.expired

Fired when a payment intent expires without receiving payment.

payment_intent.cancelled

Fired when an integrator cancels a payment intent.

Transaction Events

transaction.created

Fired when any USDC transfer is detected at a merchant’s payment address, even if not tied to an active payment intent. Use this as a catch-all for incoming payments.
payment_intent_id may be null if the transaction wasn’t associated with a specific payment intent (e.g., a direct transfer to the merchant’s address).

Settlement Events

settlement.completed

Fired when a merchant’s funds are successfully sent to their bank account.

settlement.failed

Fired when an ACH transfer to a merchant’s bank fails (e.g., invalid account, NSF return).