GoTo Optical
Connecting…
GoTo Optical

Sign in

Use the email and password your manager gave you.
{{ cerr }}
GoTo Optical

No access yet

You're signed in as {{ cloudEmail }}, but this email doesn't have a role. Ask a manager to add it under Settings → Users.
GoTo Optical

Can't reach the inventory database

Check the internet connection, then try again.
{{ cerr }}
GoTo Optical

Demo mode

Pick a user to preview their role. The live site asks for email and password.
GoTo Optical
Tour · {{ tour.step }}
{{ tour.title }}
{{ tour.body }}
{{ toast.msg }}
{{ partyEl }}
{{ countRem.title }} Count each lens type at least once a month so on-hand numbers stay accurate.
Monthly report card
{{ rep.title }}
{{ rep.sub }}
{{ t.label }} {{ t.val }} {{ t.sub }}
Top powers
{{ p.rank }} {{ p.label }}
{{ p.n }}
No usage logged this month.
{{ rep.star }}
No usage logged today It's past {{ remind.time }}. Log today's lenses before closing so stock stays accurate.
Main Lab · Single vision Poly

{{ greet }}

{{ greetSub }}
{{ greet }} {{ greetSub }}
Note from your manager {{ brief.note }}
{{ today.frac }}
Today {{ today.head }} {{ today.streakTxt }} {{ today.streakSub }}
{{ t.tick }} {{ t.label }}
LVL {{ prog.lvlNum }}
{{ prog.level }} {{ prog.xpTxt }}
{{ prog.nextTxt }}
{{ prog.chHead }} {{ prog.chLeft }}
{{ prog.chTitle }}
{{ prog.chSub }}
Count accuracy
{{ g.g }}
{{ prog.accSub }}
Badges {{ prog.recent }}
{{ b.glyph }} {{ b.name }} {{ b.desc }}
{{ team.head }} {{ team.sub }}
LVL {{ t.lvlNum }}
{{ t.name }} {{ t.role }} {{ t.level }} · {{ t.xp }}
{{ t.today }}
{{ t.next }}
Recent badges{{ t.bCount }}
{{ b.glyph }} {{ b.name }} {{ b.date }}
No badges yet
Working on {{ t.chTitle }}
{{ t.chSub }}
No challenge for this role
{{ backupWarn }}
Stock health
Live · updates as usage is logged
Out of stock
{{ tot.out }}
powers at zero
Below minimum
{{ tot.low }}
won't last until a new delivery
Runs out this week
{{ tot.soon }}
powers with 7 days or less
To reorder
{{ tot.pieces }}
pieces across {{ tot.powers }} powers
Phasing out · not reordered {{ p.name }}
{{ p.barTxt }}
Pieces left{{ p.q }}in {{ p.powers }} powers
Value left{{ p.val }}at cost per piece
Selling{{ p.per }}pieces a day · last 30 days
Sell-out estimate{{ p.eta }}{{ p.etaSub }}
Most left {{ l.label }} · {{ l.n }}
Usage & lens cost
{{ dash.costNote }} · set in Settings
Stock value · on hand
{{ dash.stockVal }}
{{ dash.stockSub }}
Pieces used · {{ dash.monthName }}
{{ dash.mtdP }}
{{ dash.dP }}
Lens cost · {{ dash.monthName }}
{{ dash.mtdC }}
{{ dash.dC }}
Avg per day
{{ dash.perDay }}
pieces · last 30 days
Most used power
{{ dash.topLabel }}
{{ dash.topSub }}
Monthly usage · pieces
{{ l.name }}
{{ m.total }}
{{ m.label }}
Monthly lens cost
{{ m.label }}
{{ m.cost }}
Needs attention
Sorted by days of stock left

Unusual usage this week

These powers were used much faster than normal. Check for a typing mistake, breakage or a big job.
{{ x.mat }} {{ x.power }} {{ x.text }}

Running out first

Lens
Sph / Cyl
On hand
Lasts
Order
Status
{{ u.mat }}
{{ u.power }}
{{ u.q }}
{{ u.days }}
{{ u.need }}
{{ u.label }}
Every power is at or above its minimum.

Recent activity

{{ h.typeLabel }} {{ h.when }} · {{ h.user }}
{{ h.text }}
Main Lab · Single vision Poly

Quick check

