Hourly Amazon order log in Google Sheets
Every hour, new Amazon Seller Central orders flow into a shared Google Sheet so your ops team has one master log without logging into Seller Central.
Build a code workflow that runs every hour on a cron schedule and syncs new Amazon Seller Partner orders into a Google Sheet as an append-only master log for the ops team.
Step 1. Call Amazon Seller Partner Search Orders (Orders v2026-01-01), filtered by LastUpdatedAfter equal to the timestamp of the previous run. On the very first run, fall back to the last 24 hours. Pass the seller's MarketplaceIds. Page through all results using the paginationToken cursor until there are none left.
Step 2. For each order returned, extract these fields in this exact column order: Amazon Order ID, Purchase Date, Last Update Date, Order Status, Fulfillment Channel, Marketplace ID, Sales Channel, Item Count (sum of NumberOfItemsShipped and NumberOfItemsUnshipped), Order Total Amount, Order Total Currency, Shipping City, Shipping State, Shipping Country.
Step 3. Before writing, deduplicate against the destination sheet. Read the Amazon Order ID column from the most recent rows of the target tab and drop any order from the batch whose ID is already present. This makes the workflow safe to re-run after a failure without creating duplicate rows.
Step 4. Call Google Sheets Append Values once with all of the remaining new rows batched together, targeting the configured spreadsheet ID and tab. Use valueInputOption USER_ENTERED so dates and numbers render correctly in the sheet, and keep the column order from Step 2.
Step 5. Persist the new high-water mark (the maximum LastUpdateDate from this batch, or the run start time if the batch was empty) so the next hourly run picks up exactly where this one stopped.
This is a deterministic CRUD pipeline. Every step is fixed: list, transform to a known column order, dedupe, append. No LLM reasoning, no branching judgement, no AI nodes. Use code nodes throughout.
Inputs the workflow should expose as configuration: the destination Google spreadsheet ID, the destination tab name, the list of MarketplaceIds to include, and (optionally) an order status filter.
Additional information
What does this prompt do?
- Every hour, pulls any new or updated Amazon Seller Central orders into a shared Google Sheet.
- Captures the fields ops actually wants: order ID, purchase date, status, marketplace, fulfillment channel, totals, and ship-to location.
- Appends only brand-new orders and skips anything already in the sheet, so re-runs never double-write a row.
- Replaces Seller Central tab-juggling with one append-only log everyone on the team can open.
What do I need to use this?
- An Amazon Seller Central account with Seller Partner API access enabled.
- A Google account with edit access to the destination spreadsheet.
- The Google Sheet ID and tab name where new order rows should land.
How can I customize it?
- Change the schedule (every 15 minutes, every 4 hours, weekdays only, business hours only).
- Add or remove columns so the row layout matches what your ops team already tracks.
- Filter to specific marketplaces, order statuses, or fulfillment channels (for example, only shipped FBA orders in the US).
Frequently asked questions
Will this work across multiple Amazon marketplaces?
What stops the same order from being written twice if the job runs again?
Can I include buyer name or shipping address details?
How quickly will a new order show up in the sheet?
Do I need to pre-create the header row?
Stop logging into Seller Central just to check today's orders.
Connect Amazon Seller Partner and Google Sheets once, and Geni keeps your hourly order log refreshed automatically.