MT
Mobility Services
Mobility Traders · internal ops

Every device,
every stage,
in one console.

Receiving, polishing, glassing, outsourced repair and RMA — tracked from the moment a batch lands to the moment it ships.

12Workspaces
3Locations
24/7Live sync
Mobility Services
Staging
?
User
Install this app on your device for quick access

This login is for Mobility Traders

Nothing in Mobility Services is assigned to this account. Use the Switch tab to go to Traders.

As of

Overview

Your refurbishing business at a glance.
Money
Days sittingOldest first
Devices by location
Pending revenue by batch
Owed to partners
Owed by customers

Receive

Book devices in, price them, and print their labels.
1Batch
Add to an existing batch instead

Open batches (nothing shipped from them yet) can take more devices — new devices join under the batch's original number and received date. Tap a batch to start.

Batch services — tap to set a default for new rows & bulk-update ticked rows
Show polishing devices as awaiting pickup — appears in Polishing → To collect (when received at Main)
2Devices

One row per model: pick the model, quantity and service(s). Paste IMEIs (one per line) and the quantity fills in automatically. To change many rows at once: tick them and use the toolbar above the table. Price adds up each selected service from the customer's pricing.

Bulk add — paste services & models with quantities

Put a service on its own line, then the models under it with a quantity (a dash before the number is fine). A new service line switches the service for the lines below it.

3Notes & confirm
Reprint QR labels

Need more stickers later? Reprint a whole batch, or just one damaged label.

Received batches
Tap a batch to see its devices, then print any single label without typing a code. Today's batches are at the top.
RMA — customer return

Work wasn't done right, or the customer wants different work. Each returned phone usually comes back without its label — every row creates a fresh device entry + new QR label. Same work again = free redo. Different work = charged at the new service's price minus what was already paid (never below $0). Add a row per returned device.

Set for the batch, then apply to ticked rows — optional shortcut; you can still set each row on its own
Previously done — tap to set what was done before & bulk-apply to ticked rows
Tick rows below (or the header box), set the batch values above, then apply — it replaces prior work, decision, new work & paid on those rows.
Total: 0 devices
RMA log

Repair Receiving — import an Excel sheet

Pick the customer, choose the filled-in sheet, review the full report, then press Import once. Nothing is created until you press Import. Devices come in exactly like normal receiving — same codes, labels, prices and workflows.

Sheet for the customer — uses the customer picked above. They fill in model, IMEI (if they have it) and an x under each service; you import it on this tab when the phones arrive. No prices on it.

Scan

Open any device by code, see where it is, and move it.
Scan device
Tap to scan with the camera
Or type a code
Move devices — scan a batch of codes and move them all at once (Main ⇄ Repair Location)
IMEI lookup — no QR label? Type or scan the IMEI (the last 4–5 digits is enough) to find the device and its code
Reprint labels — scan a batch of codes

Scan or type each device, build up a list, then print them all or download a labels file you can print anywhere.

Active devices at each location

Ship out

Finished work back to its customer — scanning to ship is what locks the revenue.
Scan to build shipment list

Scan or type each device code to add it. Devices are grouped by service (Polish, Glass, etc.) automatically. When done, press Confirm to lock revenue.

Bulk add — paste or scan many codes at once
Draft ship-out — build it yourself; it keeps growing until you ship. Everyone sees the same draft.

Add devices as they come back. A device that stops being ready — a new issue found, sent back out to a partner, not at Main — is flagged, never removed, and blocks the ship for its customer until you resolve or remove it.

Bulk add — paste or scan many codes
one page per customer, tick boxes, IMEIs, and held-back devices listed separately. No pricing on it. Print it, or save it as a PDF from the print dialog.
Service done — pending ship-out — finished work sitting at Main, waiting to go back to the customer
0

Only devices whose work is completely finished appear here — a phone that still owes glass or an in-house repair is held back until that is done. Tap a company to load its devices into Scan to ship, where you can scan more codes before confirming.

Pending repair ship-out — repair customers' devices whose work is finished, waiting to go back
0

