Skip to main content
WEBHOOK
setup_intent.succeeded
{
  "id": "msg_xxxxxxxxxxxxxxxxxxxxxxxx",
  "api_version": "v1",
  "timestamp": "2025-01-01T00:00:00.000Z",
  "type": "setup_intent.succeeded",
  "data": {
    "id": "sint_xxxxxxxxxxxxx",
    "status": "processing",
    "created_at": "2023-12-01T05:00:00.401Z",
    "error_message": "<string>",
    "company": {
      "id": "biz_xxxxxxxxxxxxxx"
    },
    "checkout_configuration": {
      "id": "ch_xxxxxxxxxxxxxxx"
    },
    "member": {
      "id": "<string>",
      "user": {
        "id": "<string>",
        "email": "<string>",
        "name": "<string>",
        "username": "<string>"
      }
    },
    "payment_method": {
      "id": "payt_xxxxxxxxxxxxx",
      "created_at": "2023-12-01T05:00:00.401Z",
      "payment_method_type": "acss_debit",
      "card": {
        "brand": "mastercard",
        "last4": "<string>",
        "exp_month": 42,
        "exp_year": 42
      }
    },
    "metadata": {}
  }
}

Headers

webhook-signature
string
required

The signature of the webhook request with the webhook version prepended

Example:

"v1,BASE64ENCODEDSIGNATURE"

webhook-timestamp
string
required

The timestamp in seconds since the Unix epoch that the webhook was sent at on the server

Example:

"1727606400"

Body

application/json
id
string
required

A unique ID for every single webhook request

Example:

"msg_xxxxxxxxxxxxxxxxxxxxxxxx"

api_version
string
required

The API version for this webhook

Allowed value: "v1"
Example:

"v1"

timestamp
string<date-time>
required

The timestamp in ISO 8601 format that the webhook was sent at on the server

Example:

"2025-01-01T00:00:00.000Z"

type
string
required

The webhook event type

Allowed value: "setup_intent.succeeded"
Example:

"setup_intent.succeeded"

data
object
required

An object representing a setup intent, which is a flow for allowing a customer to add a payment method to their account without making a purchase.

Response

200

Return a 200 status to indicate that the data was received successfully