Skip to content
agentsub
Esc
↑↓navigate↵open⌘Jpreview

Stripe webhook receiver (inbound only)

Inbound Stripe webhook endpoint. Requires a valid Stripe-Signature header; the body is verified against the configured secret and must resolve to a signed owner (clerk:...). Unrecognized/unverifiable events return 200 {received: true} without side effects. The gateway does NOT send outbound webhooks. Body limit 262,144 bytes.

POST/v1/payments/stripe/webhook
Header parameters
Stripe-Signaturestringrequired
Request body
requiredapplication/json
object
Responses
200

Event accepted

receivedboolean
400

stripe_signature_required or invalid_owner

codestringrequired
Allowed:owner_requiredagent_mismatchidempotency_requiredinvalid_inputstripe_signature_requiredpayment_unavailable
statusintegerrequired
413

invalid_input (body too large)

codestringrequired
Allowed:owner_requiredagent_mismatchidempotency_requiredinvalid_inputstripe_signature_requiredpayment_unavailable
statusintegerrequired
503

payment_unavailable

codestringrequired
Allowed:owner_requiredagent_mismatchidempotency_requiredinvalid_inputstripe_signature_requiredpayment_unavailable
statusintegerrequired
Request
curl -X POST 'https://api.agentsub.dev/v1/payments/stripe/webhook' \
  -H 'Stripe-Signature: string' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{}'
Response
{
  "received": true
}