DDuoPay.
✦ THE AFTER-DINNER UPGRADE

Good times.
Fair splits.

Snap the receipt. Let AI do the reading.
Split it fairly, then settle up with PayPal.

Let's split a bill
AMSLess math. More memories.
AI, on your device
THE GOOD TABLE
Dinner with friends3 people
Tonight's total$89.60
Alex$28.16
Maya$35.84
Sam$25.60
Every cent accounted for
✦
✧
Real, on-device AI OCRCent-perfect calculationsSandbox only. No real money.
YOUR SPLIT WORKSPACE

One receipt. Zero awkwardness.

Start with our sample, or bring your own receipt.

01

Add your receipt

AI reads the image. You stay in control.

LOCAL AI
Sample dinner receipt from The Good Table

A little paper.
A lot less hassle.

Drop a receipt here, or choose an image.
JPG, PNG or WebP · up to 10 MB

Editable sample loaded. AI scan has not run yet.
Paste or review receipt text instead
02

Make it your kind of fair

Tap names to say who had what.

4 items
ITEMAMOUNTSHARED BY
Tax and tip follow each person's item share.
FROM DINNER TO DONE

Three steps. Then back to life.

01 / READ

A receipt becomes a plan.

Tesseract's AI OCR reads your receipt locally. Review the extracted items and amounts before moving on.

02 / SPLIT

Fair is up to your table.

Assign items to one or more friends, or split everything equally. Tax, tip and rounding are handled precisely.

03 / SETTLE

Pay your part. Keep the peace.

Each person checks out for their exact share through PayPal Sandbox. A capture is only marked paid after PayPal confirms it.

This prototype only supports PayPal Sandbox. It starts with PayPal's documented sb test shortcut—no invented credentials.

A Client ID is a public app identifier, not a password. Never enter a Client Secret, live credential, card number or API key here. Kept in memory only; resets on refresh.

For production, order creation and capture must move to a secure server. This client-only flow is a Sandbox learning prototype.

AI, without an API key

Tesseract.js runs a trained OCR model in a Web Worker on your device. The first scan downloads the engine and English model from a CDN. Receipt images are not uploaded by this app. OCR can make mistakes—always review the numbers.

PayPal is part of the core flow

PayPal JavaScript SDK v5 creates and captures each selected person's test order. The interface records a payment only after PayPal returns a completed capture. It uses the official Sandbox shortcut by default; your own Sandbox Client ID gives you merchant-attributed testing.

What this prototype does not do

No real-money payments, automatic refunds, multiparty payouts, email collection, backend database or cross-device synchronization. A paid share is session-only, and the app locks the bill after a completed capture to prevent changing a paid obligation. This is not production-ready; production needs server-side order validation, authentication, idempotency and verified webhooks.

Precise math, not AI guesses

All money is calculated in integer cents. Shared items, tax and tip use largest-remainder allocation so the shares always reconcile to the bill total. Payment amounts come from this calculation—not OCR confidence or an AI-generated total.

Public source publishing, hackathon registration and submission have not been performed.