Bulk import and export

Bulk import and export is how you move data in and out of Hilal at scale — loading 10,000 SKUs from your supplier list, exporting all purchase orders for a quarterly audit, or moving inventory between systems.

In this guide:

  • Open the import/export page
  • Import data
  • Export data
  • Understand job status
  • Review import history

Step 1: Open Bulk Export & Import

Settings → Bulk Export/Import.

Step 2: Import data

The Upload (Import) tab is where you upload an XLSX file to add or update records:

  1. Pick an entity type from the dropdown (Products, Vendors, Warehouse Inventory, Purchase Orders).
  2. Download the template for that entity — it shows you the required and optional columns.
  3. Fill in your data in a spreadsheet (Excel, Google Sheets, etc.).
  4. Export it as XLSX (Excel format).
  5. Click Choose file and pick your XLSX file.
  6. Review the preview — Hilal shows the first few rows and any validation errors (required fields, invalid enums, etc.).
  7. Fix errors in your XLSX file if needed, or proceed if validation passed.
  8. Click Import.

Hilal queues the job and processes it asynchronously. You can close the page; you’ll get an in-app notification when it’s done.

Import status

While the job runs:

  • In progress — still processing.
  • Completed — done. Check the results summary: how many records imported, how many skipped due to errors.
  • Failed — the entire job failed (e.g., corrupted file, network error). Re-upload and try again.

If individual rows failed validation, you’ll see a download error file button to get a CSV of just the rows that failed, with error messages. Fix those and re-import.

Common imports

EntityWhat you uploadCommon use
ProductsSKU, title, cost, category, supplier.Seed your product catalog from master data.
VendorsVendor name, contact email, address, lead time.Add multiple suppliers at once.
Warehouse InventoryProduct, location, quantity, batch number, vendor.Update inventory levels across many SKUs.
Purchase OrdersPO number, vendor, product SKU, quantity, ETA.Batch-create POs from a procurement list.

Step 3: Export data

The Download (Export) tab is where you download your data:

  1. Pick an entity type (Products, Vendors, Warehouse Inventory, Purchase Orders).
  2. Optionally filter (e.g., only active products, orders from the last 30 days).
  3. Click Export.

Hilal queues the job and generates an XLSX file when it’s ready (usually within seconds for small exports).

Export options

Depending on the entity, you can choose:

  • All records — everything of that type.
  • Filtered — e.g., only products with inventory < 10, or orders placed this month.

Exports are generated as XLSX (Excel) files. The export runs asynchronously; large exports (100k+ rows) may take a few minutes.

Step 4: Understand job status

Jobs show real-time status as they process:

StatusWhat it means
PendingQueued, waiting to start.
In progressStill processing.
Upload finished successfullyAll rows imported without errors.
{n} row(s) failedSome rows imported, some failed. Download the error file to see what went wrong.
All rows failedEvery row failed validation. Download the error file and fix all issues.
FailedThe entire job failed (corrupted file, network error, server error). Re-upload and try again.

Click any job to see details: what entity, when it ran, how many records, errors (if any).

Step 5: Review import and export history

Each tab shows a history panel at the bottom:

Previous Imports (in the Upload (Import) tab):

  • Shows all past import jobs.
  • Lists entity type, date, initiator, status, and row counts.
  • Click a job with failures to download the error file.

Previous Exports (in the Download (Export) tab):

  • Shows all past export jobs.
  • Lists entity type, date, initiator, and status.
  • Click a completed export to download the XLSX file.

Troubleshooting

  • Upload says “Invalid file format”. Make sure you’re uploading an .xlsx file (Excel format).
  • Preview shows validation errors. Check that required columns are filled in and enums (e.g., status = active or inactive) match the allowed values. The template lists them.
  • Import processed but no records were added. Check the results — if all rows failed, the error file shows why (e.g., duplicate SKU, unknown vendor). Fix and re-import.
  • Export says “In progress” but the file hasn’t appeared. Large exports may take several minutes. If it’s been hours, contact support.

Related articles