{
  "tool_id": "art-288-map-iso20022-to-evm-calldata",
  "note": "golden_hash is empty until first `node golden-parity.test.mjs --update`.",
  "vectors": [
    {
      "name": "complete_mapping",
      "policy_parameters": {
        "iso_message_type": "pacs.008",
        "iso_fields": {
          "instructedAmount": "1250.50",
          "currency": "USD",
          "debtorAccount": "DE89370400440532013000",
          "creditorAccount": "GB29NWBK60161331926819",
          "endToEndId": "E2E-REF-001",
          "uetr": "8a562df1-2b76-4e8b-9f66-1234567890ab",
          "purposeCode": "TRAD"
        },
        "contract_abi_fragment": {
          "function": "settlePayment",
          "inputs": [
            {
              "name": "amount",
              "type": "uint256"
            },
            {
              "name": "currency",
              "type": "bytes32"
            },
            {
              "name": "creditor",
              "type": "bytes32"
            }
          ]
        },
        "mapping_profile": "draft-generic-evm"
      },
      "output_payload": {
        "resolved_call": {
          "function": "settlePayment",
          "args": [
            "125050",
            "0x5553440000000000000000000000000000000000000000000000000000000000",
            "0x474232394e57424b363031363133333139323638313900000000000000000000"
          ]
        },
        "field_bindings": [
          {
            "abi_input": "amount",
            "iso_field": "instructedAmount",
            "type": "uint256",
            "resolved": true
          },
          {
            "abi_input": "currency",
            "iso_field": "currency",
            "type": "bytes32",
            "resolved": true
          },
          {
            "abi_input": "creditor",
            "iso_field": "creditorAccount",
            "type": "bytes32",
            "resolved": true
          }
        ],
        "unmapped_required_fields": [],
        "abi_type_coercions": [
          {
            "abi_input": "amount",
            "type": "uint256",
            "iso_field": "instructedAmount",
            "coercion": "decimal-to-minor-units-uint256"
          },
          {
            "abi_input": "currency",
            "type": "bytes32",
            "iso_field": "currency",
            "coercion": "utf8-to-bytes32-padded"
          },
          {
            "abi_input": "creditor",
            "type": "bytes32",
            "iso_field": "creditorAccount",
            "coercion": "utf8-to-bytes32-padded"
          }
        ],
        "warnings": [],
        "mapping_ok": true,
        "mapping_profile": "draft-generic-evm",
        "mapping_profile_version": "SLI-DRAFT-GENERIC-EVM-2026-07-13",
        "iso_message_type": "pacs.008",
        "draft_pinned": true
      },
      "golden_hash": "bc127f6eb5c27ee71a65e952a998cc9fdba0760845ac5bb01929194543910c5c"
    },
    {
      "name": "missing_field",
      "policy_parameters": {
        "iso_message_type": "pacs.009",
        "iso_fields": {
          "instructedAmount": "500.00",
          "currency": "EUR"
        },
        "contract_abi_fragment": {
          "function": "settlePayment",
          "inputs": [
            {
              "name": "amount",
              "type": "uint256"
            },
            {
              "name": "debtor",
              "type": "bytes32"
            }
          ]
        },
        "mapping_profile": "draft-generic-evm"
      },
      "output_payload": {
        "resolved_call": {
          "function": "settlePayment",
          "args": [
            "50000",
            null
          ]
        },
        "field_bindings": [
          {
            "abi_input": "amount",
            "iso_field": "instructedAmount",
            "type": "uint256",
            "resolved": true
          },
          {
            "abi_input": "debtor",
            "iso_field": "debtorAccount",
            "type": "bytes32",
            "resolved": false
          }
        ],
        "unmapped_required_fields": [
          "debtor"
        ],
        "abi_type_coercions": [
          {
            "abi_input": "amount",
            "type": "uint256",
            "iso_field": "instructedAmount",
            "coercion": "decimal-to-minor-units-uint256"
          },
          {
            "abi_input": "debtor",
            "type": "bytes32",
            "iso_field": "debtorAccount",
            "coercion": "utf8-to-bytes32-padded"
          }
        ],
        "warnings": [
          "ISO field \"debtorAccount\" missing or uncoercible for ABI input \"debtor\" (type bytes32)."
        ],
        "mapping_ok": false,
        "mapping_profile": "draft-generic-evm",
        "mapping_profile_version": "SLI-DRAFT-GENERIC-EVM-2026-07-13",
        "iso_message_type": "pacs.009",
        "draft_pinned": true
      },
      "golden_hash": "fca825bc79296244b1b794f3875cb4b8de56d07d9d8ca2d9ec223a0bbcec59f8"
    }
  ]
}
