Which products are coming back, and why. Change of mind → back to stock (qty 1). Broken / defect → flagged 🔧 broken, pending repair.
2 General info
When the return happened, and any remark worth keeping on the record.
3 Refund
How much goes back and how. Store credit keeps the money in the shop — it never leaves an account.
4 Proof
The receipt or transfer screenshot for the money going back.
Autosaves as draft
Create credit note
CN — on save
Credit note
Refund
Record payment
One receipt, applied across the customer's open invoices.
OR — on save
Autosaves as draft
Record payment
One payment, applied across the supplier's unpaid bills.
PV — on save
Autosaves as draft
Edit payment
Dashboard
Recent salesView all →
Pending payoutsView all →
💵 Deposits — balance dueView all →
📈 Sales trend
🛍 By channel
📦 Inventory health
💰 Money & inbound
💰 Money map — where the cash is right now
🛒 What to buy next
Auto-ranked from waitlist demand + how fast each brand sells + current stock gaps.
🎯 Price Check learning
How accurate your market scans are, and how the items you accepted actually performed.
🏆 Top brands & items (this period)
⏱ Sell-through speed (last 12 months)
🚀 Capital velocity (own stock · last 12 months)
% return per week your cash earns while parked in each brand / supplier — buy more of the top, less of the bottom.
⏳
Loading inventory…
Consignors
Suppliers
Contacts
Export
Bukku Sales CSV
Sold items only — import to Bukku as sales invoices
Customer Sourcing
Products customers want you to source but you don't stock yet. Track requests, budgets, and deposits.
${''}
Activity Log
Full audit of every change — additions, edits, sales, repairs, returns, payouts and deletions. Click an entry to open the record it belongs to.
Bukku Recording
Track which receipts (purchases), invoices (sales) and customer returns (credit notes) you've already keyed into Bukku.
Consignment Payouts
Purchases
Every Stock In becomes a purchase receipt here. Attach the supplier invoice, mark it paid, and edit details — totals recalculate automatically.
Account
Expenses
Rent, marketing, packaging, fees and other running costs — each can be recorded in Bukku (Money out).
Director Own Use
Own-stock items taken by the director for personal use — non-cash drawings. The outstanding total accumulates until a dividend is declared, then "Settle against dividend" nets the drawings off.
Consignment
Files
Drop in invoices, receipts and any document. Give it a quick description (or let AI read it for you), then find it later just by typing.
🔐 Entrupy library
Every Entrupy certificate across the app — auto-collected from inventory items and authentication-service sales. Search by code, product, SKU or customer; tap a result to open the live certificate or its source record.
Shipping
Parcels coming IN from suppliers & consignors. Log the tracking code, then tap ✓ Received when it arrives.
Sales
Every payment received, newest first — across all invoices. Click an invoice to open it. Use 💵 Record payment (top right) to take a new one across a customer's open invoices.
Item-level credit notes raised from a sale (returns / price adjustments). Issue as store credit or leave outstanding. Open a sale → 🧾 Credit note to create one.
Every customer return / refund you've recorded, newest first. Click an invoice to view it.
🗑 Trash
Deleted items are kept here so you can restore them. Restoring puts the record back exactly where it was. Only admins can permanently delete.
Settings
Most settings sync across all your devices. Lists (categories, channels, payments) and the AI key save instantly; the rest save with the buttons shown.
💾 Data backup
Download a full copy of your data — sales, inventory, expenses, fund transfers, purchases, refunds, accounts, consignors, customers & more — as one JSON file. Do this before any big change and keep the file somewhere safe.
🏢 Business profile
Your store identity, branding and how the app is laid out.
Company profile
Used on invoices, consignor statements and agreements. The more you fill in, the more professional your invoices look.
Payment details (printed on invoices so customers know how to pay)
Sender / pickup address
The "from" details on shipping labels and courier bookings.
Branding
Company logo (shown in sidebar)
Upload logo
Accepts PNG, JPG, SVG. Recommended size: 300×120 px or wider. Transparent PNG works best on the dark sidebar.
The browser-tab icon already follows your logo. For the installed home-screen icon, tap ⬇ App icons from logo, then place the 3 downloaded files into your public/ folder and redeploy.
Colour theme
Layout
Pick the page that opens on launch; drag to reorder sidebar items or untick to hide them.
Groups — collapsible categories, like channels. Name them, then assign menu items below.
Sidebar menu — drag to reorder, untick to hide, pick a group
⚙️ Operations & finance
Default costs, consignment terms and currency rates.
Costing defaults
Pre-filled when you stock in an item (you can still override per item).
Added to landed cost of imported items.
Per-bag authentication cost.
Consignment policy
Shown in the consignment form & agreement. The consign period also drives the "due for return" alerts.
Consignment T&C
One clause per line. Shown at the bottom of the consignment intake form.
Agreement description (the paragraph shown under the agreement header)
Exchange rates (to MYR)
How much 1 unit of each currency equals in MYR. Auto-updates daily from live market rates.
🏷️ Dropdown lists
Options that appear in the forms. Changes here save instantly.
Sales Channels
These appear as options when recording a sale. Drag the ⠿ handle to reorder — the sequence carries into the sale form.
Product Categories
These appear as options when adding or editing an item. Drag the ⠿ handle to reorder.
Payment Methods
Available payment options when recording a sale. Drag the ⠿ handle to reorder.
✨ AI & integrations
Powers the AI chat, Shopify descriptions and market-price estimates.
✨
AI Assistant
Paste your Anthropic API key to switch on the AI features. Pay-as-you-go & very cheap (a few sen per action). Get a key at console.anthropic.com → API keys.
Shopify
Checks which items are live on your Shopify store (by SKU) and shows a "✓ On Shopify" badge on each product. Read-only. Auto-refreshes in the background when open (every ~2h); tap below to refresh instantly.
🔐 Admin & data
Team accounts, your password and data backups.
Users
Admins have full access. Staff cannot access Settings or delete items.
Loading users…
🔒 Staff permissions
Change my password
Data Backup
Download a full snapshot of every database collection — inventory, sales, contacts, consignors, suppliers, purchases, expenses, transfers, accounts, Bukku, files index, stock checks, appointments, activity log and settings — as one JSON file. Do this weekly and keep it somewhere safe (cloud drive + a USB). Photos and file attachments live in Firebase Storage and are backed up separately (see note below).
🛎 Services
Services you sell in the Sales section — these have no quantity (e.g. Authentication, Bag spa, Watch service, Delivery). On the sale form, pick one from “🛎 Add a service.” Add new ones any time; the list syncs to the whole team.
💬 Message templates
Every canned WhatsApp/email message the app drafts — edit the wording here. Changes sync to the whole team. Keep the {placeholders}; they're filled in automatically.
Used when a customer has no language set. Per-customer language overrides this and auto-translates their WhatsApp drafts.
📜 Activity & health
Who did what, when — and any app errors caught on team devices.
📄 Document expiry tracking
Agreements, permits, insurance policies, tenancy — the dashboard reminds you 30 days before each renewal.
🗑 Trash / Recycle Bin
Anything you delete (products, sales, customers, consignors, suppliers) is kept here so you can restore it. Open it to review or restore deleted records.
🔗 Outbound webhooks
POST a JSON payload to Zapier, Make, or a Google Apps Script web app every time a sale is recorded — extend the app without any code. Leave blank to disable.
🔁 Duplicate SKUs
Items that share a SKU (should be unique). Review each pair and move the wrong copy to Trash (recoverable).
📤 Export
Export your inventory, sales and contacts to CSV for accounting or backup.
🕓 Activity log
A history of everything done in the app — who added, edited, sold, or deleted what, and when.
🎨 Display
Saves Business profile, Operations & finance. (Layout, lists and the AI key have their own save buttons.)
Record sale
Log a sale, link the item, take payment — one guided flow.
1 Customer & channel
Who bought it, and where the sale came from.
2 Items
What was sold — pick from inventory (it flips to Sold automatically) or add a service.
3 Sale details
The type of sale, the date, and how it reaches the customer.
4 Payment
Amount, discount, deposit, and the account it lands in. Every payment shows in the Payments tab.
Net after discountRM 0.00
⏳ Balance still dueRM 0.00
Tick when the customer hasn't paid yet (a reminder / awaiting bank transfer). The sale shows as Unpaid and the amount sits under Owing until you collect it.
5 Proof & notes
Attach the transfer receipt and jot any remarks or bundle terms.
Click to upload receipt (photo or PDF)
📄
Autosaves as draft
↩ Return to consignor
How does the consignor want their item(s) back?
Invoice
Set who / when
Purchase
Add supplier
Add consignor
Click to upload IC / Passport photoJPG, PNG — will be compressed
Add customer
🤝 Consignor payout details
📥 Import customers
Paste rows copied from Excel or Google Sheets (or comma-separated). Columns, in order: Name, Phone, Email, IC, Address, Notes. Only Name is required. A header row is optional — it's detected automatically.
↩ Refund in
Money coming back to you — a supplier refund (returned/cancelled stock) or a consignor clawback (recovering a payout after a refund).
📥 New inbound delivery
Pick the bag you sent for repair — marking it received here finishes the repair.
💸 New expense
1 Details
What the expense was, when, and who you paid.
2 Amount & account
How much, and which account it was paid from.
💳 / 💵 Paying from a Credit card or Cash account auto‑skips the maker/checker (no transfer to verify). Bank transfers still go through verification.
3 Attachments
The supplier invoice or receipt — photos or PDFs.
📎 Tap to attach receipt(s)
4 Options
Make this a recurring monthly cost.
🏦 New fund transfer
1 Transfer
Which account the money left, where it went, how much and when.
2 Details
What it was for, the reference, and any link to a trip.
3 Attachment
The purchase invoice or transfer slip.
📎 Tap to attach the purchase invoice
🏦 New account
📎 Tap to upload a logo
➕ Record money in
1 Details
What the money is for, how much, when, and which account it moves.
2 More
The method and any reference or memo.
3 Attachment
A receipt or proof for this movement.
📎 Tap to attach a receipt
👤 Take item for director use
The figure to deduct from the director's dividend — prefilled with the item's landed cost when you pick, adjust if the agreed figure differs.
The item leaves stock as Director Use (reversible). No money moves — the drawing amount accumulates against the director and is deducted when dividends are declared.
💰 Settle drawings against dividend
Tick the drawings this dividend covers. They stop counting in the outstanding total and move to the settled history — the items stay with the director.
🤝 Consign back to the shop
The same item (same SKU) goes back on sale as consignment — the director gets the payout when it sells, like any consignor. It appears in Consignment and Bukku intake as usual.
New trip
Opening cash on hand (optional)
Yen you already hold at the start of this trip — e.g. carried over from a previous trip, before any ATM withdrawal. Counts as ¥ available so the leftover balance is right.
ATM withdrawal
📎 Tap to attach the ATM slip
📎 Tap to attach the rate slip
Record a spend
🔗 After saving, you'll be offered to link this to an unpaid purchase invoice you already created — paying it off from this trip.
📎 Tap to attach a receipt (optional)
✅ Verify (checker)
Click to upload the bank transfer receipt
As checker you confirm the maker's purchase invoice and attach proof the bank transfer was made. Your name and time are recorded.
When you file something into a folder, the app remembers it by supplier and auto-files the next one. You can also add your own keyword rules.
📌 Learned by supplier
🔑 Your keyword rules
🔀 Merge duplicate customers
Likely duplicates, grouped by phone number or identical name. Merging keeps the most complete record, fills in any missing details from the others, reassigns their sales & appointments, and moves the leftovers to Trash.
Add sourcing request
Contact profile
💳 Adjust store credit
Add user
💱 Exchange Rates
How much 1 unit of each currency equals in MYR. Auto-updates daily from live market rates; you can also edit any rate manually.
🛠 Send to repair
📤 While out, this bag shows under Shipping → Outgoing. When it's back, create an Inbound record (source “Repair”) to log its return.
💳 Record payout
📤 This sends the payout to Purchases as pending. An admin (checker) does the actual bank transfer, attaches the receipt, and that marks it paid.
💵 Record payment
🚚 Shipping
For Grab/Lalamove, paste the live tracking URL here — the Track button opens it directly.
📦 New shipment
For something you need to send that isn't a sale (gift, replacement, return, document…).
Choose courier
Pick a courier, then enter the tracking number
📅 New appointment
↩ On save, this consignment item's return will be recorded automatically (self-pickup).
📥 Stock In — one receipt, multiple items
🔧 Customise form
Drag ⠿ to reorder fields. Tap the eye to hide a field you don't use. Required fields can't be hidden. Saved for the whole team.