Skip to main content
Actions 8 and 9 send session-created and session-completed notifications. Both use the same session UUID, with separate delivery identifiers.
Completion means a transaction or recurring plan was attached to the session. It does not establish payment success. If the donor leaves before the receipt/session update, completion can be missing. See Webhook trigger details.

Envelope keys

Every data key

Conditional conversion fields depend on whether either attached record ID is present, not merely the event-name string. In the normal created journey neither is attached, so all three conversion keys are absent. The completed event includes all three and can have a null transaction ID or null plan ID. The effective UTM set comes from resolved request attribution when available, otherwise the stored URL; sources are selected as a whole set rather than merged field-by-field. Stored UTM values are truncated to 255 bytes. There is no channel, visit-expiry time, revenue, transaction status, currency, confirmation reference, Salesforce ID, or donor contact profile in these session payloads.

Created example — complete body

Completed example — complete body

This example uses the same session UUID and a different delivery UUID. Its transaction ID is a join key, not proof of success.
For a deferred recurring plan, the completion fields can instead be transaction_id: null, scheduled_donation_id: 8101, plus completed_at. Do not count that as collected revenue.