IntegrationsDelivery Reports

Delivery reports

A delivery report writes a CSV file per day to your own bucket, listing each event of the names you choose that a destination received, with its final status. Use it to reconcile deliveries with your own records: every order in your system against the Purchase events Meta, Google Ads or TikTok received, for example.

What a file contains

One row per event. An event that is retried is still one row, with its final status:

  • accepted: the destination accepted the event, on the first try or a retry;
  • failed: delivery has stopped. Retries are used up, the failure is one a retry cannot fix, or someone discarded the event from the dead-letter queue.

An event that is still being retried when a day’s file is written appears in the file for the day its final send happens. The day is the UTC date of that final send.

Choose the columns, in file order, from this list. None of them is personal data:

ColumnValue
transaction_idthe event’s transaction_id property
event_timewhen the event happened, Unix seconds
sent_atthe final send to the destination, Unix seconds
statusaccepted or failed
has_fbcwhether the event carried a Meta click ID (fbc)
valuethe event’s value property
currencythe event’s currency property
event_namethe event name, as your site sent it
event_idthe event ID
message_idDatafly Signal’s message ID

The values are taken from the event as your site sent it, before the destination’s blueprint maps it. You can rename any column’s header.

Set it up

  1. Add a Google Cloud Storage, Amazon S3 or Azure Blob Storage integration with the bucket the files should go to. It does not need to be on a pipeline: the report only uses its bucket and credentials, and its own folder prefix if it has one.
  2. Open the destination you want to report on, go to Settings, then Delivery reports, and click Add report.
  3. Give the report a name, list the event names (for example purchase), choose the bucket and optionally a folder, and pick the columns.

Each day’s file is written by 02:00 UTC the next day, as <folder>/<name>-YYYY-MM-DD.csv. If a run fails (for example the bucket’s credentials changed), the report shows the error and the next run tries again, so no day is skipped. Write again from writes the files again from a day you choose, up to a week back.