CellNest — product requirements
CellNest is an online phone store. Shoppers browse a faceted catalog, choose a storage and colour variant with its own price and stock, compare phones, fill a cart with a per-customer limit, apply coupons and trade-in credit, pick an installment plan and pay through a checkout that reprices the cart, books a delivery slot and verifies the card with a one-time code.
Problem. Phones are expensive and come in many near-identical models and variants. Shoppers must be sure the exact variant lands in the cart at the right price, that limits and discounts are applied correctly, and that the amount they approve is the amount charged.
Users
- Shopper — Find the exact phone and variant, understand the final price including discounts, trade-in and instalments, and pay safely.
- Store manager — Limit purchases per customer, apply each coupon rule once and never sell a variant that is out of stock.
Goals
- The variant chosen is the variant bought, at the variant price.
- Every discount, credit, shipping fee and instalment figure is correct to the cent.
- An order exists only after the price the buyer approved has been verified by a one-time code.
- Catalog filters never show products that do not match.
Out of scope
- Real payments, shipping or email
- Review content
- Accessibility audit
Contents
Catalog, facets and sort
Phones are listed in pages with facets, a price range and a sort control.
- The first page reads "Showing 12 of 29 phones"; "Show more" shows "Loading…" then "Showing 24 of 29 phones"; again gives "Showing 29 of 29 phones" and the button disappears.
- Every card name is unique.
- The Accessories page shows "Showing 6 of 6 accessories" and no phone cards.
- Brand "Nova" shows "Nova (7)" and "Showing 7 of 7 phones", every name starting with "Nova", and a "Nova" chip.
- Adding Storage 512 GB leaves Nova X12 Pro, Nova X12 Pro Max and Nova C14 Plus; after a reload the URL keeps ?brand=Nova&storage=512.
- Condition "Renewed – Excellent" on top shows "No products match these filters".
- "Clear all filters" returns to "Showing 12 of 29 phones" with no chips.
- Min 300 and Max 500 give chips "Min $300.00" and "Max $500.00" and only prices in that range.
- "Price: low to high" starts with Kestrel M10 at $324.00; "Price: high to low" starts with Zenith A13 at $499.00, also reachable with ArrowDown and Enter.
- Min 600 with Max 400 shows "Min price must not exceed max price" and leaves results unchanged.
Variants, stock and limit
Each phone has storage and colour variants with their own price and stock.
- Nova X12 Pro shows "From $899.00" with Storage "— choose one".
- Add to cart without storage shows "Choose a storage size" and the badge stays 0.
- 128 GB is $899.00, 256 GB is $999.00 ("or $83.25/mo for 12 months at 0% APR") and 512 GB is $1,149.00.
- Glacier, 256 GB, quantity 2 shows "Added 2 × Nova X12 Pro 256 GB to your cart", badge 2.
- The cart has one line "Nova X12 Pro" · "256 GB · Glacier", Qty 2, $1,998.00 ($999.00 each), Shipping Free, with no Pro Max, Renewed or Clear Case line.
- Glacier 512 GB is a line "512 GB · Glacier" at $1,149.00 with Total $1,149.00.
- Nova X12 Pro 512 GB in Sunset reads "Sold out", shows "Nova X12 Pro 512 GB in Sunset is sold out." and has no Add to cart button.
- "Notify me" with an email shows "We'll email <address> when Nova X12 Pro 512 GB in Sunset is back."
- Switching to Glacier (keyboard ArrowRight/ArrowLeft works) makes 512 GB buyable at $1,149.00.
- With 2 Graphite 128 GB, adding 2 Glacier 128 GB fails with "Limit 3 per customer for Nova X12 Pro. You already have 2 in your cart."
- Adding 1 Glacier succeeds and the badge reads 3; "+" on the Graphite line shows "Limit 3 per customer for Nova X12 Pro" and keeps quantity 2.
- Moving a saved line back to the cart fails with the limit message and the line stays under "Saved for later".
Cart, coupons and shipping
The cart supports removal with undo, one coupon per order and a free-shipping threshold.
- "Remove" then "Keep it" leaves the line.
- "Remove" then "Remove" shows "Removed Orbit S9 from your cart" with "Undo" and "Your cart is empty".
- Undo within 6 seconds restores the Orbit S9 · 256 GB · Cobalt line at $899.00.
- Nova X12 Pro 128 GB ($899.00) and a $15.00 cable: CELL10 shows "CELL10 applied", discount −$89.90 (phone only) and Total $824.10.
- SAVE50 shows "SAVE50 replaced CELL10 — one code per order", discount −$50.00 and Total $864.00.
- SPRING25 shows "SPRING25 expired on 30 Sep"; BOGUS shows "\"BOGUS\" is not a valid code"; SAVE50 stays applied.
- Removing the phone shows SAVE50 as "—" with "Add $485.00 more to use SAVE50" and Total $20.99.
- Applying CELL10 to one Nova X12 Pro 128 GB gives −$89.90 and Total $809.10; applying it again leaves both unchanged.
- Nova X12 Pro Max 1 TB, subtotal $1,349.00: CELL10 gives −$100.00 (not $134.90) and Total $1,249.00.
- A $15.00 cable shows "Add $35.00 for free shipping", Shipping $5.99 and Total $20.99.
- Adding a $19.00 and a $29.00 accessory gives Subtotal $63.00, Shipping Free, Total $63.00 and no hint.
Trade-in
A six-step wizard quotes credit for an old phone and applies it to the order.
- Next without a device shows "Choose your phone's brand and model".
- Nova X11 Pro, answers "Yes", "Light scratches", "Good — normal wear", "No, it is off" quote "$323.00 credit" with quote id TQ-… valid 30 minutes.
- Going Back and changing Body to "Dents, bends or cracks" quotes "$247.00 credit" with earlier answers kept.
- "Apply credit" shows "Trade-in credit of $247.00 applied", a "Trade-in: Nova X11 Pro (scratched screen)" line of −$247.00 and Total $652.00 on a $899.00 phone.
- Orbit S8 with device lock on shows "$0.00 credit", "Turn off device lock (Find my phone) before trading in." and a disabled "Apply credit".
- Power "No" shows "Phones that do not power on are recycled for free (no credit)."
Checkout and payment
Checkout takes an address, a delivery slot, a payment plan and a verified card payment.
- Checkout shows "Sign in to check out. Your cart is kept."
- A wrong password shows an error alert and stays on Sign in.
- After a correct sign-in checkout opens at step 1 with Full name "Jordan Lee" and Order summary total $499.00.
- Address step offers five day tabs (no Sunday); the "17:00 – 21:00" window can be chosen while the first day 8:00 – 12:00 window shows "Full" and cannot be chosen.
- Orbit S9 Cobalt 128 GB: "Pay $799.00" shows "Prices changed": "Orbit S9: $799.00 → $749.00", New total $749.00.
- "Pay new total" opens "Verify it's you" for $749.00 on the card ending 4242 with a 1:30 countdown; the code arrives as a notification about 1.5 seconds later and disappears after about 8 seconds.
- The correct code shows "Thank you! Your order CN-2026-NNNNNN has been placed.", status Processing, Total $749.00 and the chosen delivery window; the cart is empty.
- Total $74.00: wrong codes show "Wrong code. 2 attempts left.", "Wrong code. 1 attempt left." then "Too many wrong codes — payment cancelled" with inputs and Confirm disabled.
- "My orders" shows no new order.
- Phone "555" reopens step 1 with "Enter a phone number for the courier".
- Expiry 01/24 reopens step 3 with "Card has expired".
- Card 4000 0000 0000 0002 shows "Your card was declined. Try another card." with no verification modal.
- Nova X12 Pro 256 GB offers: Pay in full $999.00; 6 months · 0% APR $166.50/mo; 12 months · 0% APR $83.25/mo; 24 months · 9.9% APR with a total above $999.00.
- 12 months makes the pay button read "Pay $83.25 today (plan 12 mo)".
- A cart holding only a cable offers only "Pay in full".
Orders and compare
Fresh orders can be cancelled and up to three phones can be compared.
- A $29.00 charger totals $34.99 including $5.99 shipping; the order shows status Processing and "Cancel order".
- Confirming without a reason shows "Choose a reason".
- "Ordered by mistake" shows "Order CN-2026-… cancelled. Your refund will appear in 3–5 business days.", status Cancelled, "Cancelled: Ordered by mistake" and no Cancel button.
- A fourth tick shows "You can compare up to 3 phones. Remove one first." and the tray reads "Compare (3/3)".
- "Compare now" shows a table with chip "Helix 9" for both Nova phones and "Quark 4" for Orbit S9.
- "Show differences only" hides identical rows and keeps Price from, Display and Battery.
Non-functional requirements
- A client request for a lower price or a fourth unit is refused.
Glossary and rules
| Variant | A storage and colour combination of one phone model with its own price and stock. |
|---|---|
| Trade-in credit | A quoted amount deducted from an order in exchange for an old phone. |
| Verification code | A six-digit one-time code that confirms the card payment. |