Next Restaurant 6.1.0: move your data in, run payroll, and connect other systems Next Inventory 6.2.0: a REST API and webhooks for your other systems Next DB 6.1: Auto-Updating Tables, Printing, Phone Layout and SEO Next Task 6.0.0: a task manager for Joomla Next Inventory 6.1.1: smoother Check Out, no more list limits, and much faster PHP2Shell: Is Your Joomla Site Safe? What to Do Today Introducing Next Boards: Kanban project and task boards for Joomla Building the Future of Joomla Extensions
NextSoftware

Import data

Bring your menu, staff, customers and sales history over from another POS (Toast, Square, Clover or Lightspeed), from another Next Restaurant site, or from any spreadsheet. Nothing is written until you have seen a preview, and every import can be rolled back.

Open it at Configuration → Import data.


How an import works

The wizard asks one thing per screen:

  1. What: menu, employees, customers or sales history.
  2. From where: Next Restaurant, Toast, Square, Clover, Lightspeed, or Another system or a spreadsheet.
  3. Which export, when a vendor has more than one (Toast's menu can come from its JSON export or from a report, for example). A vendor with a single export skips this step.
  4. Upload. The screen says where to find the file in that vendor's back office, and what file name to expect. CSV, Excel (.xlsx) and Toast's menu JSON are read, up to 25 MB each; several files can go up together.
  5. Match columns. Columns the preset recognised are folded away; anything it could not match is listed for you to pick. A required field with no column blocks the preview and says which one.
  6. Review. Every record is shown with what will happen to it (New, Update, Skip or Problem, with the reason). Click a total to see only those rows. Then import.

A summary bar at the top lets you jump back to any earlier choice without starting over.


Supported exports

Each vendor export is a preset: a description of that file's columns. Every preset says how sure it is, because not every vendor publishes its export format.

Badge Meaning
Verified Built from the vendor's own documentation of the file.
Partial Documented, but not every column is described.
Unverified The vendor publishes no column list; the preset follows real exports. Check the matched columns before importing.
Source Menu Employees Customers Sales history
Next Restaurant Full menu Staff Customers Sales history
Toast MenuExport JSON (recommended), or AllItemsReport.csv TimeEntries.csv CheckDetails.csv OrderDetails, ItemSelectionDetails, ModifiersSelectionDetails and PaymentDetails CSVs from the nightly Data Export
Square Item library (.xlsx or .csv) — Customer directory Item Detail CSV
Clover inventory.xlsx — Customer list —
Lightspeed L-Series Products Users — Receipts, Receipt Items and Payments
Lightspeed K-Series Item list — Customer list —

Another system or a spreadsheet (details) reads any CSV or Excel file and matches its columns by meaning ("Item name", "Product", "Title" all go to the item name). Once the columns are right you can save the matching as your own preset, and it is listed with the others next time.

Each source has its own page under Integrations → Import data, with exactly where to download every file in that system's back office.


What each kind of import does

Categories and sub-categories, items, prices, SKU and PLU codes, and option groups with their options. Rows for the same item in different sizes (Square's variations) become one item with sizes. An item hidden in the source is imported hidden.

Employees

One staff member per person, however many rows they have. Toast's TimeEntries file has a row per shift; the latest row gives the job title and wage. Job titles from the source are matched to your roles on the Match step. No PIN is set: each person chooses their own at a terminal.

Lightspeed accounts of type Customer or API are not staff and are skipped.

Customers

One customer per person, matched by email, then phone number (digits only, so "(555) 010-2000" and "555-010-2000" are the same person), then the source's customer code. A customer already in Next Restaurant is skipped or updated, as you choose. Addresses, company and marketing consent come across when the export has them.

Sales history

Past orders with their lines, options and payments, for your reports and customer history. Choose the location the sales belong to: times in the files are read on that location's clock.

Sales history is a record, not a replay. Imported orders do not send anything to the kitchen, do not deduct stock, and do not trigger webhooks or notifications. They are written already completed (or cancelled, when the source voided them).

Each order keeps the source's own number with a prefix: TST- for Toast, SQR- Square, LSP- Lightspeed, CLV- Clover. Importing the same days again finds them already there and skips them, so overlapping exports are safe.

Square's Item Detail export has no separate order file: each Transaction ID becomes one order, built from its item rows, with tax added to the total and the Dining Option (For Here / To Go) setting the channel. That export carries no payments.


When a record already exists

Choose on the Match step:

  • Skip it: keep what you have. Safest for a second run.
  • Update it: overwrite it with the values in the file.
  • Add another: create a second copy alongside it.

Sales are never updated: an order already imported is always skipped.


History and rolling back

Configuration → Import data → History lists every import with its source, files and result.

Roll back deletes everything that import created and puts back everything it changed. If something has used an imported record since (an item that has been sold, for example), that record is kept and listed with the reason, and the rest is rolled back.


Moving between two Next Restaurant sites

Export with the Next Restaurant layout on the first site (Export data), then import the file on the second with the Next Restaurant source. Every column matches, order numbers and customer codes are kept, and importing the same file twice changes nothing.


Good to know

  • Who can import: anyone whose role may manage settings.
  • Old Excel files (.xls) are refused with a message: save the file as .xlsx or .csv first.
  • Uploaded files are kept in a private folder that cannot be reached from the web, and deleted after a day.
  • Large files are imported in batches, so a long import survives a slow connection and picks up where it stopped.
  • The Import app can be switched off in the Apps page if you never need it.

See also

All Extensions