Type the power to see if it's in the lab right now.
{{ oosAlert.title }} Let the patient know these may need extra time before you promise a pickup date.
{{ o.label }} {{ o.sub }}
Cylinder without a sign counts as minus. Type PL for plano.
{{ p.label }} {{ p.val }}
{{ qc.power }}
{{ qc.msg }}
{{ r.full }}
{{ r.status }}
{{ r.line }}
Nearest in stock · for a temporary lens
{{ n.label }} {{ n.n }}
No close power in stock (within 1.00 sph / 0.50 cyl).
Results for Poly Green AR and Poly Blue Cut show here.
Main Lab · Single vision Poly

Daily usage

Enter every stock lens used today. Saving takes them out of inventory. Powers outside your stock range are saved as special orders. Same power in both eyes? Use Add pair to log 2 pieces at once.
{{ uDone }}
{{ p.label }} {{ p.val }}
{{ uErr }}
Lens
Sphere
Cylinder
Used
On hand
After
{{ r.mat }}
{{ r.sph }}
{{ r.cyl }}
{{ r.onHand }}
{{ r.after }}
{{ r.warn }}
Nothing added yet. Pick the lens, type a power and press Enter.
{{ usageSummary }}

Past entries

{{ p.when }} · {{ p.user }} {{ p.text }}
No usage entered yet.
GoTo Optical
Stock count sheet: {{ matName }}
Date ____________________ Counted by ____________________
{{ b.title }}
SPH \ CYL
{{ h }}
{{ row.label }}
Main Lab · Single vision Poly

{{ gridTitle }}

Tap a power to see its stock, min / max and usage.
{{ countProgress }}
Counting {{ matName }}. Type the pieces you find in each box. Empty boxes keep their current quantity. When you save, you get a report of every difference from the expected stock.
Out Low OK Half full Near max On order {{ cellLegend }}
{{ block.title }}
SPH \ CYL
{{ h }}
{{ row.label }}
GoTo Optical
Stock lens order: Main Lab
{{ nextPO }} · {{ todayLabel }} · Single vision Poly
{{ supplierLine }}
{{ deliverLine }}
Main Lab · Single vision Poly · {{ nextPO }}

Reorder list

{{ reorderSub }}
{{ supplierLine }}
Include
WhatsApp opened with the order (also copied, so you can paste it). Once it's sent to the supplier, mark it as sent so it shows under Receive shipment.
No supplier WhatsApp number yet, so WhatsApp will ask you to pick the chat.

{{ rm.name }}

{{ rm.summary }}
{{ b.title }}
SPH \ CYL
{{ hd }}
{{ row.label }}
{{ cell.qty }}
Nothing to reorder. Every power is covered by stock on hand or pieces already on order.
Out of stock now Below minimum Numbers are pieces to order. Click a number to change it, or set it to 0 to skip. {{ rl.pieces }} pieces · {{ rl.powers }} powers
Lens
Sphere
Cylinder
On hand
Min / Max
Lasts
On order
Order qty
{{ r.mat }}
{{ r.sph }}
{{ r.cyl }}
{{ r.q }}
{{ r.minmax }}
{{ r.days }}
{{ r.oo }}
{{ r.qty }}
Nothing to reorder. Every power is covered by stock on hand or pieces already on order.
{{ rl.powers }} powers {{ rl.pieces }} pieces total
Main Lab · Single vision Poly

Receive shipment

Enter what the supplier sent. Quantities are added to stock, and anything short stays on the next reorder list.
No open orders. Once you mark a reorder list as sent, it shows up here.
Open orders
{{ recvTitle }} {{ recvSupplier }}
{{ recvMsg }}
Lens
Sphere
Cylinder
Ordered
Received
{{ r.mat }}
{{ r.sph }}
{{ r.cyl }}
{{ r.orderedText }}
{{ r.short }}
Not ordered
{{ xErr }}
Shipment cost Optional. Enter the invoice amount for each lens type. Shipping and fees are split across all pieces. The cost per lens becomes a weighted average with what's already in stock.
{{ c.name }}{{ c.pcsText }}
$ {{ c.eachText }} {{ c.avgText }}
Shipping & feesSplit by piece
$ {{ recvFeesEach }}
{{ recvSummary }}
Recently received
{{ o.id }} {{ o.summary }} {{ o.date }}
Main Lab · Single vision Poly

Count stock

{{ countPage.summary }}
1. Pick a cylinder box 2. Type the pieces found, or tap Matches 3. Save. Powers you skip keep their current quantity
Cylinder
{{ countPage.sphTitle }} {{ countPage.sphProg }}
SPHSystemCounted
{{ r.cyl }} {{ r.exp }}
{{ r.diff }} ✓
Main Lab · Single vision Poly

