Back to OptimoRoute in Excel
SheetXAI logo
OptimoRoute logo
OptimoRoute · Excel Guide

Bulk Upload Delivery Orders Into OptimoRoute From a Excel workbook

2026-05-14
5 min read

The Scenario

You are a logistics coordinator at a food delivery company. It is 4:15 PM Thursday, and tomorrow's delivery batch — 300 orders, each with an order number, customer name, address, and time window — has been sitting in your Excel workbook since noon. The route planning window closes at 6 PM. If the orders are not in OptimoRoute before then, drivers go out tomorrow without optimized routes.

The bad version:

  • You save the Excel sheet as a CSV and open OptimoRoute's import screen, then realize the address column includes apartment numbers in a format OptimoRoute rejects — 20 minutes of cleanup before you can re-export.
  • You upload the cleaned CSV and get a report back with 14 failures: addresses that parsed incorrectly. You find them in the workbook, fix them, and re-upload just those rows.
  • It is 5:50 PM when the last batch goes through. You have no time to verify all 300 landed correctly before the planning window closes.

The route plan was almost late because the data transfer was not.

The Easy Way: One Prompt in SheetXAI

SheetXAI is an AI agent that lives inside your Excel workbook. It reads the data directly and uses its built-in OptimoRoute integration to create orders in bulk — no CSV round-trip, no import screen, no format negotiation.

Open the SheetXAI sidebar and ask:

For each row in columns A through E — order number, customer name, address, time window start, time window end — bulk-create OptimoRoute orders for all rows and write success or failure status into column F.

What You Get

  • Every row in your workbook gets submitted to OptimoRoute in a single batch operation.
  • Column F is written with "created" or the specific error message for each row.
  • Rows with blank order numbers in column A are automatically skipped.
  • The full batch runs in under a minute for 300 rows.

What If the Data Is Not Quite Ready

The addresses include apartment numbers in a format OptimoRoute rejects

For each row in Sheet1, combine the street address in column B with the unit in column C into a single formatted address before creating the OptimoRoute order — write the combined address into column G and the order status into column H.

Some rows are missing a time window start

Upload all rows from Sheet1 where column D is not blank — use order number from column A, address from column B, time window start from column D, and time window end from column E — write created or failed into column F and skip rows missing a time window.

Orders are split across two worksheets for morning and afternoon windows

From both the 'AM Orders' and 'PM Orders' worksheets, combine all rows and bulk-create OptimoRoute orders — use order number from column A and address from column B in each sheet — write the result status back into column F of the respective worksheet.

The addresses need cleaning, the time windows need normalization, and then the orders need uploading

For each row in the 'Raw Orders' worksheet, trim extra spaces from the address in column B, convert time window start and end in columns D and E from 12-hour to 24-hour format, then create the OptimoRoute order — write the cleaned address into column G and the upload status into column H, and flag any row where the address looks incomplete.

When the data needs work before uploading, ask for the cleanup and the upload together. SheetXAI handles both without a separate prep step.

Try It

Get the 7-day free trial of SheetXAI and open the Excel workbook where your delivery batch lives, then ask it to upload every row to OptimoRoute and write the result back in. If you handle multi-day planning, also see how to export completed route data and how to trigger route optimization after upload.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more