Devices appear the moment their in-house job is finished (and any polish or glass leg is done too). Not repaired devices are listed separately — they also go back to the customer. Tap a company to load its devices into the Repair ship out grid with the Excel 2x sheet and per-service prices.

Ship entire batch
Customer balances & payments

What each customer owes you from shipped devices. Record full or partial payments (Cash or Zelle) — tap Log to see the payment history.

Shipped historynewest first
AllThis week
Show prices in exports
Include notes in exports
Repair ship out — scan into the grid

Scan each repaired device — the grid below fills in the Excel 2 layout as you go, showing each service's customer price (or "x" if no price is set). Edit or exclude any row, then confirm to ship & lock revenue, or export the Excel 2 file.

Bulk add — paste or scan many codes at once
Money-blind roles see every marked service as an x with no prices and no totals — the same grid works as a plain work order.

Customers

Who sends you devices, what each one is priced at, and what they owe.
Add a customer
Prefixes every device code this customer ever sends (ABCW-01-01), so it must be unique — a code already in use is refused.
Prices missing
Who sees this page

Owners and managers only. Employees and polishing staff never see customer contacts or prices — the database masks them, not just the screen.

Customer bookeveryone who sends devices to Main — tap a name for the price book, payments and details

Statement

Everything a customer has with you right now, netted.
Customer statement

Everything we currently have for a customer right now, grouped by what needs doing. Pick a customer, then tap "Show full detail" to break it down by model.

Catalog

Models that autocomplete at receiving, and what each part costs us.
Device catalog

Add models so they show as suggestions when receiving.

Parts catalog — model + service → part name and our cost. Feeds the repair grid's "our cost", the pick lists, and the spend that Mark ordered logs.
Bulk paste — model and cost, one per line (for the service picked above)
Bulk update by spreadsheet — export a grid, fill it in Excel, import it back

Filter the models first (type iPhone to get only iPhones), export, fill in the cells, then import the same file. Blank cells are left alone — only what you type is changed, so you can do a few columns at a time. Put 0 in a cell to mean genuinely free; clear a value by typing x.

Import a filled grid

Choose the file you filled in. Nothing is saved until you review what it found and confirm.

Services

What you offer — and where prices are still missing.
Services & base prices

Add the services you offer. The base price is what you charge everyone by default when a customer has no custom price. Leave it at 0 to require a custom price per customer.

Slots — every polish batch still in progress, sorted by deadline. Only devices with a polish service count here. A batch leaves when Polishing has finished with ALL of them (done, not polished, or damaged) — other services and shipping are not part of the turnaround.
Ready to pick up from the Main location — phones received at Main with a polish service that still need to come over
Build a batch for Main

Scan everything that is ready to go back to Main. Nothing changes on the device yet — this is just the list. When the box is ready, close the batch and it shows as Processed at Polishing here and on Main's dashboard, and it drops out of the Processing at Polishing count. Main still scans them in on Receive back when they collect.

Bulk add — paste codes
Lines that cannot be added stay in the box with the reason.
Processed at Polishing — done, waiting for Main to collect
0
Past batches
Ship out of Polishing

Mark each device, then send the batch to its destination.

Every device you scan must belong to this customer.
Pick a customer and mode, then scan devices.
Re-inspect a device

Scan a device to see its current result, then set the correct one. Any revenue or damage cost is adjusted automatically (dated today).

Polishing ship-out history
Customer payments — polishing's direct-to-customer clients

What each customer owes from polish ship-outs. Record Cash/Zelle payments; tap a customer for the shipped-device report and payment log.

Customer statement — received / shipped out / on hand
Sections:
Add a supply
Supplies
Add polishing customer

Customers whose devices come straight to the Polishing Location. Here you only set and see their polishing price.

Send devices to the Polishing Location
Batches waiting at Main

Tap a batch to load its devices still awaiting polish, review the ticked list below, then send.

Or scan or type each device code, then move them all over at once.

Or load a whole batch by number

Type a batch number to see every device from it still at the main location. Untick any you're keeping, then send the rest.

Sent to Polishing — history

Every batch you've sent to Polishing, grouped by batch and send date. Tap a row to see its devices.

Receive devices back from Polishing

