Email-to-quote automation

Turn freight RFQ emails into ready-to-send quotes.

Forward the request once. Freitt reads the message and its supported attachments, structures the shipment, prices it from your approved rates and prepares the reply for your team to review.

  • Any inbox that forwards
  • PDF, Excel, Word, images
  • Uncertain fields flagged
  • No auto-send
Fwd: RATE REQ — 2 plts LAX>SYD9:14 AM
hi — can u quote 2 pallets machine parts,
120×100×140cm, 480 kg total.
LAX to Sydney door to door, ready thursday.
customer is pushing, need something today pls

thx
mike

packing_list_rev2.xlsx

Your address

quotes@yourco.freitt.com

  • Gmail, Outlook, anything
  • No mailbox migration
  • Attachments read too
01Before

The seven minutes before anyone thinks about price.

None of this is skilled work, and all of it has to happen before the part that is. It is also the stretch where a wrong weight becomes a wrong price, because the number is copied by hand from a PDF into a spreadsheet.

  1. 01Notice the request in a shared inbox that also holds bookings, invoices and newsletters.
  2. 02Open it, and open the packing list attached to it.
  3. 03Work out whether it is air, ocean or road, and door or port.
  4. 04Copy origin, destination, pieces, weight, dimensions and dates somewhere.
  5. 05Notice the dimensions are missing, and write back to ask.
  6. 06Lose the thread for two days, then start again when the answer arrives.
  7. 07Finally begin looking for a rate.
02Workflow

Every request becomes a record, not an inbox item.

Five steps, all of them the reading and re-keying. The commercial decision stays with your team.

  1. 01Every request gets a record.Freitt recognises a forwarded RFQ, opens a quote against it, and leaves the bookings, invoices and newsletters alone.
  2. 02It reads the email and its attachments.Free-text bodies plus PDF, Excel, Word files and images — in whatever language the request arrived in.
  3. 03It structures the shipment.Lane, mode, pieces, weight, dimensions, dates and Incoterms are extracted as fields, with anything uncertain marked as uncertain.
  4. 04It asks only for what is missing.One clear clarification email, drafted for you to send — not five questions, and not a guess.
  5. 05It picks the thread back up.When the customer answers, the quote resumes from where it stopped rather than starting from a blank page.
  6. 06A person controls the reply.You read the draft, change what you disagree with, and send it from your own email. Nothing goes out on its own.
03The request as it lands

The customer’s own email is the input.

Not a form you ask them to fill in, and not a field somebody transcribes first. Freitt works from the message that actually arrived, attachments included, and shows you what it read out of it beside the original — so checking the extraction takes a glance rather than a re-read.

app.freitt.com/review/Q-2841

Original email

Fwd: RATE REQ — 2 plts LAX>SYD

hi — can u quote 2 pallets machine parts, 120×100×140cm, 480kg total. LAX to Sydney door to door, ready thursday…

Extracted fields

OriginLAX (door)
DestinationSYD (door)
Pieces2 pallets

Weight: gross or chargeable?

Priced draft

Air freight LAX–SYD
1,872.00
Margin +12%
+224.64
Fuel surcharge
288.00
Pickup — Carson, CA
145.00
SYD delivery
182.40
Total
2,712.04

every line → LAX-AU_Air_Q3.xlsx

The review screenOriginal email, extracted fields, priced draft — side by side. Anything uncertain is flagged in amber.
04When it cannot

What happens when something is missing.

This is the half of automation worth interrogating. Freitt says so rather than filling the gap — no invented rate, no assumed weight, nothing sent unread.

Missing detailDimensions are not in the email.One clarification email is drafted naming exactly what is needed. The quote waits, visibly, instead of going quiet.
Uncertain readA weight could be kg or lb.The field is flagged rather than assumed, and shown next to the line of the email it came from so you can settle it in a second.
Not an RFQIt is a booking, or an invoice query.No quote record is opened. Freitt is looking for rate requests, not treating every forwarded message as one.
No matching rateThe lane is not in your sheets.The gap is flagged and a carrier inquiry is drafted. No price is invented to fill it.
05Control

Read before it goes anywhere.

  • 01
    Every extracted field shows what it was read from.
  • 02
    Uncertain values are flagged, not assumed.
  • 03
    Missing rates are flagged, not guessed.
  • 04
    Your mailbox and mail host do not change.
  • 05
    A person sends every customer reply.
Separate encrypted workspaces · no cross-customer use · deletion confirmed in writingRead about security →
06Fit

Use this when

  • RFQs arrive as email, from customers who write them however they like.
  • The requests carry attachments — packing lists, spreadsheets, photographs of a manifest.
  • Somebody is currently re-keying shipment details into a sheet before pricing starts.
  • You want the request answered the same day it arrives, not the next morning.

Look elsewhere when

  • Your customers already submit structured requests through a portal you control.
  • You need a native Gmail or Outlook mailbox connection today — forwarding works now, those connections are still coming.
  • The volume is a handful of requests a week, where reading them is not the bottleneck.
  • What you actually need is carrier booking rather than a customer reply.

Email-to-quote, answered.

Something else on your mind? Bring it to a live quote session — thirty minutes, no deck, on one of your own RFQs.

Any inbox that supports forwarding — Gmail, Outlook and 365, Zoho, cPanel mail. Native Gmail and Outlook connections are coming soon; forwarding is what works today, and it takes about two minutes to switch on.

No. That is the point. They keep writing the email they have always written, and it keeps arriving in the mailbox it always arrived in.

PDF, Excel, Word files and images attached to the request, as well as the message body itself.

You will see it, because every extracted field is shown beside the email it came from, and anything the model was not sure about is flagged rather than filled in silently. Correcting a field takes a moment; catching it is the part that has to be easy.

No. It drafts. A person on your team reviews and sends, from your own email address.

No. It works beside your TMS, your spreadsheets and your inbox. There is nothing to migrate.

Next in the workflow

Read the request. Now price it.

Freitt prices the structured shipment from the Excel rate sheets you already keep, and shows which row and which rule produced every figure.

See rate-sheet automation
Your rate book1 sheet expiring

LAX-AU_Air_Q3.xlsx

Qantas Freight · 214 rate lines

Mapping remembered

Column mapping

ORGOriginDSTDestinationBRKBreakUSDRateExp.Valid to
Illustrative rate lines from an uploaded sheet
LaneBasisRateValid toStatus
LAX → SYDper kg3.9030 Seplive
LAX → MELper kg4.1530 Seplive
LAX → BNEper kg4.4031 Julexpired

Expired lines are held back from quoting until you refresh the sheet.

See it live

Forward us one real RFQ.

Pick a recent request — the messier the better — and see what comes back as a draft.

30 minutes · no deck · your rates stay private