Add VesselTill to your Home Screen to use it offline, full-screen, like a native app:
1️⃣Tap the Share button in Safari's toolbar
2️⃣Scroll down and tap "Add to Home Screen"
3️⃣Tap "Add" to confirm
iOS requires Safari for installation. If you're in another browser, copy the URL into Safari first.
🖥️ Install VesselTill
Install VesselTill as a desktop app for offline use and a clean, distraction-free window.
1️⃣Click the install icon in the address bar (far right)
2️⃣Click "Install" in the prompt that appears
No icon? Try: ⋮ menu → Save and share → Install page as app
1️⃣Click the install icon in the address bar, or open the ⋯ menu
2️⃣Select "Apps" → "Install this site as an app"
3️⃣Click "Install"
1️⃣In the menu bar click File
2️⃣Click "Add to Dock…"
3️⃣Click "Add" to confirm
Requires macOS Sonoma (14)+ and Safari 17+.
Firefox doesn't support PWA installation. For the best experience use Chrome or Edge to install VesselTill as a desktop app.
You can bookmark this page (Ctrl+D) for quick access in the meantime.
Look for an install or "Add to Home Screen" option in your browser's address bar or ⋮ menu.
📲 Install VesselTill — use offline from your home screenTap Share ↑ → "Add to Home Screen"
💾 Back up your data — last backup: never
🔍
⭐ Favourites = your go-to items
Mark the products you sell most often and they'll always be one tap away here — no scrolling. Tap the ★ in the corner of any product to make it a Favourite.
📂
Upload your Excel or CSV file to load your product list
No receipts yet. Complete a sale to see history here.
VesselTill
End-of-Day Report
Data & Backup
v1.0
💾
Export your backup regularly
VesselTill runs entirely in your browser — no cloud sync. If your browser data is cleared or you switch devices, you'll lose everything. Back up at least once a day.
Last backup: never
Keep copies in Google Drive, WhatsApp, or email. The JSON backup contains all receipts, products, and staff.
📦 Products & Stock 0 products
Quantities reflect all sales, exchanges and refunds. Download the current stock snapshot before closing up.
📤 Export Receipts 0 receipts
Last backup: never
📥 Restore from Backup
📂
Click to choose file, or drag & drop
Accepts VesselTill .json backup files only
⚠ Danger Zone
Permanently deletes all receipts and the receipt counter. Export a backup first.
☕ Support VesselTill
VesselTill is developed independently without subscriptions, ads, or investor funding. If you'd like to support ongoing development, you can contribute below.
Your business details appear on every receipt and end-of-day report.
🏪 Business Details
Shown on receipts where required by law.
🖼 Business Logo (optional)
🖼
Click to upload or drag & drop your logo
PNG · JPG · JPEG · WEBP · Max 500 KB
Appears on all receipts and end-of-day reports. Stored locally — never uploaded to any server.
🧾 Receipt Footer
Replaces the default "Thank you for your purchase!" line on receipts.
🖥 Customer Display
Opens a second window showing the current cart and total — point it at a customer-facing screen or second monitor. Updates live as you ring up items. Available on desktop with a second screen.
🕑 Business Day
When your trading day begins. Sales made before this time count towards the previous business day in End-of-Day reports. Leave at 00:00 (midnight) for the standard calendar day. Example: set to 07:00 and a sale at 6 AM Saturday is reported under Friday.
✓ Saved
✉️ Contact
Got feedback, a bug to report, or just want to say hello? Every message goes directly to the founder.
✅
Message sent!
Thanks for reaching out. I'll get back to you as soon as I can.
Please fill in all required fields.
Goes straight to the founder · No spam · Powered by Formspree
Sell anything not in your product list. No staff selection needed.
🚀 What's New
A running log of VesselTill updates and fixes.
⬇ Pick a demo template
Download a ready-made product list for a store like yours, then upload it to see how VesselTill looks with real items. You can edit it in Excel first, or just try it as-is.
Prices are examples only — set your own currency and prices in the app. After downloading, tap ↑ Upload Excel to load it.
🖥 Customer Display
A second, customer-facing screen that shows the order and total as you ring it up — so your customer can follow along and see exactly what they're paying.
👀
What it's for. It mirrors the current sale on a separate screen facing the customer — items, quantities, running total, and a friendly "thank you" after payment. Great for building trust at the counter.
🖥️
How to use it. Tap Open Customer Display below — it opens in a new window. Drag that window onto a second monitor facing the customer. It updates live as you add items. (This works on a desktop or laptop with a second screen — on a single phone or tablet there's only one screen, so it isn't shown there.)
⌨️
Quick tip. You can also open it any time by pressing the M key. It stays a single window — pressing again just brings it back into focus.
📋 Import summary
What VesselTill loaded from your file.
📄 Terms & Privacy
Plain-language summary — no legalese, just what actually happens with your data.
🔒 Your business data stays on your device
Products, sales, receipts, staff, and settings are stored locally in your browser (IndexedDB). None of it is uploaded to any server. If you clear your browser data or switch devices without backing up, it's gone — we don't hold a copy anywhere.
📊 Analytics
We use Google Analytics and Google Search Console — only to see whether people are finding and visiting VesselTill, roughly how many, and from where. We don't sell your data to anyone, and we don't use analytics to identify or track you personally — it's aggregate visit counts, nothing more. This is separate from your business data above, which analytics never sees.
✉️ Contact form
Messages sent through the Contact tab are delivered via Formspree, a third-party form service, so we can receive them by email. That's the only thing the contact form is used for.
☁️ Coming soon: VesselTill Sync
We're building an optional Sync feature for multi-till (multi-POS) setups, which will require signing in with Google. When you use it, your data is saved to your own Google account (Google Drive) — not to VesselTill's servers. It stays under your control, in your account, the same way a Google Doc or Sheet does. Sync will be entirely optional; the free, local-only version of VesselTill keeps working exactly as it does today.
Read the full Privacy Policy, including how VesselTill uses Google account and Google Drive data for Sync.
☁️ VesselTill Sync Coming soon
An optional upgrade for stores that have outgrown the basic POS — or that simply prefer their backups in the cloud.
VesselTill will always be free to run on a single device, with all your data stored locally. Sync is for when you need more than that — multiple tills, an automatic off-device backup, or peace of mind that a lost or wiped device won't cost you your records.
🔑
Sign in with your Google account No new password, no separate VesselTill account. You sign in with Google, and that's it.
📁
Your backup is saved to your own Google Drive Your data backup (the same JSON backup file the app already uses) is stored automatically in your Google Drive — not on a VesselTill server. It stays in your account, under your control, the same way a Google Doc or Sheet does. We never hold a copy.
📴
Works offline first, syncs when you're back Nothing changes about how VesselTill works without internet. Your data is still saved locally on the device as you sell, so you can keep trading through a dead signal. The moment you're back online, VesselTill automatically backs up the latest copy to your Google Drive — so your cloud backup catches up on its own, with nothing for you to remember.
🖥️
Keep multiple tills in sync · COMING SOON Run more than one POS device for the same business and keep them working from the same data. Multi-till synchronisation and multi-device support (up to 3 devices) are included in your plan and rolling out soon.
What's included
✓ Google Drive cloud backups
✓ Automatic local backups
✓ Offline — syncs when back online
✓ Google Sign-In
◷ Multi-till (multi-POS) synchronisation — included in your plan, rolling out soon
◷ Up to 3 POS devices — included in your plan, rolling out soon
Planned pricing
Monthly
$6/mo
Cancel anytime
Save 17%
Yearly
$60/yr
Just $5/mo — 2 months free
Save $12 a year
Final prices will be shown before you ever pay. Pay monthly at $6/month, or save with the yearly plan at $60/year (that works out to $5/month — about 17% off, like getting 2 months free). A free trial is planned with no card required to try it. The core single-device version of VesselTill stays completely free.
🔔 Notify me when ready
Be the first to know when Sync launches. One email, no spam.
✅
You're on the waitlist!
We'll email you when VesselTill Sync launches.
🔑 Connect your Google account
Sign in to link this till to your Google account. When automatic backups arrive, they'll be saved to your own Google Drive — never a VesselTill server. Nothing is uploaded yet.
Reason
Please choose a reason.
⌨️ Keyboard Shortcuts
Speed through checkout without touching the mouse.
Focus search / scan barcode
/
Add matched product from search
Enter
Charge / checkout
Enter
+1 / −1 qty on last item
+−
Remove last item
⌫
Clear cart
ShiftC
Add custom / quick-sale item
N
Set tax on last cart item
T
Open barcode scanner
S
Open customer display
M
Switch tab
Alt1–6
In the payment dialog:
Cash · cArd · Digital · sPlit
CADP
Close any dialog
Esc
Show this list
?
Shortcuts are disabled while typing in a field, except Esc and /.
Amount Due
💵
Cash
Give change
💳
Card
Own machine
📲
Digital
EFT / e-wallet
🔀
Split
Mix payments
💵 Cash Tendered
R
Change
💳 Card Payment
Complete the payment on your own card machine, then confirm below.
Card reference (optional — from the slip)
Handy for matching your records to the card machine later. Leave blank if you don't need it.
📲 Digital Payment
Which method did the customer use?
Pick one, or add your own (e.g. M-Pesa, Venmo, Suica) — VesselTill remembers it for next time.
🔀 Split Payment — Second Method
Card reference (optional — from the slip)
Which digital method?
💳 Card Amount
R
Cash portion
Cash needed—
💵 Cash Tendered by Customer
R
Change
↩ Return / Exchange
Select items being returned
Reason for return
Items selected0
Return value—
What does the customer prefer?
💸
Refund
Return money to customer
🔄
Exchange
Swap for another item
Refund method
💵 Cash
💳 Card
🪙 Store Credit
Refund amount—
The return value of — will be applied as a credit on the next sale. Select the new item(s) from the product grid after confirming.