How wholesale customers order with Quick Buy
Process Wholesale Quick Buy lets a logged-in wholesale customer (B2B customer) order many products from one page: they search or browse the product table, enter quantities, select Add to order, then review everything on the order details page and check out. The order is completed either through the normal Shopify cart and checkout, or, when the customer picks a net payment term, as a Shopify draft order with payment terms. Quick Buy needs the Enterprise or Professional plan; payment terms need Enterprise or Professional.
At a glance
- Plan: Enterprise or Professional. Net payment terms: Enterprise or Professional.
- Who can order: Logged-in customers with the
B2Bcustomer tag - Order steps: Add to order > View Order > Add to cart (normal checkout) or a payment term > Checkout (draft order)
- Saved order: Kept by Process Wholesale for that browser until checkout, separate from the Shopify cart
- Setup: How to set up the Quick Buy wholesale order form
Who can see the Quick Buy form#
Only a customer who is logged in and has the customer tag B2B (in any capitalization) sees the Quick Buy form. A pending customer tagged B2B_Registeration sees the pending approval message. Visitors who are not logged in, and other customers, see the signup form or a lock screen, as chosen in the block settings. See what visitors who are not wholesale customers see.
The Quick Buy product table#
The form is headed Quick Buy Form and has these columns:
| Column | What it shows |
|---|---|
| Product | Image, product title, variant title (for products with more than one variant) and "SKU: ..." when the variant has a SKU |
| Price | The customer's wholesale unit price, with the regular price struck through under it when they differ |
| Discount | The discount that applies, for example "20% off", "$5.00 off", "Fixed $30.00", or the list of quantity tiers such as "1-9 10% off" and "10+ 20% off" |
| Quantity | A quantity box with - and + buttons, and the stock line under it |
| Subtotal | Price multiplied by the quantity typed in the row |
| Action | Add to order, or Select variant for products with more than one variant |
Each row starts on the first variant that is available for sale. On screens 768 pixels wide or narrower, the price moves into the product cell. How the price is worked out is explained in how Quick Buy calculates the prices it shows.
When the customer qualifies for a cart value, cart quantity or loyalty discount, a Cart Discount Tiers box at the top and bottom of the form lists its levels.
Searching and browsing products#
- Search. The Search products... box filters the table as the customer types. Clear returns to page 1. When the block is limited to a collection, search matches the product title or any variant SKU within that collection. Otherwise it uses Shopify's product search over the store. When nothing matches, the table shows "No results found".
- Pages. The form shows the number of products set in Products per page (10 by default). Without a collection, the customer moves between numbered pages. With a collection, or while searching, the customer uses « Prev and Next ».
Choosing a variant#
For a product with several variants, Select variant opens a small panel with one drop-down per option, such as Size and Color, and its own Add to order button. When the customer changes an option, the row updates its image, SKU, stock line and price to that variant. If no variant has the chosen combination, the row stays as it was. The panel closes after the product is added.
Quantities and stock#
- Quantity boxes start at 0 and cannot go below 0.
- For a variant that tracks inventory and does not allow selling when out of stock, the stock line shows "{n} units left", + stops at the stock level, and a typed number above stock is lowered to the stock level.
- A variant that is not available for sale shows "Out of stock", and its quantity box and button are disabled.
- A draft product (shown only when the block uses a sort order) shows "Not available" and cannot be added.
- When Show stock quantity is off, the stock line is hidden, but the stock limits still apply.
Adding products to the order#
Add to order saves the row's quantity to the customer's Quick Buy order.
- With a quantity of 0, the cursor moves to the quantity box and the hint "Enter quantity" appears for 2 seconds.
- If the quantity is more than the stock left, the customer sees "Cannot add {qty} items. Only {stock} available." If the variant is out of stock: "{title} is out of stock."
- When the product is already in the order, the quantity is added to the saved quantity.
- On success, a message titled Item added to order: shows "{quantity} x {product} - {variant} added to order" for 5 seconds, and the row's quantity goes back to 0.
- If the order cannot be saved, the customer sees "Couldn't update your order. Please try again."
- If the same order was changed in another browser tab, the customer sees "Your order was changed somewhere else, so it's been refreshed. Check it and try again." and the page shows the up-to-date order.
When reorder is turned on, each row also shows "✓ {n} in your order" with the units of that product already saved.
The order summary#
The summary box at the bottom of the form shows:
- Wholesale discount: the total saved on product prices
- Cart discount: the cart value, cart quantity or loyalty discount
- Final price with the original total struck through when it is lower
- View Order, which opens the order details page
The summary counts saved order lines plus any quantities typed but not yet added. Quantities typed but not added are not saved: select Add to order before leaving the page or selecting View Order.
The order details page#
View Order opens the Order details page, with a Back to form link. Its columns are Product, Price, Discount, Quantity, Amount and Action, followed by the same summary.
- Change a quantity. Type a new number or use - and +. The lowest quantity is 1. A ✓ and a ✕ appear: ✓ saves the change and reloads the page, ✕ puts the old number back. + stops at the stock level with "Cannot add more than {n} items.", and a typed number above stock is lowered with "Only {n} items are available in stock."
- Remove a line. Remove deletes the line and reloads the page.
- Empty order. The page shows "Your cart is empty. Add products to your order." and an Add products button back to the form.
Payment terms and the order note#
When you turn on net payment terms (Enterprise or Professional), the order details page shows a Payment terms row with one button per term you selected, in this order: Due on Receipt, Due on Fulfillment, Net 7, Net 15, Net 30, Net 45, Net 60, Net 90. An information icon explains that with a term the customer completes the order now and pays later, and that to pay now they leave terms unselected and use Add to cart.
- The customer can select one term at a time. Selecting it again clears it.
- While a term is selected, an Order note box appears ("Do you want to add any note to your order?") and the checkout button reads Checkout instead of Add to cart.
- With Allow net terms for specific customers only on, only customers tagged
B2Bnettermssee the terms. - With Force Payment Terms on, the checkout button is hidden and the page shows "Please select a payment term to proceed with your order." until a term is selected. The setting's help text in the app says the "Add to Order" button is hidden; the button that is hidden is the order details page's checkout button. Product rows keep their Add to order buttons.
You set all of this in Process Wholesale under Settings > Net terms. Up to 3 terms can be selected.
How a Quick Buy order is completed#
Without a payment term: the normal Shopify cart#
When no term is selected, Add to cart does this:
- Adds every line of the Quick Buy order to the customer's Shopify cart, together with anything already in that cart.
- Sets the cart attribute
Added Viatoprocesswholesale. - Clears the saved Quick Buy order.
- Opens the cart page, where the customer checks out as usual.
The wholesale prices at checkout come from the Process Wholesale discounts in Shopify checkout, not from the form. The order note is not sent in this path.
With a payment term: a draft order#
When a term is selected, Checkout does this:
- Creates a Shopify draft order with the order's products and quantities, the selected payment terms, the order note and the customer's email address.
- Clears the saved Quick Buy order.
- Sends the customer to the draft order's invoice checkout. If no invoice link comes back, the customer is sent to their account page.
What to do with the draft order afterwards is covered in how to offer net payment terms.
What you see in Shopify admin for a Quick Buy order#
| Path | What appears in Shopify admin |
|---|---|
| Without a payment term | A normal order from the customer's checkout. Process Wholesale adds the order tag processwholesale when a Process Wholesale discount was applied to the order. |
| With a payment term | A draft order tagged processwholesale, with the custom attribute Added Via: processwholesale, the customer's email address, the order note and the selected payment terms |
For the draft order, Process Wholesale sends the products and quantities only. It does not copy the prices shown in the form; the draft order accepts automatic discounts. Process Wholesale does not email you when a draft order is created, so check your draft orders in Shopify admin. See which orders count as wholesale orders for how the processwholesale tag is used.
The saved Quick Buy order#
- Where it is kept. Process Wholesale keeps the order for the customer, separate from the Shopify cart. Products added with Add to order do not appear in the Shopify cart until the customer selects Add to cart.
- It follows the browser, not the customer account. The saved order is linked to the browser where it was created. On another device or browser, the customer sees a different (often empty) order. Anyone who logs in to the store on that same browser sees the same saved order.
- When it is restored. Every time the Quick Buy page loads in that browser. The form uses it for the summary, tier quantities and "in your order" notes.
- When it is cleared. At checkout, in both paths, before the customer reaches the cart or the invoice. Otherwise it is kept with no time limit.
- Deleted products. Lines whose product or variant was deleted in Shopify are removed from the order automatically.
- Lines that cannot be loaded. If product details cannot be loaded for some lines, those lines stay in the order but are not shown, and checkout is blocked with "Some items in your order couldn't be loaded, so it can't be checked out yet. Reload the page to try again."
What Quick Buy does not have#
- No minimum quantities, quantity increments, case packs or maximum quantities in the form. To require a minimum, use a minimum order quantity or a minimum order amount, which are checked in Shopify checkout.
- No PO number, requested delivery date or shipping address fields. The only extra field is the order note, and it is sent only with a payment term.
- No option to email the order or send it as a quote.
- No sharing of the saved order between devices or browsers.
Limits and things to know#
- Stock check on Add to order. Units already in the order are not counted, so an order can hold more than the stock. On the order details page, + stops at the stock level and a typed number above stock is lowered to it.
- Summary when a product is both saved and typed. If a variant is already in the order and the customer types a quantity for it in a visible row, the summary counts only the typed quantity until it is added.
- Some messages are always in English, including the stock messages, "Enter quantity", "No results found", "« Prev" and "Next »". See Quick Buy problems and fixes.
- The saved order has no expiry. An order left on a browser stays there until checkout.
Troubleshooting#
| Symptom | Likely cause | Fix |
|---|---|---|
| The customer's order is empty on a new device | The saved order belongs to the browser where it was created | Ask the customer to finish the order on the original browser, or add the products again. |
| Products added in Quick Buy are not in the Shopify cart | The Quick Buy order is separate until Add to cart | Ask the customer to open View Order and select Add to cart. |
| Checkout shows "Some items in your order couldn't be loaded..." | Product details for some lines did not load | Reload the page. If it continues, contact Process Wholesale support. |
| No payment term buttons | Net terms are off, no terms are selected, or the customer lacks B2Bnetterms with customer-based terms on |
Check Settings > Net terms. |
| The checkout button is missing | Force Payment Terms is on and the customer cannot see any term | Turn off Force Payment Terms or Allow net terms for specific customers only, or tag the customer B2Bnetterms. |
Frequently asked questions#
Where is the Quick Buy order saved, and when is it cleared?#
Process Wholesale saves the Quick Buy order for the browser where the customer created it, separate from the Shopify cart. It is restored each time the Quick Buy page loads in that browser and is cleared when the customer starts checkout. There is no expiry.
What happens when a customer chooses net payment terms in Quick Buy?#
Quick Buy creates a Shopify draft order with the selected payment terms, the order note and the customer's email address, clears the saved order and sends the customer to the draft order's invoice checkout. The draft order is tagged processwholesale.
Why can't a customer see their Quick Buy order on another device?#
The saved Quick Buy order is linked to the browser, not to the customer account. On another device or browser the customer starts with a different order.
Does Quick Buy support minimum quantities, case packs or PO numbers?#
No. Quick Buy has no minimum or increment rules and no PO number field. Use a minimum order quantity or amount rule for minimums, and the order note (available with payment terms) for references.
Do I get an email when a customer places a draft order through Quick Buy?#
No. Process Wholesale does not send a notification for Quick Buy draft orders. Check draft orders in Shopify admin.