Count reports

What was counted against what the system expected after daily usage and deliveries.
No counts yet. Start one from Count stock.
Powers counted
{{ cd.counted }}
Matched
{{ cd.matched }}
Missing pieces
{{ cd.missing }}
Extra pieces
{{ cd.extra }}
{{ cd.heading }}
Sphere
Cylinder
Expected
Counted
Difference
{{ r.sph }}
{{ r.cyl }}
{{ r.exp }}
{{ r.cnt }}
{{ r.diff }}
Every counted power matched.
Main Lab · Single vision Poly

History

Every change to stock, orders and settings, newest first.
{{ h.when }} {{ h.typeLabel }} {{ h.text }} {{ h.user }}
Nothing recorded yet.

Most used powers

Last 90 days of daily usage
{{ t.mat }} {{ t.power }} {{ t.n }}

Special orders

Used outside your stock range, last 90 days. If a power keeps coming up, consider stocking it.
{{ t.mat }} {{ t.power }} {{ t.n }}
None recorded.
Main Lab · Single vision Poly

Settings

Changes save automatically on this device.
{{ setIntro }}
No setting matches “{{ setQ }}”. Try a word like cost, badge, user or backup.

Lens types

Choose which lens types show across the app. Turning one off hides it but keeps its stock and history, so you can turn it back on any time.
NameShort nameReorderShow

Stock range

The powers you keep in the lab. Applies to Poly Green AR and Poly Blue Cut.
{{ rangeSummary }}

Cost per piece

What the supplier charges for one lens. Used for monthly lens cost and stock value on the Overview.

Automatic min / max

Recalculated every day from the last 90 days of usage. Min = daily usage × lead time + safety buffer. Max = min + usage over the reorder cycle. Powers with no recent use keep the minimum per power.
{{ histNote }}
{{ overrideText }}

Supplier & delivery

Shown on the printed order, the Excel sheet and the WhatsApp order message.

Users

Create each login in Supabase (Authentication → Users), then add the same email here and pick a role. Set what each role can do under Roles & permissions.

Roles & permissions

Choose which pages each role can open and what it can change. Rename any role. The full-access role can't lose pages, so someone can always manage settings.
Full access {{ rc.users }}
Pages they can open
Can also

Daily brief

Choose what each role sees at the top of the page they open on. Pick a role, then switch parts on or off.
Role
{{ gBrief.where }}
Show on the brief
Today checklist items
Reminders
Overview sections
{{ gBrief.ovNote }}

End-of-day reminder

After this time, anyone who can log usage sees a reminder if nothing has been logged today.

Games, points and badges

Switch off to hide levels, challenges, badges and milestone celebrations for everyone. Progress keeps counting in the background.

Challenge

Set your own challenge, extend it, end it early, or mark it complete or incomplete for anyone. With automatic on, a new challenge starts every Monday when you haven’t set one.
Automatic weekly
{{ gCh.state }} {{ gCh.title }} {{ gCh.dates }}
Extend
Team progress
{{ r.name }} {{ r.role }} · {{ r.title }}
{{ r.prog }}
{{ r.status }}
Start a new challenge Replaces the current one. Progress counts from today.
Who None picked = everyone who can do it

Badges

Rename any badge, change its target or switch it off. Type {n} in the text to show the target number. Pick a person to award or remove badges by hand.
{{ gB.pSummary }}
{{ b.statLbl }}
Target
{{ b.pStatus }}

Levels and points

Name each level and the points needed to reach it. Set how many points each action earns, or give bonus points by hand.
Levels
{{ l.num }}
Points per action
Give or take points

Milestones

A full-screen celebration when someone’s total lenses logged passes one of these numbers.
{{ c.label }}

Load stock from Excel

For loading your current stock the first time, or after a full count on paper. Download the blank sheet, type the pieces for each power, then upload it. Empty boxes keep their current quantity. You can also copy the grid in Excel and paste it below.
{{ impText }}
{{ impErr }}

Backup

All data is saved in this browser only. Download a backup regularly and keep it somewhere safe, like Google Drive or a USB drive.
Data is saved online and shared by every signed-in computer. The database also keeps automatic snapshots. A downloaded backup is still a good extra copy.
{{ backupNote }}

Sounds and vibration

Soft click on save, chime on celebrations. Applies to this device only.