Orders and Packing Slips
Bring the week's invoices in from a QuickBooks report, print packing lists by the week, ship short, record customer complaints, find Shopify order numbers, and use QuickBooks for packing lists only.
Orders and Packing Slips
Orders live under Orders in the sidebar. This guide covers turning a QuickBooks report into orders and packing lists, printing a week’s packing lists in one go, shipping an order short, recording a customer complaint and what you did about it, where Shopify order numbers show, and the Packing lists only way of using QuickBooks.
Who can do it
| Action | Who |
|---|---|
| See orders | Everyone on the team |
| Pack, build pallets, move an order’s status | Worker, Manager, Owner |
| Import a QuickBooks report, create or edit orders | Manager, Owner |
| Print packing lists, pick lists and the week’s stack | Manager, Owner |
| Choose how the farm uses QuickBooks | Manager, Owner |
| Ship an order, keep or drop the rest of a short one | Manager, Owner |
| See complaints | Everyone on the team |
| Report a complaint, add a note to one | Worker, Manager, Owner |
| Set a complaint’s status and owner, record a return or credit, make a replacement order | Manager, Owner |
| Remove a customer | Manager, Owner |
Workers and Viewers never see prices, or the amount of a credit on a complaint.
Choose how your farm uses QuickBooks
- Open Integrations in the sidebar.
- On the QuickBooks Online card, click Manage.
- Under How this farm uses QuickBooks, choose:
- Off — Sporeline doesn’t read from or write to QuickBooks.
- Packing lists only — Sporeline reads your customers and products from QuickBooks to build orders and packing lists. Nothing is sent to QuickBooks, and Sporeline shows no prices or balances. Billing stays in QuickBooks.
- Full invoicing — Sporeline sends invoices and batch costs to QuickBooks and reads payments back.
- Turning on Full invoicing, or turning QuickBooks Off while it is connected, asks you to confirm.
With Packing lists only:
- Prices, totals and balances are hidden on orders, order lists and customer pages, and there is no invoice PDF.
- Orders end at Shipped, or at Delivered when Confirm delivery is on. There is no invoiced or paid step, for any order: hand-entered, Shopify, or imported from QuickBooks. Shipped orders go to Done; with Confirm delivery on they wait under To deliver until you mark them delivered.
- QuickBooks sync problems don’t put orders into Needs attention.
You don’t need a QuickBooks connection to import a report file. The import below works in any mode.
Import the week’s QuickBooks report
Each week, export the invoices from QuickBooks and upload the file. Sporeline makes one order per invoice and a packing list for each.
Export from QuickBooks
- In QuickBooks, run the Sales by Customer Detail report for the ship week, with Transaction Type: Invoice.
- Click Export to Excel.
The file needs the Num, Product/Service and Qty columns. Prices in the report are not read. One file can hold up to 150 invoices.
Upload it
- Open QuickBooks packing lists in the sidebar, or click From QuickBooks on the Orders page.
- Under QuickBooks report (.xlsx or .csv), choose the file.
- Under Which date means “ships this week”?, choose Invoice Date, Due Date or Ship Date. Sporeline remembers this for the next upload.
- Click Upload and preview.
- If Sporeline doesn’t recognise a column header, it asks you to Match the report’s columns. Pick what each one is, or Not used, then click Save columns and preview. This is saved for every upload after.
Check the preview
The preview groups invoices by ship day and customer. Each invoice is marked New, Changed, Unchanged, Flagged, Not in report or Voided.
If the import couldn’t read some rows of the report, the top of the preview says how many, then lists each one by its row number with the reason, for example Row 12: No invoice number (Num) on this row. Fix those rows in QuickBooks and upload again.
- For any line with no match, pick the product under Choose a product. Pick Not packed (shipping, a fee) for lines that aren’t packed.
- If a customer could be more than one of yours, pick the right one under Choose a customer. A customer that isn’t in Sporeline yet is added.
- If you made picks, click Save … picks and refresh.
- Click Import … invoices. If some lines are still unmatched, tick Import anyway, with … lines unmatched first.
When it’s done
The The week is in card shows how many orders were created, updated, unchanged, flagged, cancelled or skipped. Under Skipped, and why, it lists each skipped invoice and each row it couldn’t read, with the reason, for example Invoice 1049: Voided in QuickBooks; there is nothing to pack.
- Print this report’s packing lists prints them all in one file, up to 100 orders. A report with more than 100 orders can’t be printed from here: print it from the Orders page, by ticking orders in groups or with the week’s stack.
- Open this week goes to the orders to pack.
- Upload another report starts again.
Uploading again
Upload again whenever orders change in QuickBooks. Invoices are matched by number, so nothing is duplicated:
- An invoice that hasn’t changed is left alone.
- A changed invoice updates its order, if packing hasn’t started.
- A changed invoice whose order is already being packed is flagged, not overwritten.
- An invoice voided in QuickBooks cancels its order if nothing was packed; otherwise the order is flagged.
- An invoice missing from the new report is flagged, never cancelled.
Flagged orders appear in Needs attention on the Orders page, with a note saying what changed. A Manager clicks Edit to match, Mark handled, or Cancel order.
Print the week’s packing lists
Turn on packing by the week (Manager or Owner)
- Open Configuration in the sidebar and go to the Fulfillment tab.
- Set Pack by the week to Weeks start Sunday or Weeks start Monday.
- Click Save fulfillment settings.
Print the stack
- Open Orders.
- In the To pack section, next to Print the week’s stack:, click This week or Next week.
- Check the count, then click Print … packing lists. Orders that need attention are listed as not in this stack.
More than 100 orders print as several files, listed as Stack 1 of … and so on.
Other ways to print
- Tick orders in To pack or To ship, then click Print … packing lists or Print pick list. The pick list says where to pick each lot; see Auto-assign Lots and Pick Lists.
- Open an order and click Packing List, or use its Documents tab.
On the Fulfillment tab, Print prices on packing lists and Print the lots shipped on packing lists control what the packing list shows. Prices never print on an order imported from QuickBooks.
An order’s notes, such as “insulated”, print under Notes: near the top of its packing list, including in the week’s stack. An order with no notes prints no Notes heading. An order sold only by weight from harvests keeps its older one-page packing list, which has no notes.
To pack part of a lot on one order and the rest on another, and to see what a recall shows for it, see Lots on Orders.
Your farm name on invoices and packing slips
Your invoices, order confirmations, packing lists and pick lists print your farm’s name and address above the title, with a line in your brand colour under them. They come from what you saved under Settings > Brand Profile (Manager or Owner), the same place your labels read them from:
- Farm Name prints in bold at the top.
- Producer Name prints under it when it differs from the farm name, and Producer Address under that. If you left Producer Address empty, the street, city, state and ZIP you entered under Farm Location and Contact print instead.
- Primary Color draws the line under the header.
- Logo prints at the top right when it is a JPEG under 2 MB. A PNG or SVG logo still prints on your labels, but these documents print your farm name without it, so upload a JPEG copy if you want it on your paperwork.
A very long name or address is cut short with ”…” so the rest of the document stays on the page: the farm name gets three lines, the producer name two and the address four.
Nothing prints that you have not set. If your brand profile is empty, your documents look exactly as they did before. If you filled in some of it but left the farm name or address blank, your account’s farm name and pickup address fill the gap.
The header goes on the first page only. The next time you print a document after changing your brand profile, it shows the change; documents you printed before keep what they had.
When an order ships short
When you ship an order with fewer units than it asks for, the Ship dialog asks what to do with the rest, every time:
- Keep them on this order (backorder). What is ready ships now. The order stays open for the rest and ships again later, on the same order. It is invoiced once it closes. A Backorder card on the order says how many are still to go, with Ship the rest… and Drop the rest.
- Drop them. The order is cut to what shipped and closes short. The invoice bills only what shipped.
- Split them into a new order. The order is cut to what shipped, and the rest go on a new order for the same customer, linked to this one.
Mark packed on a short order follows your farm’s When Mark packed finds a short line setting under Configuration > Fulfillment: Allow, Warn or Refuse.
Complaints, replacements and credits
When a customer reports a problem with an order that shipped, record it on the order.
Report a complaint
- Open the order. Under the order’s details, the Complaints card lists any complaints already reported.
- Click Report a complaint.
- Pick the Type: Missing item, Damaged, Quality, Contamination or Other.
- Write What the customer said.
- Tick the Lines it is about. You can add how many units were affected.
- Tick the Lots involved. Only lots that shipped on this order are listed, so a complaint always points at product the customer got.
- Check the Received date. It starts as today.
- Click Save complaint.
Sporeline records who saved it. You can report one once something has shipped, even while the rest of the order is still open, and after the order is cancelled.
Work a complaint
Click a complaint to open it. You can also open Complaints from the top of the Orders page, which lists every complaint, newest first, filtered by status and type.
- Notes: anyone who can report a complaint can add a note. Notes can’t be edited or removed.
- Status and owner: a Manager sets the status (Open, Investigating or Resolved) and who is looking after it.
- If someone else changed the complaint while you had it open, Sporeline says so. Click Reload and make your change again.
What you did about it
The complaint lists what was done, with who did it and when.
- Replacement order: click Create replacement order. The reason starts as the complaint’s type. The new order is linked to the original, and the complaint lists it. If the order was made but Sporeline couldn’t list it on the complaint, open the complaint and click Attach a replacement order. An order that shipped part of its units can be replaced for what the customer received. If the replacement isn’t listed under Attach a replacement order, type its order number, or paste its ID or page address.
- Credit through QuickBooks: issue the credit memo or refund from the order’s QuickBooks panel. Pick a Reason code, and under For complaint pick the complaint. The credit is listed on the complaint, and the reason code is kept with the credit so credits can be counted by reason.
- Credit given another way: click Record a credit on the complaint and say what was given.
- Return: take the units back on the lot page first. Then click Record a return on the complaint and say which lot and how many.
Where complaints show
- On the order, in the Complaints card.
- On the lot’s page, when a complaint names the lot.
- In a recall from the lot, or from anything the lot was made from. See Complaints in a recall.
Shopify order numbers
Orders from Shopify carry a small mark before the order number on the Orders list. Point at it to see the Shopify number, for example Shopify order #1047. A Shopify order’s order number is its Shopify number, so the packing list prints it on the Order: line, for example Order: #1047, and the order’s page shows it under Order number and Shopify order. Shopify orders don’t use your farm’s own order numbers, so your next hand-entered order keeps its usual number.
Orders imported from QuickBooks carry a different mark and show the QuickBooks invoice number, printed as QB invoice: on the packing list.
To connect Shopify, see Shopify Setup.
Removing a customer
A Manager or Owner can remove a customer the farm no longer sells to, or one that was entered twice. There is no Remove button on the customer’s page yet, so ask Farmhand to delete the customer, or call DELETE /customers/{id} through the Sporeline API.
You have to give a reason. The reason, who removed the customer and when are kept in the farm’s activity log.
A customer can’t be removed while any of their orders is still open, which means anything not yet delivered, paid or cancelled. Until then Sporeline answers “Cannot delete customer with active deliveries.”
Past orders keep the buyer’s name, email and phone after the customer is removed, so a recall from any lot they received can still tell you who to contact.
Removing a customer takes a moment while Sporeline checks their orders. If someone saves a new order for that customer, or moves an order onto them, during that moment, the order isn’t saved and Sporeline says “That customer is being removed; pick another or wait a minute.” The same goes for orders arriving from Shopify or from a QuickBooks report: that order shows as failed and is tried again on the next sync or upload. If the removal is the one that loses, the customer is kept and you see one of these instead:
- “This customer is already being removed. Try again in a minute.” Someone else started removing the same customer.
- “This customer’s orders changed while it was being removed, so it was kept. Try again.” An order for them was saved just as you removed them. Check their orders, then try again.
- “This customer was changed while it was being removed, so it was kept. Try again.” Someone saved a change to the customer, such as a new email or phone number, while you were removing them. The change is kept. Try again if you still want to remove them, and their past orders will keep the new details.
Let your assistant enter orders
Once your AI assistant is connected to Sporeline (see Connect an AI assistant), it can take care of the order typing for you. Tell it who the order is for, the day, and what’s on it, and it enters the order with order_create. The customer has to be in Sporeline already, under the name you use there. Weight lines take the species, strain, grade, grams and the price per gram; a line from your product catalog takes the product’s SKU or name and how many units.
It can also fix a line on an order that is still planned or packed with order_line_update, which changes a line’s quantity, weight, grade or price, adds a line, or takes one off. It can mark a planned order packed with order_status_set, and log a customer’s complaint about an order that has shipped with complaint_create.
Every one of these shows you a preview first: the customer, the lines and totals, and the order number it would get for a new order, or each field before and after for a change. Nothing is saved until you tell the assistant to go ahead, and if your farm has Approve every AI change turned on, the change then waits for you on the Approvals page. Sporeline checks an assistant’s order exactly the way it checks one typed on the Orders page, so anything the form would refuse, the assistant is refused too.
Some things stay in the app, on purpose. Shipping, marking delivered, invoicing, marking paid and cancelling move product and money, so you do those on the Orders page. A line with blocks or harvests allocated to it, and an order that is invoiced or has shipped, are changed on the order’s page too. Workers can ask their assistant to mark orders packed and log complaints, but entering and changing orders, and seeing prices, stays with Managers and Owners, the same as in the app.
When something goes wrong
- “This file has no … column, so it can’t make packing slips.” — export Sales by Customer Detail with those columns, or use Match the report’s columns to say which of your headers it is.
- “No invoices in this report.” — check the report is Sales by Customer Detail, filtered to invoices for the ship week.
- An invoice or line is missing from the preview — rows the import can’t read are left out: rows with no invoice number (Num), no product, a Qty that isn’t a number, or no customer, and rows that aren’t invoices. The preview lists each one with its row number and the reason. Fix those rows in QuickBooks and upload again.
- “Invoice … was updated from a newer QuickBooks report” — a newer upload already brought that invoice in. Upload the latest report.
- An order is flagged after an upload — it changed in QuickBooks after packing started. Open it from Needs attention and choose Edit to match, Mark handled or Cancel order.
- “Importing packing lists from QuickBooks needs the Manager role.” — ask a Manager or Owner to upload the report.
- No “Print the week’s stack” line — turn on Pack by the week, or ask a Manager to print.
- “Your browser blocked the new tab.” — click Open the packing lists, or allow pop-ups for Sporeline.
- “Nothing has shipped on this order yet.” — a complaint can only be reported once something on the order has shipped.
- “Lot … didn’t ship on this order.” — pick a lot from the list in the complaint form; only lots that shipped on the order can be named.
- “Someone else changed this complaint since you opened it.” — click Reload, then make your change again.
- “The replacement was made, but it isn’t on the complaint yet.” — the replacement order went through. Open the complaint, click Attach a replacement order, pick the order under Replacement order and click Attach. If it isn’t listed, type its order number under Order number or ID, or paste its ID or page address.
- ”… isn’t a replacement for …” or ”… was made for another complaint.” — only a replacement of the complaint’s own order, made for this complaint or for none, can be attached.
- “Couldn’t find order …” — the number you typed isn’t one of the farm’s recent orders. Open the replacement and paste its ID from the address bar.
- “Two orders carry number …” — paste the ID of the right one instead of the number.
- “Sporeline found … among your newest 1,500 orders but couldn’t check older ones.” — Sporeline can’t be sure no older order has the same number. Open the replacement and paste its ID from the address bar.
- The order was cancelled and its complaints disappeared. Open the order: complaints stay on any order that shipped.
- “The credit was made, but it isn’t on the complaint yet.” — the credit went through. Open the complaint and click Record a credit to note it.
Orders, pallets and transfers each get the next number from one counter the whole farm shares. When two people create one at the very same moment, Sporeline tries again a few times on its own, and if it still can’t get a number you’ll see “Another order was being numbered at the same moment, so this one was not saved.” Nothing from that order was kept, so send it again and it will go through.
Ask your assistant about orders
Once you’ve connected an AI assistant to Sporeline (see Connect an AI Assistant), you can ask it about your orders in plain words, and it reads them the same way the Orders page does. Asking never changes anything.
- Open orders. Ask something like “What orders are still pending this week?” or “Show me everything for this customer since the first of the month.” The assistant uses
order_list, which lists orders newest first and leaves cancelled ones out, just like the Orders list. It can narrow the list by status, by customer and by order date. - What shipped. Ask “What went out on order SO-1043, and which lots were on it?” The assistant uses
order_get, which brings back the order’s lines and status, the lots and lab items on it, the blocks or units allocated to it, and each shipment with its ship date, carrier and tracking number. - Complaints. Ask “Which complaints are still open?” or “Were there any complaints on that order?” The assistant uses
complaint_list, which lists the farm’s complaints newest first, or just one order’s.
The assistant only ever sees what your own role lets you see. Workers and Viewers don’t get prices, order totals, invoice numbers or QuickBooks details, or the amount of a credit on a complaint. Viewers see the word “hidden” where a customer’s name would be. A customer’s email, phone, billing address and ship-to contact go to the assistant only when a Manager or Owner asks and the farm has turned on Share customer details with AI assistants; otherwise the answer says the details were left out and why.