321 Enterprise Receipt Relayby 321enterprise 321enterprise.com →

Receipt to email template, from a phone photo.

Photograph a paper receipt, invoice or ticket. A vision model reads it into order data and flags anything it isn’t sure of, you check every field, and out comes a real transactional email: HTML or .eml, in light and dark. Free, no login.

Upload a receipt photo

Private by design. Photos are never stored. Card numbers are cut to the last four digits before you see them, and the model runs only on hosts that keep no data. Sending an email is invite-only; downloads are open to everyone.

How this works

A photo goes in; a real transactional email comes out. Three steps, and you can check each one.

  1. Read: one photo, two model calls

    Your photo is shrunk in the browser (to about 2 megapixels) and sent to a vision model, Qwen3-VL 235B via OpenRouter, routed only to providers that keep no data. It was chosen in a measured bake-off on 14 real receipts. The first call returns the order as structured data; a second, separate call copies the receipt line by line for the Paper template.

    • Qwen3-VL 235B
    • zero data retention
    • ~7 s data · ~15 s Paper
  2. Check: a strict schema, and you

    The model must answer in a fixed JSON schema based on schema.org's Order: every field present, null when it isn't printed. It also lists the fields it's unsure of, and those are highlighted for you. Before anything reaches the page, the server masks card numbers and, unless you ask to keep them, drops staff names.

    {
      "merchant": {
        "name": "Juniper & Ash Coffee", …
      },
      "orderedItem": [{
        "name": "Oat Latte 12oz",
        "quantity": 2, "lineTotal": 10.50
      }, …],
      "total": 19.50,
      "lowConfidence": []
    }
  3. Send: a real email, built like one

    The checked data fills a hand-written email template based on the ACORN framework. It uses tables and inline styles so Outlook keeps up, has dark-mode rules and a plain-text part, and escapes every value. Download it as .html or .eml, or send it to yourself.

    • ACORN
    • dark mode
    • plain-text part
    • .eml
    • sent via Resend

This server keeps no photos and no receipt content, only call counts and timings for rate limits. Emails you choose to send pass through the mail service, Resend.

The full story, with the bake-off numbers: How Receipt Relay was built →