Skip to content

Bulk Upload Template Documentation

This documentation guides users on how to prepare and submit bulk data to the platform. The upload is divided into three parts: Index, Coverage, and Policy. Each section describes the required fields, how to fill them, and provides an example.


1. Index

These fields define the index logic used for payouts:

  1. index_name: Unique name for the index.
    Example: JUN_2024_EXCESS_RF

  2. index_spec: A short specification of the index type.
    Example: Excess Rainfall Index for June

  3. index_definition: Internal system name of the index. This should match the indexDefinition field in the Coverage sheet.
    Example: JUN_2024_EXCESS_RF

  4. trigger_label: A human-readable label to explain the trigger condition.
    Example: Excess Rainfall

  5. trigger_comparator: The comparison logic (e.g., >, <) that defines when the index gets triggered.
    Example: >

  6. output_variable: The data variable being analyzed (e.g., rainfall, wind speed).
    Example: precip-sum-24hr

  7. trigger_unit: Unit of measurement for the trigger.
    Example: mm


2. Coverage

Coverage entries describe the insured area and index-based parameters:

  1. name: A unique coverage name. Usually autogenerated with index and coordinates.
    Example: JUN_2024_EXCESS_RF_124.2276_9.8661

  2. insuredLat: Latitude of the insured point.
    Example: 9.8661

  3. insuredLon: Longitude of the insured point.
    Example: 124.2276

  4. uwYear: Underwriting year.
    Example: 2024

  5. coverageStart: Start date of coverage in YYYY-MM-DD format.
    Example: 2024-06-01

  6. coverageEnd: End date of coverage.
    Example: 2024-07-31

  7. indexDefinition: Reference to the defined index used for this coverage.
    Example: JUN_2024_EXCESS_RF

  8. dataSetId: ID of the dataset used (e.g., CHIRPS, ERA5, IBTrACS).
    Example: ecmwf-era5-land-precip-sum-24hr

  9. trigger: Value above or below which payout begins.
    Example: 166.176252

  10. exit: Value beyond which maximum payout is given.
    Example: 208.911295

  11. minPayout: The base payout even if performance is slightly over the trigger.
    Example: 0

  12. payoutPerUnit: Amount paid per unit beyond the trigger.
    Example: 2.34

  13. sumInsured: Total coverage amount in numeric value.
    Example: 30

  14. currency: Currency of the sum insured.
    Example: USD

  15. grossPremiumPct: Premium percentage as a fraction of the sum insured.
    Example: 10.195124

  16. labels: Optional custom metadata like external_ref.
    Example: user/external_ref=ECMWF_124.2276_9.8661_ER


3. Policy

Policy defines the insured contract details:

  1. policyName: Name of the policy.
    Example: PHI_9.8661_124.2276

  2. externalRef: External identifier to track in user systems.
    Example: PHI_9.8661_124.2276_ER

  3. quantity: Number of insured units.
    Example: 1

  4. insuredUnit: Unit of insurance (e.g., acres, hectares).
    Example: acres

  5. sumInsured: Insured amount, ideally equals coverage sum × quantity.
    Example: 30

  6. sumInsuredCurrency: Currency of the insured amount.
    Example: USD

  7. policyIssuer: Organization issuing the policy.
    Example: ABC Insurance

  8. policyHolder: Entity holding the policy.
    Example: XYZ Ltd.

  9. intermediary: Broker or facilitator of the policy.
    Example: HarvestHub

  10. perils: List of covered risks, comma-separated.
    Example: Excess Rainfall, Cyclone, Deficit Rainfall, Temperature Fluctuation, etc.

  11. labels: Optional metadata or custom tags.
    Example: user/external_ref=PHI_9.8661_124.2276_ER