Pick what happened, then scan all the devices in that group. Each scan is applied right away. Switch the button and scan the next group.

Past receiving batches (from Polishing)
Log revenue
DateDescriptionAmount
Payroll calculator

Enter each person's hours and hourly rate — the total works itself out. Hours can be a number like 10 or 8.5, or a time like 10:30. Then save the total straight into payroll.

EmployeeHoursRateTotal
Total payroll$0.00
Log payroll
DateNotesAmount
Fixed monthly expenses
Variable expenses
DateDescriptionAmount
This month — resets on the 1st

Polishing Location

For past months, open Reports.
Processing at Polishing
0
still being worked on
Tap to filter
Processed at Polishing
0
done — waiting to be collected
Tap to filter
To collect
0
waiting at Main for polishing
Tap to filter
Companies & devices — everything at Polishing or waiting at Main · company → batch → devices
Money this month
Polishing outcomes — this month
Ready for pick up here — they stay here until Main receives them back
Net P/L — this month
$0.00
revenue − payroll − expenses − damage
Oldest on site — longest-waiting first
Supplies — low items need a top-up
Day to day polishing
Processed at Polishing · last 14 days
Goal tracker
Damage price list

Set what a damaged device costs you, by model. When you mark a device Damaged on Receive back, the matching cost is added to this month's damage expense automatically. The most specific match wins — "Apple iPhone 17 Pro" beats "Apple iPhone 17".

Type the model and price together, like iPhone 12 $85. It works out the full model (Apple iPhone 12) and the cost ($85). Lines with no price use the box above.

Damage expenses recorded — these hit this month's P/L
End-of-month report

Pick a month to see everything that happened at the Polishing Location: money in and out, what each customer sent and how much revenue they brought, damaged devices, and the bottom-line profit or loss.

Glassing Location

Send → receive back. Receiving back is what books the revenue.
$0
Revenue
$0
Payroll
$0
Damage
$0
Fixed
$0
Variable
0
Devices here
Net P/L — Glassing Location
$0
Glass outcomes — this month · resets on the 1st
Glass outcomes — all time — every device ever processed, NOT just this month
Devices done per month
What's at the Glassing Location now
Send devices to the Glassing Location

Scan or type each device code, then move them all over at once. Customers show as their short code.

Bulk add — paste or scan many codes at once
Or load a whole batch by number

Type a batch number to see every device from it still at the main location. Untick any you're keeping, then send the rest.

Sent to Glassing — history

Every batch you've sent to Glassing, grouped by batch and send date. Tap a row to see its devices.

Receive devices back from Glassing

Pick what happened, then scan all the devices in that group. Each scan is applied right away. If you mark one Damaged, its damage cost is added automatically.

Bulk receive — paste or scan many codes (all get the option above)
Past receiving batches (from Glassing)
Log glassing revenue
DateDescriptionAmount
Payroll calculator

Enter each person's hours and rate — the total works itself out, then save it into payroll. Hours can be 10, 8.5, or 10:30.

EmployeeHoursRateTotal
Total payroll$0.00
Log payroll
DateNotesAmount
Fixed monthly expenses

Recurring costs like rent or tools. These count every month.

Variable expenses
DateDescriptionAmount
Damage price list

Set what a damaged device costs you, by model. When you mark a device Damaged on Receive back, the matching cost is added to the damage expense automatically. A broad label like "Apple iPhone 15" covers all 15 models; the most specific match wins.

Damage expenses recorded
Glassing monthly report — pick a month; totals below reset on the 1st, past months are saved here

Repairs at Main

Repair work done here at Main — the phone never leaves Main. Same services, prices and outcomes as Repair Location; polish stays a separate department leg.
Record a repair done at Main

Scan a phone that is here at Main. Its services load with our cost and the customer's saved price under each. Mark every service Finished, In progress or Not done — while anything is in progress the phone stays out of the ship-out queues.

Bulk add — paste or scan many codes at once
Bring the filled-in sheet back

Mark a service x to add it (it stays in progress) or done to finish it. Blank leaves a service exactly as it is — the sheet can never remove a service or mark one Not done; those stay in the app because they change the bill.

