Order Detail: Status, Cancellation & Fulfilment Handoff
Everything on the single-order screen — what was ordered, customer and payment details, updating status, cancelling an order, and handing off to a shipment.
Click any row on the Orders list to open the Order Detail screen for that order. This is where you review what was bought and take every action available on that order.
The order timeline
A connector-line timeline runs down the order detail screen, one node per milestone, each dot filled green once that milestone is reached:
| Node | What it shows |
|---|---|
| Placed | Order date and the full line-item list. |
| Invoiced | The invoice number and amount, plus three delivery chips — Email, WhatsApp, Merchant copy — each showing when that copy actually sent, or "not sent" if it hasn't. While the order has no invoice yet the node reads Not invoiced yet; if you are allowed to create the invoice, it shows the Generate invoice button instead. |
| Shipped | Carrier name, tracking/AWB number, and how many tracking events have come in. |
| Delivered | Just a timestamp, once the shipment reaches this state. |
| Payment collected | Amount and payment reference. |
| Refund | Amount, and — when a refund has generated one — its credit note number (see Credit notes for how those work). |
| Payout | Amount and reference for a marketplace vendor transfer; the title switches to "Payout reversed" if it's since been reversed, with a pointer to the Transfer Details card below (see Marketplace payouts and reversals). |
| Notes | The most recent note's author, an Internal/Customer type badge, and its text — once at least one note exists on the order. An Add note action always sits below it (see Adding a note to an order below). |
This same timeline renders identically on both the classic and newer dashboard skins.
What was ordered
The Items panel lists every product in the order — name, photo, chosen size or variant, unit price, quantity, and line total. In a marketplace, items are grouped by vendor so it's clear which seller fulfils which portion. A line sold by unit shows its quantity with the unit, for example "2.5 kg"; a line sold in pieces shows the bare number. The same quantity text appears on the printed Packing slip, in the refund dialog's item list, in the refund drawer's item rows (written as "· ×2.5 kg"), and in the order dialog opened from a customer's profile. If a unit line shows only a number, see Selling by Unit. The final tally shows the item subtotal, any discount applied, shipping cost, and the net amount charged.
A gift-wrap tag appears on the item row, and next to it a small note-strip reminds you to review the customer's gift-wrap instructions before packing, when the order was placed with gift wrap selected — see Gift wrap and pickup on an order below for the full picture. Each line item also has a kebab (⋮) menu with three actions:
| Action | What it does |
|---|---|
| View product | Opens the product's page in Inventory |
| Copy SKU | Copies the item's SKU to your clipboard. The SKU is read from the order line's saved SKU, falling back to the linked product's SKU, so it is filled in even for orders whose lines only stored it as the product SKU |
| Reorder | Visible in the menu but not yet wired to any action — clicking it does nothing |
If the customer answered any personalisation fields when adding an item to cart, each answer is
listed under that line item — this appears the same way on both the classic and v2 order-detail
layouts. Text-type answers (engraving text, select choices, dates) show as plain "key: value" text.
When an answer is an http:// or https:// URL — an uploaded image, reference photo, or a
monogram supplied as an image — the order detail shows a small thumbnail instead of the raw URL.
Select the thumbnail to open the original image in a new tab; the link opens with noopener noreferrer, so the new tab has no access back to the order screen. Use the full-size original when
you need to inspect fine detail before production — the inline thumbnail is intentionally small.
Troubleshooting personalisation answers on an order
- If an answer still shows as text instead of a thumbnail, confirm the stored value actually begins
with
https://orhttp://— values using other schemes, such asdata:orjavascript:, are never treated as clickable images, by design. - If the thumbnail is broken, open the link directly and check whether the remote file still exists and is publicly reachable.
- If no answer appears at all, confirm the customer actually submitted that personalisation field, and that the order still has its line-item personalisation data attached.
- Invoice and print output do not currently render personalisation values — use this order-detail view to inspect uploaded images, not the printed invoice.
Bundles on an order
Needs the bundles feature switch
Bundle grouping only shows when bundles are switched on for your admin (they are off by default). With the switch off, every component appears as an ordinary line, exactly as before.
When a customer bought a product bundle, the Items panel shows a bordered group for each bundle purchase instead of loose component lines:
- Header row: the bundle name (with a multiplier such as ×2 when the customer bought several sets) and the bundle's net amount on the right.
- Component rows: each component's name, quantity and its allocated net line total, meaning its price after its share of the bundle saving (and any coupon).
- Bundle savings: a green row with the saving, shown only when the bundle gave a discount.
If you generate an invoice for such an order while bundles are enabled, it opens each bundle with a header line (bundle name, the set count such as ×2, and the bundle saving) above its component lines; invoices for orders without bundles are unchanged. Items the customer bought separately stay as normal lines below or above the groups. On the classic screen the Items count at the top of the panel counts each bundle once per set rather than once per component; the newer screen's line-item count still counts every component. The same group appears on both screens. To refund part of a bundle, see Partial refunds: the refund amount starts from each component's net amount shown here.
The payment method on the order header and in the payment panel is shown as a readable label, so a cash-on-delivery order reads Cash on Delivery rather than a raw code; a method with no label is shown exactly as recorded.
Why don't I see the bundle group? Check that bundles are enabled for your account, then that the customer bought the bundle itself. Components bought individually show as plain lines.
Tax classification: HSN for goods, SAC for services
If a store sells appointments alongside products, an order's line items can be a mix of the two, and each line carries a different tax classification code:
- A goods line (an ordinary catalog product) shows its HSN code.
- A service line (a booked appointment) shows its SAC code — the same SAC code entered on the offering's Basics step; see Create an offering.
Where this lives on each dashboard skin
On the classic skin, the Items table has its own column for this, labelled HSN, SAC, or HSN / SAC depending on whether the order has goods lines, service lines, or both. Each line shows its own code, or an em dash (—) if that line has no code on file.
On the newer (v2) skin, there's no separate column — the code is appended to the SKU column instead (for example "SKU-104 · HSN 8471" or "SVC-22 · SAC 999599"), and the column header itself switches between SKU · HSN, SKU · SAC, and SKU · HSN/SAC the same way. If a line has no code on file, v2 shows just the SKU with nothing appended — it does not show an em dash there.
This matches the classification code printed on the order's GST invoice (see Table Config: renaming columns and adding an HSN/SAC column) — whichever code shows here for a line is the same one the invoice PDF prints for that line, once you turn the invoice's own HSN/SAC column on.
Troubleshooting: “why is this line's code blank?”
The code shown here always comes from wherever it was set, not from anything typed on the order itself:
- For a goods line, it's the product's own HSN code.
- For a service line, it's the SAC code field on that offering — open the offering in Offerings (see that page for the exact nav path on each dashboard skin) and check the Basics step. If that field is empty, the line shows no code here (an em dash on the classic skin, nothing on the newer skin) no matter how the order itself was placed.
Customer & delivery details
A dedicated card shows the customer's name, the delivery address (street, city, pincode, state), and their contact details — everything a courier needs, without leaving the screen.
Right above the address, a small uppercase label always states how this specific order is being fulfilled — Shipping address for a normal courier order, or Pickup location for an in-store pickup order. This label is always present, on every order, on both the classic and newer dashboard skins — it isn't a tag that only shows up for pickup orders, so you never have to guess an order's fulfilment method from the absence of a badge elsewhere on the screen.
On the newer dashboard skin, an Edit control opens a drawer where you can correct any part of a shipping order's delivery address — address line 1, address line 2, city, state, postal code, and country — and save the change directly against the order. A pickup order's location comes from your store-wide pickup-location list instead, configured under Customer Pickup & Gift Wrap, not edited per-order.
Adding a shipping address when the order has none
Occasionally an order arrives with no shipping address on file at all — checkout data that never carried one through, or an address that was cleared some other way. This order can never auto-book a shipment until it has one, and a shipment-booking failure citing a missing address points here to fix it.
This prompt is not shown on a counter sale. An order rung up at the POS counter that has no shipment and no shipping address is handed over at the till, so the customer & delivery details card (classic and newer skin) leaves out the address block and the Add shipping address action entirely. A POS order that does carry a shipping address or a booked shipment (a delivery sale), and every web order, keeps the address block and the action.
Find the Add shipping address action
When an order has no address, the customer & delivery details card shows "No address on file" with an Add shipping address action right underneath it, in place of the usual address block. The shipment panel further down the page shows a matching Add shipping address link next to its own address line for the same reason.
Fill in the address
Either entry point opens the same dialog: address line 1 (required), address line 2, city (required), state (required), postal code (required), and country (defaults to India). Address line 1, city, state, and postal code must all be filled before you can save.
Save
Click Save. The order refreshes with the new address in place — the "no address" prompts disappear, and the order is now eligible for shipment booking (or auto-fulfillment, if it's on and the order otherwise qualifies).
If saving the address fails
A failed save shows a toast rather than failing silently. Two different messages tell you what to do next: a generic "Could not save this address, please try again" means a transient error — retry the save. "Saving an address isn't available yet, please contact support" means your store hasn't been fully migrated to this feature yet — contact support rather than retrying, since retrying won't succeed.
Why is there no Add shipping address on a counter sale? Because nothing is being shipped. A POS counter order with no shipment and no shipping address is treated as handed over at the till, so the address block and the Add shipping address action are hidden on it. A counter order that does carry a shipping address or a booked shipment shows the address block like any other order. Web orders and delivery orders with no address on file still show Add shipping address.
Gift wrap and priority tags
Orders placed with gift wrap or marked as priority show a small tag next to the order status, both on the Orders list and at the top of this screen, so you can spot them without opening every order. Unlike the fulfilment-method label above, these tags are intentionally shown only when the order actually has that extra — a shipping order with no gift wrap does not carry an empty "No gift wrap" tag; that would just be noise on every normal order.
Gift wrap and pickup on an order
Both extras are configured once, store-wide, under Customer Pickup & Gift Wrap — this section covers what shows up on an individual order once a customer has used them.
Gift wrap: a Gift wrap tag appears next to the order status (matching the note above). If the customer left a gift message, it's shown on its own card, quoted exactly as they typed it. The gift-wrap fee — set by you, not the customer — appears as its own line in the order totals whenever it's greater than zero.
Pickup: an order placed for in-store pickup shows a Store pickup tag next to the order status, and the customer & delivery details card shows the pickup location's name and address, under a Pickup location label, in place of a shipping address. Orders created by an appointment booking never show the Store pickup tag or a pickup location, even though they are recorded internally as pickup: nothing is collected from a shelf. Their channel tag reads Booking instead, and the same holds in the Orders list and its customer column.
Marking an unpaid pickup ready. Staff can mark a Pay at shop pickup ready in the POS Orders screen (Pickups tab, Ready for pickup) before it is paid. The order's status here stays Processing: readiness is shown to the customer as a Ready for pickup notice on their order detail and tracking pages, not as a new status on this screen or on the customer's order list. Handing the order over is blocked at the counter until the payment is taken (see Pickup Collection). After handover the order is delivered and the notice is gone.
A normal shipping order shows no pickup or gift-wrap tag at all next to the order status — that absence is the signal that it's a regular courier order. What it always shows, regardless of any tag, is the Shipping address label described above, so the fulfilment method itself is never left unstated.
All of this — the always-on fulfilment label, the pickup/gift-wrap tags, the pickup location card, the gift message, and the gift-wrap fee line — shows up the same way on both the classic and new admin sidebar.
Troubleshooting: “the customer sees Processing in their order list”
The order list shows the order's status, which stays Processing while a pickup is packed and ready. The Ready for pickup notice appears on the customer's order detail and tracking pages only. Ask the customer to open the order, and confirm on the POS Orders → Pickups card that Ready for pickup was selected.
Troubleshooting: “why doesn't this order show a Pickup tag?”
Only orders placed with in-store pickup selected at checkout get the Store pickup tag and the Pickup location card. An order from an appointment booking never gets them; look for its Booking channel tag instead. If a merchant expects to see it and doesn't, check the order's fulfilment method in the customer & delivery details card first — if it reads Shipping address, the customer chose (or was defaulted to) courier delivery at checkout, and the order is working as intended.
If the fulfilment method correctly reads Pickup location but the card shows Pickup location not set instead of the location's name and address, this is a known gap — the order detail screen currently doesn't look up the pickup location's details, even when one is on file. Cross- check the location under Customer Pickup & Gift Wrap in the meantime.
Payment status
The payment panel shows whether the order is Paid, Pending, or Failed, colour-coded for quick recognition, along with the payment method and the full breakdown (subtotal, shipping, discount, net total). A Copy control next to the transaction ID copies it to your clipboard, so you can paste it straight into a support ticket or a payment-gateway search without retyping it.
Charged, Captured and Net collected
Charged is the order total. Captured shows the recorded amount paid and stays ₹0 while payment is pending, including cash on delivery and payment due on terms. Net collected deducts recorded refunds from that paid amount and never displays a negative amount. The row is always present on the classic screen, even when no refund exists: an unpaid cash-on-delivery order shows Net collected ₹0, and once you record the payment it shows the paid amount. For older paid orders without a recorded paid amount, the order total is used.
Updating the order status
The Status control (a dropdown on the classic screen, showing "Status: <current>") only ever
offers the statuses the order can legally move to next — it never lists every status in the
system. This applies on both dashboard skins: the classic dropdown and the newer skin's Ship /
Mark delivered buttons all read from the same underlying rule, so an action that would be
rejected by the server never appears as clickable in the first place.
Open the Status control
On the order detail screen, find the status dropdown (classic screen) or the Ship / Mark delivered button (newer dashboard skin). Only the targets currently valid for this order show up — there's nothing to configure.
Choose the next state
Pick one of the offered statuses — for example, Processing to Shipped, or Shipped to Delivered.
Confirm
The status updates immediately and the customer's automatic notification goes out at the same time.
The dropdown always lists the order's current status first (selected), followed only by the statuses it may move to. Every entry uses a readable label, for example Confirmed, Out for delivery, Returned, and Refunded, in the language you have set for the admin, rather than a raw status code.
Allowed transitions
Each row is a current status; the statuses listed are the only ones the dropdown/buttons will ever offer from there. A blank Next statuses cell means the order is in a final state — the whole control is disabled and shows the current status greyed out, with nothing to pick.
| Current status | Next statuses |
|---|---|
| Pending | Confirmed, Cancelled |
| Confirmed | Processing, Shipped, Cancelled |
| Processing | Shipped, Cancelled, Refunded |
| Shipped | Out for Delivery, Delivered, Returned, Cancelled |
| Out for Delivery | Delivered, Returned, Cancelled |
| Delivered | Returned, Refunded |
| Returned | Refunded |
| Cancelled | (final — control disabled) |
| Refunded | (final — control disabled) |
The same rule gates the Ship, Mark delivered, and Cancel Order actions individually — each only appears enabled when moving to that specific status is currently legal — and the Orders list's bulk Update status action (see Bulk actions), which now skips any selected order the chosen status isn't legal for, rather than sending the request and letting it fail.
Troubleshooting: why is a status missing from the dropdown, or the whole control greyed out?
The dropdown/buttons show only what the order's current status allows — see the table above. Two common cases:
- A status you expect isn't offered. Check the order's current status against the table's left column — you can only jump to something in that row's Next statuses. For example, a Processing order can go straight to Refunded (a refund without shipping, e.g. a duplicate/erroneous order), but a Confirmed order cannot — it has to move to Processing or Shipped first.
- The whole control is disabled. The order is sitting in a final status — Cancelled or Refunded — which has no further transitions. This is intentional: neither state can be reopened by changing the order status.
Troubleshooting: why can't I mark this order Refunded?
Refunded is offered only once the order has actually received money: a paid, partially paid or partially refunded payment, or a Cash on Delivery order that is already Delivered or Returned (the cash was collected). An unpaid prepaid order, or a COD order that has not been delivered yet, shows no Refunded option in the status dropdown, because there is nothing to refund. Cancel the order instead. If the request is sent anyway on a Processing order with no received payment, it is rejected with the message "This order has no received payment to refund. Cancel it instead."
Setting a paid order to Returned creates a pending refund
When you move an order to Returned (from any status other than Returned), BillionBiz checks the payment. If the order is paid, has an amount above zero, and has no refund that is still active (any refund that is not Rejected or Failed counts), it creates one refund for you automatically with status Pending, the order's full net amount, the reason Order returned, and original payment as the method. Find it in Returns & refunds and approve or decline it like any other request (see The refund approval workflow).
An order that is Cash on Delivery and not yet paid, or otherwise unpaid, gets no refund, because nothing was collected. Moving the same order to Returned again does not create a second refund. If the automatic refund cannot be created, the status change still goes through and the error is only logged; start the refund by hand from the order in that case (see Starting a refund).
Troubleshooting: why can't I set Refunded on a Cancelled order?
Cancelled is a final order status, not a stepping stone to Refunded — the order's status never becomes Refunded after being Cancelled, even when the customer's payment was refunded as part of the cancellation (see Cancelling an order below, and specifically the note on paid orders' refund-on-cancel cascade). What changes instead is the payment status: a cancelled order whose payment was refunded shows order status Cancelled with a payment badge of Refunded right next to it — that combination is the final state for that order, and both values are correct at the same time. Refunded as an order status is reserved for orders that were never cancelled — for example a Processing or Delivered order refunded directly (see the table above).
Order and shipment status also update automatically from carrier tracking
Once a shipment is booked, BillionBiz doesn't wait for you to click anything — tracking events from the courier (via Shiprocket) move the order and shipment status forward on their own, for example to Shipped once the parcel is in transit and Delivered once the courier confirms delivery (see The parcel journey, step by step for the full carrier-tracking flow). The order stays in its current status for the earlier tracking events (for example, once the courier has picked up the parcel but before it's marked in transit) — it doesn't move until one of these later events arrives. You don't need to manually mark an order Delivered once the carrier reports it.
Adding a note to an order
An Add note action opens a small drawer where you write a free-text note and choose its type:
- Internal — visible only to your team, for things like "call customer to confirm size."
- Customer-facing — included on the data the customer's own order record returns.
Notes are saved to the order's activity history and don't change its status.
Customer-facing notes don't show on the customer's order page yet
Marking a note customer-facing is real and saved — the customer's own order lookup includes it — but the customer portal's My Orders / order-detail page doesn't display order notes at this time. Don't rely on this as an active way to reach the customer; use email, WhatsApp, or a support ticket instead until the customer-facing display ships.
A separate pinned note also shows on this screen
Don't confuse order notes with the customer's own pinned note — if the customer profile has one pinned, it shows in the customer & delivery details card on this screen for context, with a link to see all of that customer's notes. That's a different note, tied to the customer rather than this one order, and it isn't something you set from here.
Cancelling an order
A Cancel Order action is available while the order is Pending, Confirmed, Processing, Shipped, or Out for Delivery — see Allowed transitions above. Once the order is Delivered, Returned, Cancelled, or Refunded, the button is disabled — none of those statuses can move to Cancelled. Cancelling saves the reason against the order record and notifies the customer automatically.
A confirmation prompt on both skins
Clicking Cancel Order shows a confirmation prompt on both the classic screen and the newer dashboard skin — it spells out that the cancellation is permanent and the customer will be notified, and gives you a chance to back out before anything is finalised.
Cancelling a paid order also cancels its invoice and issues a credit note
If the order was already paid and has a finalized invoice, cancelling it automatically refunds the customer's payment to their original payment method, cancels the invoice, and issues a full credit note — no separate action needed on your part. This happens the same way whether you cancel the order from here or the customer cancels it themselves from their order page (see Cancelling an order in the customer-facing guide). The credit note shows up on this screen's Invoice & GST card and on the order timeline's Refund node — see Credit notes for the full picture of where it appears, including on the customer's own order page.
This cascade only fires for orders that were actually paid at the time of cancellation — a still-unpaid COD order, or a net-terms order the customer hasn't paid yet, has nothing to refund, so cancelling it does not cancel its invoice or generate a credit note. If a net-terms invoice needs correcting before it's paid, cancel it directly from the Invoice ▾ menu instead — see Cancelling and reissuing an invoice above.
Recording a payment manually
A Record Payment action appears on the Totals & Payment card whenever the order's payment status is still unpaid — Pending, COD (cod_pending), Net terms (net_terms_pending), or Failed — and disappears once the order is fully paid, refunded, or cancelled. This covers the two payment methods that most often need it: a Cash on Delivery order once the courier has collected the cash, and a net-terms invoice once the customer actually pays within their agreed terms.
Select Record Payment
On the order detail screen's Totals & Payment card, select Record Payment.
Enter the amount
The amount field defaults to the order's outstanding balance, shown as a helper line under the field. You can record less than the full outstanding amount — a partial payment.
Reference and note (optional)
Add a payment reference (a UTR, cheque number, or similar) and a free-text note if you want either on record.
Submit
Select Record Payment to save it.
Partial vs. full payment
Recording an amount that doesn't fully cover the outstanding balance logs the payment against the order without changing its payment status — you can record further partial payments later, up to the outstanding balance. Only once the recorded total reaches the order's full net amount does the order flip to Paid. Recording full payment on a COD order at that point also generates its invoice — see Automatic invoicing for why a COD order has no invoice until money has actually moved.
What this action does not do
Recording a payment here always records it as a manual/offline payment against this specific order — there's no method or date field, because the backend always logs it as "recorded now" against this order. It doesn't touch the payment gateway; use it for money you've collected outside Razorpay (cash, a bank transfer, a cheque), not to reconcile an online payment that already went through the gateway.
Starting a refund
For paid orders that haven't already been refunded, an Initiate Refund action opens a structured drawer where you choose which items to refund, set the amount, pick a reason, and add notes. Both admin skins offer four quick-amount controls, bounded by the selected lines' maximum:
| Pill | Sets the amount to |
|---|---|
| Full | The current selection's maximum refundable amount |
| Items | The selected lines' net total, within the same maximum |
| Shipping | The shipping charge, within the same maximum |
| Custom | Whatever you type into the amount field yourself |
The reason dropdown offers Customer Request, Defective Product, Wrong Item Shipped, Order Cancelled, or Other. The button is Initiate Refund on the classic screen and Issue refund on the newer skin. It only appears while another refund is possible, and it is hidden in these cases:
- A refund on this order is still pending, approved, or processing. Finish or decline that one first.
- The refunds that have not been rejected or failed already add up to the amount charged.
- On the classic screen, the order is not paid or is Cancelled.
The server checks the remaining balance again even if a stale page still shows the button. A second request while one is pending is refused with A refund request is already pending for this order. A request above the order's remaining paid balance is refused with Refund exceeds paid money remaining after earlier refunds and returns. Selected lines have their own remaining net limit after bundle savings, coupons, and earlier refunds or returns; exceeding it shows Refund exceeds selected lines remaining net amount with the remaining amount. The reason is shown when you try. For a partially paid order, the limit covers only money already received.
Select the purchased lines before choosing an amount. The initial amount and Maximum refundable use their net totals. Unticking lines lowers the maximum and clamps a higher draft amount; clearing all lines does not turn this into a whole-order refund. The server can set a lower limit because it also checks refund and return history that is not included in the displayed maximum. See Start a partial refund from an order for the step-by-step flow and troubleshooting.
This is the entry point only — the full approval workflow, partial refunds, and what happens to your stock afterward are covered in Refunds.
Marketplace payouts and reversals
If your store runs as a marketplace, the order detail screen also shows a Transfer Details card once a vendor transfer exists for the order:
| Field | What it shows |
|---|---|
| Transfer ID | The gateway's transfer reference (or "Pending" if not yet created) |
| Status | Processed, Failed, Reversed, Partially reversed, or Pending |
| Transfer Amount | The amount sent to the vendor |
| Platform Fee | Your commission held back from the transfer |
| Linked Account | The vendor's connected payout account |
| On Hold | Whether the transfer is currently on hold |
| Created | When the transfer was made |
| Total Reversed | Only shown once at least one reversal has been made against this transfer |
If a transfer Failed, a Retry Transfer button appears so you can re-attempt it. If a transfer was Processed (or already Partially reversed), a Create Partial Reversal action instead lets you claw back some or all of the payout — for example, after approving a customer refund on an order whose vendor payout already went out. Reversing opens a dialog where you enter the amount to reverse and a reason; the transfer's total-reversed figure updates once it's submitted, and a reversal history table underneath the card lists every past reversal with its date, amount, reason, status, and gateway reference.
Invoice and GST
An Invoice & GST card shows the invoice and tax outcome for this order:
| Field | What it shows |
|---|---|
| Invoice | The order's invoice number |
| Credit note (cancelled invoices only) | If this invoice was cancelled, a line reading "Credit note CN2526/00012 issued" (with the actual credit-note number) in place of the fields below — see Cancelling and reissuing an invoice |
| Reissued (reissued invoices only) | A line reading "Reissued — replaces INV2526/00041 (cancelled)" when this invoice is a reissue of a cancelled predecessor |
| Due date (net-terms invoices only) | The date payment is due, only ever set on a finalized net-terms invoice — see Net terms |
| Per-order GST | A chip reading Tax invoice, or Bill of Supply when any of these is true: the invoice's GST scheme is Composition or No GSTIN, the order's tax treatment is exempt, or GST was disabled for this order (see GST exemptions). Invoices with no recorded GST scheme (older ones) use only the exempt and GST-disabled checks. The classic and new layouts show the same two labels. |
| GST | Only shown when GST is enabled — Intra · CGST + SGST for a same-state sale, or Inter · IGST for an inter-state sale, with the amounts |
| Place of supply | The state code GST was calculated against, when GST is enabled |
This card reads the breakdown BillionBiz already computed and locked in when the invoice was finalized — it's a read-only summary, not a place to change anything; set GST-exempt or Bill of Supply beforehand, on the product or at order creation, as covered on the invoice builder page. A Bill of Supply chip on an order you did not exempt usually means your store's GST scheme is Composition · no GST charged or No GSTIN; check it under Counter devices → Settings → Tax (see Counter settings: Tax).
Invoice actions: printing, resending, and cancel & reissue
Where this lives on each dashboard skin
On the newer (v2) dashboard skin, these actions live under an Invoice ▾ dropdown in the order detail header. On the classic skin, the same dropdown is labelled Invoice and sits alongside the order's other header actions.
Opening the dropdown offers:
| Action | What it does |
|---|---|
| Download PDF | Downloads the invoice as a PDF file — your store's branding, the customer's billing address, a line-item table, tax breakdown, and totals. |
| Opens your browser's print dialog on the formatted invoice — the same document as Download PDF. | |
| Resend | Emails the invoice to the customer again. Live — this is a real send, not a placeholder. |
| Generate invoice | Only shown while the order doesn't yet have a finalized invoice (a manual-mode order awaiting invoicing, or right after you've cancelled one — see below). Opens a dialog where you can choose to charge GST or not before generating. |
| Cancel & reissue | Only shown once the order has a finalized invoice. See below. |
If the order was placed with gift wrap, the invoice also prints the gift-wrap fee as its own line in the totals and the customer's gift message in its own boxed section — the same message shown on the order screen (see Gift wrap and pickup on an order above). Orders without a gift message simply omit that section.
Cancelling and reissuing an invoice
Selecting Cancel & reissue opens a confirmation dialog explaining what's about to happen: cancelling issues a credit note for the full invoice amount — the original invoice stays on record as cancelled (so your GST filings stay correct) — and does not require a refund to exist on the order. This is the correction flow for an invoice that needs voiding on its own, for example a data-entry mistake or a duplicate order, independent of whether the order itself gets cancelled (see Cancelling an order below for what happens when you cancel the whole order).
Once the invoice is cancelled, the dropdown's Generate invoice action appears in its place — select it to issue the replacement. The reissued invoice gets a new invoice number and, for a net-terms order, a fresh due date computed from your current net-terms days setting (see Net terms) — not the due date the cancelled invoice had. The Invoice & GST card on this screen then shows a "Reissued" line pointing back at the cancelled invoice's number, so it's clear this isn't the order's original invoice.
Fulfilment handoff — booking a shipment
Once an order is ready to dispatch, the shipment panel on the order detail screen is where you book a carrier and generate a tracking number. This connects directly to the shipping module. For the full picture on carriers, rates, and live tracking, see Shipping & Logistics.
The shipment panel (Shipment Tracking / + Create Shipment) is not shown on every order. An order rung up at the POS counter that has no shipment and no shipping address is handed over at the till, so both the classic and the newer dashboard skin leave the panel off it. A counter order that does carry a booked shipment or a shipping address keeps the panel like any other order.
If booking fails
If a shipment couldn't be booked, an alert appears on the order explaining why — for example, an address or pickup-location problem. If the reason has a fix you need to make elsewhere (like registering a warehouse), the alert shows a button that takes you straight there. If the cause is a missing shipping address entirely, that button is the Add shipping address action described in Adding a shipping address when the order has none above — you no longer have to leave the order to fix it.
Retry booking only appears when retrying could actually succeed — either the cause is a known transient carrier issue, or you've already applied the fix and BillionBiz is waiting to confirm it worked. If the cause hasn't been fixed yet, retrying would just reproduce the same error, so the button is replaced with a short note telling you to use the fix-it action instead. Once you've corrected the issue, BillionBiz automatically rechecks in the background — if the same error recurs, the alert says so explicitly ("The change you made didn't fix this") rather than looking like a fresh, un-acted-on failure. See Retry booking button is missing / replaced with a note for the full explanation.
Header actions on the newer dashboard skin
On the newer dashboard skin, the order detail header has Message (opens a drawer to send a WhatsApp message using the customer's saved number), Packing slip (opens a print-ready packing slip generated from the order's own data — there's no separate backend endpoint for this, it's printed straight from the order data already on screen), Add note, and the Invoice ▾ dropdown covered above. Print and Resend used to be separate buttons on this row — Resend was a "coming soon" stub — but both are now folded into the Invoice ▾ dropdown, and Resend is a real send.
Orders made at the POS counter
A return taken at a POS counter is done on the counter screen, not here, including restocking or marking items damaged and any owner approval it needs. See Returns & Exchanges.
Review a POS settlement warning
Screen: as the store owner, open /orders/pos-history, titled Orders, choose Counter
when channel filters are shown, and select Open on the bill. This is the shared order-history
view, separate from the ordinary order page described above.
- Check for Settlement needs owner review on the list row and bill detail. Only the owner sees this warning; an ordinary admin or cashier's lack of a badge does not confirm settlement.
- Read the reason. Card cancel arrived after the bill was finished — money not changed; refunds on this receipt are blocked; check the terminal settlement. means a terminal cancellation was honoured after payment had already been recorded.
- Keep the original bill and receipt references and check the terminal settlement as the owner. The warning does not reverse the recorded payment, stock, invoice or tax, and is not a button to clear the exception or issue another refund.
Why does a paid bill still need review? The terminal's later cancellation and the bill's recorded capture need reconciliation. Do not collect again or pay a second refund because the terminal says cancelled. See late terminal cancellations. Historical counter bills can remain visible after counter access lapses; that does not authorize new sales. Reconnect to read the latest state.
Next steps
- Refunds — the full approval workflow once a refund is started, and how credit notes work.
- Customizing Your Invoice — the invoice builder, GST exemptions, and delivery settings behind what shows on this screen.
- Shipping & Logistics — booking carriers, printing labels, and tracking.
- Customer Pickup & Gift Wrap — turning these extras on and configuring them.