{
  "name": "Shipment arrival notice intake",
  "description": "Extract shipment reference, carrier name, vessel name from arrival notice. Start with an editable schema, inspect JSON and review exceptions before your system handoff.",
  "prompt_additions": "Extract only information explicitly present in this document. Do not infer missing values, verify authenticity, make business decisions, or compare other documents. Preserve identifiers as strings. Return amounts as numbers and dates as YYYY-MM-DD. Review and set required fields for your process before using this schema in production.",
  "fields": [
    {
      "key": "shipment_reference",
      "label": "Shipment Reference",
      "type": "string",
      "required": false,
      "description": "Shipment reference exactly as printed in this arrival notice. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "carrier_name",
      "label": "Carrier Name",
      "type": "string",
      "required": false,
      "description": "Carrier name exactly as printed in this arrival notice. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "vessel_name",
      "label": "Vessel Name",
      "type": "string",
      "required": false,
      "description": "Vessel name exactly as printed in this arrival notice. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "terminal_name",
      "label": "Terminal Name",
      "type": "string",
      "required": false,
      "description": "Terminal name exactly as printed in this arrival notice. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "arrival_date",
      "label": "Arrival Date",
      "type": "date",
      "required": false,
      "description": "Arrival date explicitly printed in this arrival notice. Keep it distinct from other dates; leave it empty if no calendar date is stated."
    },
    {
      "key": "availability_date",
      "label": "Availability Date",
      "type": "date",
      "required": false,
      "description": "Availability date explicitly printed in this arrival notice. Keep it distinct from other dates; leave it empty if no calendar date is stated."
    },
    {
      "key": "charge_rows",
      "label": "Charge Rows",
      "type": "array",
      "required": false,
      "description": "Every visible charge rows row in this arrival notice. Preserve separate rows, labels and qualifiers; do not merge entries or reconstruct missing ones.",
      "items": {
        "type": "object",
        "fields": [
          {
            "key": "description",
            "label": "Description",
            "type": "string",
            "required": false,
            "description": "Description exactly as printed in this arrival notice. Preserve identifiers and qualifiers; do not look up or infer missing information."
          },
          {
            "key": "payer_name",
            "label": "Payer Name",
            "type": "string",
            "required": false,
            "description": "Payer name exactly as printed in this arrival notice. Preserve identifiers and qualifiers; do not look up or infer missing information."
          },
          {
            "key": "amount",
            "label": "Amount",
            "type": "currency",
            "required": false,
            "description": "Amount explicitly labeled in this arrival notice. Preserve its sign and stated currency; do not calculate a missing amount."
          },
          {
            "key": "payment_timing",
            "label": "Payment Timing",
            "type": "string",
            "required": false,
            "description": "Payment timing exactly as printed in this arrival notice. Preserve identifiers and qualifiers; do not look up or infer missing information."
          }
        ]
      }
    }
  ]
}