customer-updated

Webhook to notify when a customer is updated.
Changes that only affect customer metadata do not emit this webhook.

Payload
uuid
required
date-time
required

ISO 8601 timestamp in UTC timezone (must end with 'Z')

metadata
object

Customer metadata values keyed by metadata definition key.

uuid | null

The family this customer belongs to. Set through the customer-families endpoints, not here.

uuid | null

The member this customer reports to within its family. The family's root parent reports to no one.

string
required
string
address
object
deprecated

Deprecated: use billing_addresses. In responses, the first address in billing_addresses. In requests without billing_addresses, it creates or edits that first billing address in place; the customer's other billing addresses are left untouched.

shipping_address
object
deprecated

Deprecated: use shipping_addresses. In responses, the first address in shipping_addresses. In requests without shipping_addresses, it creates or edits that first shipping address in place; the customer's other shipping addresses are left untouched.

billing_addresses
array of objects | null

All of the customer's billing addresses, returned in a stable order; the first is the default for new contracts and invoices. On update the list is authoritative: addresses sent with an id are updated, addresses without an id are added, and stored addresses left out are removed. Removing an address that is used by a contract or an invoice that can still be edited is rejected with a 400 naming those documents. Omit to leave billing addresses unchanged; send an empty list to remove them all. Cannot be combined with address.

billing_addresses
shipping_addresses
array of objects | null

All of the customer's shipping addresses. Same rules as billing_addresses. Cannot be combined with shipping_address.

shipping_addresses
emails
array of objects

All of the customer's emails. On update, send the full list: emails with an id are kept or edited, emails without an id are added, and emails left out are removed (omitting emails, or sending an empty list, removes them all). A removed email is also removed from every contract email_selection; to change an email and keep it selected, send its id. Rejected: an id on create, an id that doesn't belong to this customer, the same id twice, or the same address and type twice (addresses are compared ignoring case and surrounding spaces).

emails
external_references
array of objects, unique
external_references
int32
≥ 0
boolean
Defaults to false

When set to true, invoices for this customer will be automatically sent via email on the invoice date.

boolean
Defaults to false

When set to true, an email will be sent to customers periodically if they have not paid an invoice.

boolean

Allows this customer to pay invoices online via Stripe, and must be true before auto-payment can be set up for them. Omit on create to leave online payments off; omit on update to keep the customer's current setting. Enabling it requires Stripe to be configured for at least one subsidiary.

fields
array of objects | null
fields
tax_ids
array of objects | null

The customer's tax IDs. Omit on create for no tax IDs. On update, omit to keep the current tax IDs, send an empty list to clear them, or send a list to replace them all. Adding or changing tax IDs requires the customer to have an address, and they are validated with the organization's tax provider when one is connected.

tax_ids
Headers
string
required

Signature of the webhook event. Computed using HMAC-SHA256 and AES encrypted with the configured webhook token. The contents of the body are prefixed with the timestamp and id before hashing.

date-time
required

Timestamp of the webhook event in ISO-8601 format

uuid
required

ID of the webhook event

string
required

Entity type of the webhook event

string
required

Event type of the webhook event

Response

LoadingLoading…