Need to order — parts for repair customers' unfinished work: part × model × color × quantity. Same model + color + service stacks on one line until you mark it ordered.

Built from the services on devices that are still in progress — finished and not-repairable work drops off automatically. Mark ordered moves the ticked lines to the history below and, where the catalog knows the cost, logs the spend per customer. Untick anything that isn't a physical part.

Ordered — history — each order you marked, with what was in it. Undo puts the lines back in Need to order.
Parts spend ledger — what you actually ordered, per customer; this is the cost side of customer P&L

Hard Audit

Scan every phone that is physically here. The screen only confirms what you scan — a manager reviews anything that does not match afterwards.

Outsource

Partner repairs — partner cost on the left, customer price on the right.
Devices currently out
Send devices to a partner

Pick the partner, scan each device, choose the service(s) the partner will do — saved partner costs and customer prices fill in automatically, and anything you change becomes the new saved default when you send.

Bulk add — paste a list of device codes
Sent to partners — history — every device sent, grouped by partner & date
Receive devices back from a partner

Pick what happened, then scan the devices. By default everything is marked done and ready to ship.

Bulk receive — paste a list of device codes
Past receiving batches (from partners)
Received back — history — every device received back, grouped by partner & date
Add partner
PartnerContactOutOwed

P/L

Company net = shipment revenue − outsourcing − Repair Location cost − parts. Repair Location revenue is never re-added.

Repair Location

Repairs done here — the bill counts finished services only. Glass and partner work book to their own locations.
0
devices here now
0
open repairs
$0
open repair value
Everything here right now — scanned over from Main, plus devices back from the glass bench / partners
Record a repair

Scan a device that is here at Repair Location — the services it was received with load automatically with our cost and the customer's saved price under each. Type in a box to search your service list (only existing services can be picked); add more with + or the empty box. Mark each SERVICE — Finished, In progress or Not done (could not repair — no charge) — then one Save applies everything: the device finishes when no service is left in progress, and its progress is remembered next time you scan it. Polish on the same device shows for reference but is billed by the Polishing department. Finished devices stay here until they are scanned back to Main to ship.

Bulk add — paste or scan many codes at once (~30)
Repair Location monthly report — pick a month; totals reset on the 1st, past months are saved here

Finance

Expenses and payroll per location, and month-to-month reports.
Location
Fixed monthly — rent, insurance, software … counted every month
Variable — one-off, dated: supplies, repairs, travel …
Payroll — hourly (hours × rate) or a fixed monthly salary. Each entry is one pay line, dated.
or custom range

Back Market

Orders from individual customers — what they claimed, what arrived, what it really cost.
Analytics — from the orders themselves; nothing typed twice
Trade-in services — your own list of what it costs to bring a device up to par. Nothing to do with the repair services.
Back Market — live look read-only · nothing here can change an order on Back Market
Press Load orders to see what Back Market has for us right now. Each row has an Import button that creates the order here (the hourly import in Phase 4a does this by itself).

Cash Log

Credit and debit, one line at a time. Lines are never edited or deleted — a mistake is fixed with a reversing line, and both stay.
CLPick a log

Inventory

Stock for posting online or selling B2B, and who each line is going to.
INSheet — type straight into the cells · Enter moves down · Tab moves right
Sold — every sheet you pressed "All uploaded" on, newest first. Read-only; export any of them.
Sellers — who you sell to. Your own list; nothing to do with the repair customers.
Inventory catalog — models that autocomplete when you add stock. Its own list.

Settings

Logins, locations and the database. Tabs a role cannot use are hidden, never greyed.
Two-factor sign-in (TOTP) \u2014 optional, per login; recommended for owner + manager. Locked out? Another owner removes the factor here or in the Supabase dashboard (docs/recovery.md).
Press Load to check this login.
Client errors \u2014 every login, last 14 days; digits are redacted at capture (docs/recovery.md)
Data backup

Download a backup file of everything. Keep it safe — you can restore from it anytime or load it onto another device.

User accounts

Add employees and set what they can see. Owners and Managers see finances; Employees see only daily operations.

Session