Few visits missing Order confirmation payload | Community
Skip to main content
Level 3
March 17, 2026
Question

Few visits missing Order confirmation payload

  • March 17, 2026
  • 2 replies
  • 37 views

Team,

Due to front end issue(uncovered via CXM tool), for a few of our customers, just the order screen payload wasn’t dispatched, but it was success per back end system records. So, Adobe Analytics has scAdd,scView,scCheckout, custom event(billing info & order review), just s.purchase missing. 

 

Given s.Purchase missing no s.TransactionID too, and data source option is ruled out.

Now, I have those ECID & customer ID(evarX) for very sessions, via Bulk Data insertion API, can I do one ingestion for all those? and will I be able to normal report as if payloads came from browser or there any considerations to be aware of? Pls advise

@Jennifer_Dungan ​@amitvishvakarma ​@VishalKa5 ​@NicholeVargas ​@Darshil_Shah1 I see you have been very active lately, I’d really appreciate if you could look into this thread when possible. Thanks 

2 replies

Jennifer_Dungan
Community Advisor and Adobe Champion
Community Advisor and Adobe Champion
March 17, 2026

I have never used the Bulk Insert API, but in theory, if you set all the correct data (with all the correct user id mappings), you should be able to use that data normally. That’s kind of the point of the Data Insert, to map additional data into your Adobe data set to leverage.

 

However, making sure you have everything being passed is going to be a challenge.

 

If this was something I were trying to do, I would replicate data up until the Checkout event in my Dev/QA suite, then test the import there… 

 

I would check as many reports that use the data as possible to ensure that there is proper cohesion. And I would even try some non-standard adhoc tests that might need to be run on this purchase info (for potential future use cases)

 

You may need to do a few runs at this to get everything stabilized, and each test should be done with a new “user” and flow to ensure no cross contamination…  but the fact that you have data in your backend, and it sounds like you can properly identify each user in this scenario… you have the hardest part figured out.

 

Good Luck!

Level 3
March 17, 2026

Thanks ​@Jennifer_Dungan for acknowledging the post, and your thoughts. I have reproduced my own session in nonProd and done a sample ingestion and awaiting data refresh. Keep you posted on the outcome.

Jennifer_Dungan
Community Advisor and Adobe Champion
Community Advisor and Adobe Champion
March 17, 2026

I am looking forward to hearing the results! Keeping my fingers crossed for you.

 

If it works, maybe you could post a “Conversation” with your findings… I am sure someone else has or will find themselves in a similar situation, and that could be really helpful to share your journey.

AmitVishwakarma
Community Advisor
Community Advisor
March 19, 2026

Hi ​@AbhijithRa1 

You can absolutely fix this with Bulk Data Insertion API (BDIA) and have the orders behave like normal browser s.purchase hits, as long as you set things up carefully.

1. Yes, one ingestion for all missing orders

Prepare one (or a few) BDIA files, where each row = one "order confirmation" hit:

Minimum per row:

  • reportSuiteID = your existing suite
  • Visitor column = ECID (same ECID that those sessions used)
  • timestamp = real order time (ideally inside the original visit window)
  • pageName = e.g. Order Confirmation
  • events = purchase,<revenue event>
  • products = full AA products string for that order
  • purchaseID / transactionID = your order ID
  • eVarX = your customer ID
  • userAgent (and IP if you care about geo/device consistency)
  • Put all rows in a single CSV, sort by timestamp ascending, gzip it, and POST it to: .../aa/collect/v1/events (after optionally validating via /events/validate) https://experienceleague.adobe.com/en/docs/analytics/import/bulk-data-insert

2. Key prerequisites

Report suite must be timestamp-enabled

Use ECID so the purchase "joins" the right visit

  • Use the ECID visitor column in the BDIA file.
  • If timestamp falls in the original visit, Analytics will treat this as just another hit for that visitor, so eVar persistence and Marketing Channels work as expected.

Follow BDIA file rules

  • CSV, GZip, ≤100 MB per file.
  • Sorted by timestamp so visit / attribution logic is deterministic.
  • Required columns: reportSuiteID, visitor ID, timestamp, pageName or link equivalent, userAgent.

3. How this shows up in reporting

If you follow the above:

  • Orders / Revenue / Units: will populate just like real-time browser s.purchase calls.
  • Attribution (eVars, Marketing Channels, etc.): if the timestamp sits in the same visit and ECID matches, they will attribute as if the purchase hit had been fired originally.
  • Pathing / Fallout / Flow: you'll see an extra "Order Confirmation" hit at the end of those journeys for the impacted visitors.

Limitations you should expect:

  • You won't retro-change old exports that were taken before the backfill.
  • If you don't send realistic userAgent / IP, geo and device breakdowns may differ slightly from the original session.

4. Checklist

  • Confirm suite is Timestamp Optional/Required.
  • Build a BDIA CSV with one row per missing order containing:
    • reportSuiteID, ECID visitor column, timestamp, pageName, events, products, purchaseID, your eVarX customer ID, userAgent.
  • Sort the file by timestamp, GZip it.
  • Call /aa/collect/v1/events/validate, fix any errors, then call /aa/collect/v1/events.
  • Validate in Workspace: Orders + Revenue for those order IDs and flows containing the new purchase hits.
Amit Vishwakarma - Adobe Commerce Champion 2025 | 16x Adobe certified | 4x Adobe SME
Level 3
March 19, 2026

thanks much ​@AmitVishwakarma I really appreciate your consideration of detailed note in educating the community. It appears our messages exchanged at the same time, I had attached my screenshot of my attempt outcome, in response to Jennifer. NO doubt, no answer could beat your in depth, cause & effect analogy on attribute level such as IP, timestamp & 1 order per row & CSV constraints. Good day