{
  "title": "Nifty 2.0 Rental & Pellet Sales Claim",
  "description": "Submit your claim for stove rental and pellet sales linked to your Nifty 2.0 cookstove asset.",
  "pages": [
    {
      "name": "claimOverview",
      "elements": [
        {
          "type": "text",
          "name": "ixo:claimPeriodStartMonth",
          "title": "Claim period start month",
          "description": "Select the first month of this claim period (format: YYYY-MM).",
          "isRequired": true,
          "inputType": "month"
        },
        {
          "type": "text",
          "name": "ixo:claimPeriodEndMonth",
          "title": "Claim period end month",
          "description": "Select the last month of this claim period (format: YYYY-MM).",
          "isRequired": true,
          "inputType": "month"
        },
        {
          "type": "text",
          "name": "ixo:claimPeriodInMonths",
          "title": "Number of months in claim period",
          "description": "Enter the number of months between the start and end month (minimum 3 months).",
          "isRequired": true,
          "validators": [
            {
              "type": "numeric",
              "text": "The claim period must be at least 3 months.",
              "minValue": 3
            }
          ],
          "inputType": "number"
        }
      ],
      "title": "Claim overview"
    },
    {
      "name": "rentalClaim",
      "elements": [
        {
          "type": "text",
          "name": "ixo:numberOfStovesInService",
          "title": "Number of stoves in service this period",
          "isRequired": true,
          "inputType": "number"
        },
        {
          "type": "text",
          "name": "ixo:rentalRatePerStove",
          "title": "Enter the agreed rental amount per stove for this claim period, in EUR.",
          "defaultValue": 6,
          "isRequired": true,
          "readOnly": true,
          "inputType": "number"
        },
        {
          "type": "expression",
          "name": "ixo:calculatedRentalAmount",
          "title": "Calculated rental amount",
          "description": "Automatically calculated total rental for this period.",
          "expression": "{ixo:numberOfStovesInService} * {ixo:rentalRatePerStove}",
          "displayStyle": "decimal"
        }
      ],
      "title": "Rental claim"
    },
    {
      "name": "pelletSalesClaim",
      "elements": [
        {
          "type": "text",
          "name": "ixo:pelletSalesStartMonth",
          "title": "Pellet sales start month",
          "description": "Select the first month of the pellet sales period (format: YYYY-MM).",
          "isRequired": true,
          "inputType": "month"
        },
        {
          "type": "text",
          "name": "ixo:pelletSalesEndMonth",
          "title": "Pellet sales end month",
          "description": "Select the last month of the pellet sales period (format: YYYY-MM).",
          "isRequired": true,
          "inputType": "month"
        },
        {
          "type": "text",
          "name": "ixo:pelletSalesPeriodInMonths",
          "title": "Number of months in pellet sales period",
          "description": "Enter the number of months between the start and end month (minimum 3 months).",
          "isRequired": true,
          "validators": [
            {
              "type": "numeric",
              "text": "The pellet sales period must be at least 3 months.",
              "minValue": 3
            }
          ],
          "inputType": "number"
        },
        {
          "type": "text",
          "name": "ixo:pelletFuelMassKg",
          "title": "Total pellet fuel sold (kg)",
          "description": "Total mass of pellets sold to households using Nifty stoves in this period.",
          "isRequired": true,
          "inputType": "number"
        },
        {
          "type": "text",
          "name": "schema:price",
          "title": "Total pellet sales revenue",
          "description": "Total revenue received for these pellet sales (optional, if tracked).",
          "inputType": "number"
        },
        {
          "type": "dropdown",
          "name": "schema:priceCurrency",
          "title": "Currency for pellet sales",
          "defaultValue": "ZMW",
          "choices": [
            {
              "value": "ZMW",
              "text": "Zambian Kwacha (ZMW)"
            },
            {
              "value": "USD",
              "text": "US Dollar (USD)"
            },
            {
              "value": "EUR",
              "text": "Euro (EUR)"
            }
          ]
        }
      ],
      "title": "Pellet sales claim"
    }
  ],
  "completeText": "Submit claim"
}