{
  "name": "Merchant processor statement revenue intake",
  "description": "Extract merchant name, merchant reference, period start from processor settlement statement. 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": "merchant_name",
      "label": "Merchant Name",
      "type": "string",
      "required": false,
      "description": "Merchant name exactly as printed in this processor settlement statement. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "merchant_reference",
      "label": "Merchant Reference",
      "type": "string",
      "required": false,
      "description": "Merchant reference exactly as printed in this processor settlement statement. Preserve identifiers and qualifiers; do not look up or infer missing information."
    },
    {
      "key": "period_start",
      "label": "Period Start",
      "type": "date",
      "required": false,
      "description": "Opening date printed for the reporting period, separate from the issue date."
    },
    {
      "key": "period_end",
      "label": "Period End",
      "type": "date",
      "required": false,
      "description": "Closing date printed for the reporting period, separate from payment or posting dates."
    },
    {
      "key": "gross_sales",
      "label": "Gross Sales",
      "type": "currency",
      "required": false,
      "description": "Gross sales explicitly labeled in this processor settlement statement. Preserve its sign and stated currency; do not calculate a missing amount."
    },
    {
      "key": "refunds",
      "label": "Refunds",
      "type": "currency",
      "required": false,
      "description": "Refunds explicitly labeled in this processor settlement statement. Preserve its sign and stated currency; do not calculate a missing amount."
    },
    {
      "key": "processing_fees",
      "label": "Processing Fees",
      "type": "currency",
      "required": false,
      "description": "Processing fees explicitly labeled in this processor settlement statement. Preserve its sign and stated currency; do not calculate a missing amount."
    },
    {
      "key": "net_settlements",
      "label": "Net Settlements",
      "type": "currency",
      "required": false,
      "description": "Net processor settlements as printed, kept distinct from sales, fees and refunds."
    },
    {
      "key": "settlements",
      "label": "Settlements",
      "type": "array",
      "required": false,
      "description": "Every visible settlements row in this processor settlement statement. Preserve separate rows, labels and qualifiers; do not merge entries or reconstruct missing ones.",
      "items": {
        "type": "object",
        "fields": [
          {
            "key": "settlement_date",
            "label": "Settlement Date",
            "type": "date",
            "required": false,
            "description": "Settlement date explicitly printed in this processor settlement statement. Keep it distinct from other dates; leave it empty if no calendar date is stated."
          },
          {
            "key": "reference",
            "label": "Reference",
            "type": "string",
            "required": false,
            "description": "Reference exactly as printed in this processor settlement statement. Preserve identifiers and qualifiers; do not look up or infer missing information."
          },
          {
            "key": "gross_sales",
            "label": "Gross Sales",
            "type": "currency",
            "required": false,
            "description": "Gross sales explicitly labeled in this processor settlement statement. Preserve its sign and stated currency; do not calculate a missing amount."
          },
          {
            "key": "refunds",
            "label": "Refunds",
            "type": "currency",
            "required": false,
            "description": "Refunds explicitly labeled in this processor settlement statement. Preserve its sign and stated currency; do not calculate a missing amount."
          },
          {
            "key": "fees",
            "label": "Fees",
            "type": "currency",
            "required": false,
            "description": "Fees explicitly labeled in this processor settlement statement. Preserve its sign and stated currency; do not calculate a missing amount."
          },
          {
            "key": "net_settlement",
            "label": "Net Settlement",
            "type": "currency",
            "required": false,
            "description": "Net settlement explicitly labeled in this processor settlement statement. Preserve its sign and stated currency; do not calculate a missing amount."
          }
        ]
      }
    }
  ]
}