AWRA OpsHub Search

Bulk Import: Which Templates Actually Load

Thirteen templates download and eight of them import. Which is which, why the other five deliberately do not, and the fifty-row habit that saves you from correcting three thousand records by hand.

Integrations & Data Washingtone Aura 10 min read

Bulk import is the least interesting feature in any operations system and the one you will spend your first fortnight inside. It is also where vendor language is loosest — "full data import" usually means a spreadsheet template exists, which is not the same as an importer existing behind it. Here is the exact position, template by template, because you should be able to plan around it rather than discover it.

The thirteen templates, and which eight actually load

Download versus import

Template Downloads Imports
Items Yes Yes
Customers Yes Yes
Vendors Yes Yes
Warehouses Yes Yes
Locations Yes Yes
Assets Yes Yes
Asset custodians Yes Yes
Chart of accounts Yes Yes
Stock adjustments Yes No
Stock transfers Yes No
Requisition lines Yes No
RFQ lines Yes No
Opening balances Yes No

Built and maintained Configurable by you, not maintained by us Not built

Employees and attendance are separate from this set and have their own import, which does genuinely preview before it commits — the only place in the product where you see what a file will do before it does it.

Why the five are download-only, which is a decision rather than a backlog

Every one of the five touches a record with approval or posting rules behind it. A stock adjustment can require a second approver above a value threshold and posts to the ledger. A requisition routes to an approver. An RFQ goes out to suppliers. An opening balance would have to post a journal entry, and there is no manual journal entry anywhere in the product by design.

A bulk loader for any of those would have to either honour the rules — in which case importing three hundred adjustments raises three hundred approvals and you have not saved anyone anything — or bypass them, which quietly converts your controlled records into typed-in ones. The template exists because seeing the shape of the data is genuinely useful when you are planning; the importer does not exist because we would rather say so than ship the second option.

What this means for opening stock and opening balances

Opening stock arrives through a physical count entered as a count session, which is better practice than a load anyway — see opening stock balances at go-live. Opening financial balances cannot be loaded at all and have to arrive as real documents; that is worked through in chart of accounts and opening balances.

How an import behaves

What happens when you upload

File types accepted CSV, XLSX, XLS — up to 10 MB
Under 256 KB Parsed immediately; you get created / updated / skipped counts on screen
Over 256 KB Queued as a background job; you are notified when it finishes
A structurally broken row Stops the inline batch with the first error reported
Custom fields you have defined Appear as extra columns on that module's template automatically
Rollback None. Corrections are made to records.
What you never get A diff before it commits

The queue threshold matters operationally: a large item list will not block your browser, but it also will not tell you anything until the job finishes. Make sure a queue worker is actually running before you rely on this — a queued import with no worker is an import that never happens and never errors.

The fifty-row habit

Because there is no preview and no undo, the entire quality control of an import is a habit rather than a feature. It takes ten minutes and it is not optional.

Every file, every time

  • Copy the first fifty rows into a separate file and upload that.
  • Open five of the created records — not the list view, the records themselves.
  • Check the fields nobody looks at: unit of measure, category, the cost, the barcode. Names are almost always right; these are almost always where a mapping error hides.
  • Look at the skipped count. A skip is not an error message but it is a row that did not arrive, and if fifty rows produce eleven skips you have a systemic problem, not eleven bad rows.
  • Then upload the rest.

Load order, which is not arbitrary

The dependency chain

Load this Because

1. Warehouses Everything physical references a warehouse code

2. Locations A location row names a warehouse code that must already exist

3. Items Needs an inventory account; sits above stock and assets

4. Customers and vendors Independent of the above, so order between them does not matter

5. Asset custodians Referenced by asset rows through a custodian code

6. Assets References warehouse, location and custodian codes

7. Chart of accounts Independent, but do it before anything financial happens

A location file that fails on row one is almost always a warehouse code that has not been loaded yet. This single mistake accounts for more first-day support questions than everything else on this page combined.

The six ways files fail

  • A renamed heading. The importer looks for the template's exact column names and there is no mapping screen. A renamed column is not an error — it is a field that silently arrives empty.
  • Numbers stored as text. "1,200" with the comma is a string. Your old system's export will do this, and so will Excel if you let it.
  • Trailing spaces. "Cement " and "Cement" are two items and the difference is invisible on screen.
  • A reference to something not yet loaded — see the order above.
  • One heroic three-thousand-row file. A single bad row stops the batch and you have no efficient way to find which. Split it.
  • Ambiguous dates. Use the format the template shows rather than the one your spreadsheet defaults to.

Our take

Eight templates import and five deliberately do not, because the five touch records with approval and posting rules and a loader that bypassed those would be worse than typing. Load in dependency order, test every file with fifty rows and open the actual records, and check the skipped count rather than only the created one. There is no preview and no rollback on the eight, which is exactly why the habit matters more than the feature.

Get the templates before you start cleaning

Thirteen templates with sample rows, required columns marked and your own custom fields already added — plus a plain statement of which five have no importer and why we are not going to build a loader that skips the approval rules.

See plans & pricing

Frequently asked questions

Which data can be bulk imported?

Eight things: items, customers, vendors, warehouses, locations, assets, asset custodians and the chart of accounts. Employees and attendance have their own separate import with a real preview-then-commit step. Five further templates download so you can see the layout — stock adjustments, stock transfers, requisition lines, RFQ lines and opening balances — with no importer behind them.

Why can stock adjustments not be imported?

Because an adjustment can require a second approver above a value threshold and posts to the ledger. A loader would either honour those rules, in which case importing three hundred adjustments raises three hundred approvals and saves nobody anything, or bypass them, which turns controlled records into typed-in ones. The same reasoning covers requisition lines, RFQ lines and transfers.

Is there a preview before an import commits?

Only on the HR employees and attendance imports. The eight general templates report created, updated and skipped counts after the fact, and there is no rollback — so quality control is the fifty-row habit rather than a feature: upload fifty rows, open five of the created records and check the fields nobody looks at, then upload the rest.

What order should files be loaded in?

Warehouses, then locations, then items, then customers and vendors, then asset custodians, then assets. The chart of accounts is independent but should go in before anything financial happens. A location file failing on row one because its warehouse code has not been loaded yet is the single most common first-day problem.

What are the file size and format limits?

CSV, XLSX or XLS up to 10 MB. Files under 256 KB are parsed immediately with counts reported on screen; larger ones are queued as a background job and you are notified when they finish. Check that a queue worker is running before relying on the second path — a queued import with no worker never happens and never errors.

Do our custom fields appear in the templates?

Yes. Custom fields you have defined for a module are added to that module's import template automatically, so your own columns are loadable in the same pass rather than as manual work afterwards. Download the template after defining the fields, not before.

Help Center

Need a quick answer while you read?

Run inventory, procurement, assets, sales, and field work with approved AWRA guidance for setup, migration, integrations, security, pricing, and support.

Search all approved AWRA public help articles.

Open Help Center