Turn an emailed freight enquiry into a quote draft
Extract shipment requirements from an unstructured email, obtain a price from an existing pricing service, and prepare a response for the customer. Keep incomplete requests in a clarification queue.
How this works
Extract shipment requirements from an unstructured email, obtain a price from an existing pricing service, and prepare a response for the customer. Keep incomplete requests in a clarification queue.
Prepare a freight quote only when the shipment fields required by the existing pricing service are known. Preserve original units and shipment constraints, and distinguish a returned estimate from a customer-ready offer with confirmed validity and exclusions.
Before you start
Defined operating scope
Freight enquiries arrive as unstructured emails but an existing pricing service requires structured shipment fields.
Required source material
Obtain Customer shipment enquiry; Required pricing fields and quoting rules. If connectors are unavailable, use authorized files with the same fields.
Decision and exception rules
Dimensions lack units. Ask for units before calculating volume or chargeable weight.
Prepare the inputs
- shipment_enquiry
- Required
Email and attachments
Keep the complete origin request.
- required_fields
- Required
Origin, destination, dates, dimensions and handling rules
Use the pricing service’s actual schema.
- unit_rules
- Required
Weight, dimension and currency conventions
Convert only with explicit units.
- pricing_context
- Required
Approved service and applicable terms
Record quote version, validity and included charges.
Implementation, step by step
Establish the working record
- Confirm the selected records, effective versions and responsible owner.
- Check shipment_enquiry, required_fields, unit_rules, pricing_context before beginning. Record the source version and the selected scope; an unavailable value stays unknown rather than becoming an inferred fact.
Checkpoint: The input record identifies the selected shipment_enquiry and any missing required fields.
Extract the shipment details into the pricing service’s required fields
- Extract the shipment into structured fields, retaining source wording for addresses, weights and handling needs.
- Verify all pricing-required fields and conversions against the original enquiry.
Checkpoint: A saved intermediate result for: Extract the shipment details into the pricing service’s required fields.
Identify missing or ambiguous details for clarification
- Identify missing or ambiguous fields and prepare only the clarification needed for the chosen service.
- Check returned currency, validity, included charges and service conditions before drafting the final amount.
Checkpoint: A saved intermediate result for: Identify missing or ambiguous details for clarification.
Request a quote using the confirmed structured data
- Request a price using confirmed data through the available approved service; if unavailable, produce a ready-to-submit request file.
- Verify all pricing-required fields and conversions against the original enquiry.
Checkpoint: A saved intermediate result for: Request a quote using the confirmed structured data.
Draft a response using the returned price and applicable terms
- Draft the response with returned amount, currency, validity and exclusions, leaving delivery promises or missing surcharges for review.
- Check returned currency, validity, included charges and service conditions before drafting the final amount.
Checkpoint: A saved intermediate result for: Draft a response using the returned price and applicable terms.
Package the result and unresolved work
- The quoting team verifies the shipment interpretation, price, validity, and terms before release. This is an adaptation of a reported implementation, not a tested integration.
- A quote draft does not authorize booking transport or promising capacity.
Checkpoint: A quote draft or a request for missing shipment details. Unresolved items remain visible in the review record.
Decisions along the way
Dimensions lack units.
Ask for units before calculating volume or chargeable weight.
The shipment includes an unspecified special-handling requirement.
Hold pricing until the requirement and supported service are confirmed.
The pricing response expires or is incomplete.
Request a refreshed quote or mark the draft not ready for release.
What you will produce
freight-enquiry-to-quote-draft-result.json
JSONA quote draft or a request for missing shipment details. Label proposed and completed states separately.
Include: shipment_fields · missing_fields · pricing_request · quote_reference · amount · currency · valid_until · response_draft · status · evidence_reference · review_note
freight-enquiry-to-quote-draft-review.md
MarkdownKeep the evidence and unresolved decisions needed to apply this result, including exceptions involving pricing_context.
Include: source_reference · question · owner · next_action
Check the result
- Verify all pricing-required fields and conversions against the original enquiry.
- Check returned currency, validity, included charges and service conditions before drafting the final amount.
- Inspect shipment_enquiry and required_fields in both the original and output; confirm that record identity and interpretation survived the transformation.
- The quoting team verifies the shipment interpretation, price, validity, and terms before release. This is an adaptation of a reported implementation, not a tested integration.
When something goes wrong
Dimensions lack units.
Ask for units before calculating volume or chargeable weight. Retain the affected evidence and recovery status.
The shipment includes an unspecified special-handling requirement.
Hold pricing until the requirement and supported service are confirmed. Retain the affected evidence and recovery status.
The pricing response expires or is incomplete.
Request a refreshed quote or mark the draft not ready for release. Retain the affected evidence and recovery status.
A worked example
SYNTHETIC EXAMPLE · NOT A REPORTED BUSINESS RESULT
Request
Turn an emailed freight enquiry into a quote draft for the following bounded example; prepare the result for review.
Inputs
Synthetic example: Email requests transport for two pallets, 300 kg total, dimensions 120 × 80 × 100 with no unit and delivery next week.
Expected result
Synthetic expected result: Create a clarification asking for dimension units and a specific delivery date. Do not calculate volume or issue a firm quote from the incomplete request.
Run a small pilot
Start small
Trial a representative batch containing the ordinary case and the exception demonstrated above.
Record the baseline
Record current preparation time, review effort and correction types for the same records.
Agree success criteria
Agree acceptable review and error limits; measure quote-preparation minutes; shipment-field accuracy and incomplete requests correctly returned.
Stop or revise
The pricing response expires or is incomplete. Pause affected records and apply this recovery: Request a refreshed quote or mark the draft not ready for release.
Keep the scope clear
- A quote draft does not authorize booking transport or promising capacity.
- Use an existing pricing service or a file-based request; do not invent carrier rates.
Check before using
The quoting team verifies the shipment interpretation, price, validity, and terms before release. This is an adaptation of a reported implementation, not a tested integration.
Business activities
- Handle inbound enquiries
- Run sales conversations and proposals
FROM A RECIPE TO YOUR WORKFLOW
Bring the company context together.
This workflow needs reliable inputs before it needs a better prompt. Moat8 Vault brings working information into a readable archive for the AI tools you use.
For this recipe: Customer shipment enquiry · Required pricing fields and quoting rules
Start with one recurring task, agree which sources to use, and review the first result with your team.
Discuss this workflow