Inventory and stock

Sell an item on WhatsApp with ShopLink

Turn any inventory item into a shareable buy-link — a public product page at {your-subdomain}.bsensor.app/shop/{slug} your customer can open from a WhatsApp status, a Facebook post, or a printed QR code, pay you on the spot via Paystack, and pick up at the shop.

You do not need a website, a developer, or a marketplace account. You do not need to enter the customer's details — the customer types their own name, phone, and email at checkout. The money lands in your Paystack account using the payment gateway already set up on your tenant.

Before you start

  • Paystack must be connected for your shop. Ask an administrator to configure it under Setup → Payment gateways if you haven't paid a bill online from this tenant before. If Paystack isn't set up, the Pay button on the customer page won't work.
  • The item must have a selling price — customers can't pay for an item with no price.
  • At least one photo helps a lot — customers scroll past listings that don't show what the product looks like.

Steps

  1. Open the item from Inventory → click the item name to open its detail page.
  2. Click the Storefront tab (next to General, Pricing, Batches).
  3. Turn on Show on public shop. A short web address (the shop slug) is suggested from the item name — you can edit it, but keep it short and easy to read (mens-haircut, not Item0087).
  4. Fill in what a first-time buyer would want to know:
    • Long description — a paragraph or two. Click AI-suggest details to have BusinessSensor draft one for you; you can edit or replace any part before saving.
    • Specifications — the label / value rows show up as a spec table on the shop page (Size / 500ml, Weight / 250g, and so on).
    • Video link (optional) — paste a YouTube or Vimeo URL to embed a demo video.
    • Meta title & description — used for the little preview WhatsApp shows when someone shares your link. AI-suggest fills these in too.
  5. Scroll to Gallery images and add photos in either of two ways:
    • Upload image — pick a photo from your phone / computer.
    • AI-suggest photos — the same picker used by Inventory → Menu Photos proposes AI-generated + stock candidates for the item name. Click one; it uploads straight into the gallery. The button only appears if AI photo providers are set up on your deployment. Tap the star on your best photo to mark it Primary — that's the picture WhatsApp will pull for the link preview.
  6. Save the item.
  7. Click Copy shop link on the Storefront tab (or open https://{your-subdomain}.bsensor.app/shop/{your-slug} in a new tab to preview). Paste it into a WhatsApp broadcast, Facebook page, Instagram bio — anywhere your customers are.

That's it. When a customer opens the link:

  • They see your shop's name, the product photos, the price, and the description.
  • They type in their name, phone (WhatsApp), and email, choose a quantity, and click Pay & reserve.
  • They're taken to Paystack, pay with a card / bank transfer / USSD / Opay wallet, and Paystack sends them straight back to your shop page with a green "Payment received" banner.

What happens on your side when a customer pays

  • A new guest customer is created (if their phone number hasn't bought before) with the name and email they typed.
  • A new shop order (a CommerceSession internally) is opened with the item and quantity, tagged AwaitingPayment until Paystack confirms, then flipped to Paid.
  • The money lands in your Paystack settlement account on Paystack's usual T+1 schedule.
  • You'll see the order in the Shop orders view (coming with the next release) — for now, ask an administrator to query CommerceSession by the customer's phone if you need to check on one.

The customer will be waiting to hear from you — call or WhatsApp them on the phone number they typed to arrange pickup or delivery.

The customer's paid-thank-you screen now includes a Message the shop on WhatsApp button (as long as your tenant has a phone number set on Setup → Organisation Profile). If the customer taps it, WhatsApp opens on their phone with your business number and a message like "Hi {shop}, I just paid for an order on your shop. Please confirm pickup / delivery details." pre-filled — you'll usually hear from them there before you finish reading the Paystack email. The same button is also shown in the shop-details card on every product page, so prospective buyers can ask questions before paying.

Tips

  • Slug advice — think of the slug as the item's nickname on the web. Short, lowercase, dash-separated, unique to your shop. Once you've shared a link publicly, don't rename the slug — old links stop working.
  • Preview before you share — open the link in your own phone's browser first. Check the price, spec table, and hero image look right.
  • Update, don't delete — if a photo is wrong or the description has a typo, edit and save. The public link updates in seconds; you don't need to re-share it.
  • Turn off temporarily — untick Show on public shop to hide the item without losing anything. Reticking it puts the link back live with the same slug.
  • Small margins add up — a WhatsApp broadcast to 100 customers costs nothing; two of them buying pays for a month of BusinessSensor.

Common problems

  • The customer says "It says the item's not found" → check that Show on public shop is still ticked and that you didn't change the slug. If the slug was edited, the old link is dead — copy the new one and re-share.
  • Customer clicks Pay but nothing happens → Paystack isn't configured for your tenant. Ask an administrator to set up Paystack under Setup → Payment gateways → Paystack, then try again.
  • "Insufficient shop information" on the page → the item has no selling price. Set a price on the Pricing tab and save.
  • WhatsApp shows a plain link with no image or title → your item has no primary photo, or the meta title / description are blank. Upload a photo, mark it primary, click AI-suggest details on Meta title, and save. WhatsApp usually re-fetches the preview within minutes — some devices cache aggressively, so a fresh WhatsApp contact will see it right away.
  • "Payment pending" banner after the customer paid → Paystack hasn't confirmed the transaction to us yet (usually a few seconds). Ask the customer to refresh the page; if it still shows pending, the payment may have failed on Paystack's end — check your Paystack dashboard.
  • The customer typed the wrong phone number → the order is still paid; you'll need to reach them by email. This is the trade-off with guest checkout — no signup means no phone verification. For repeat buyers, offer to save their details in your customer list.

See it working on your own business

Start a 45-day free trial — no card needed — and follow this guide in your own practice company.