Skip to content

Property Insurance Integration Guide

Covers All Risk Insurance (allr-stnd-1111) and Fire & Burglary Insurance (firb-stnd-1111).


Product Overview

All Risk Insurance Fire & Burglary Insurance
Product code allr-stnd-1111 firb-stnd-1111
Coverage Accidental loss or damage from any cause not excluded Fire, lightning, explosion, and burglary/theft
Cover periods 1 month, 3 months, 6 months, 1 year 1 month, 3 months, 6 months, 1 year

Pricing

Indicative rates. Premiums shown are examples and subject to change. Always use Step 1 (SR10) to get the current rate before collecting payment from your customer.

Product Rate Example (₦10,000,000 sum insured, 1 year)
All Risk 0.5% of sum insured ₦50,000
Fire & Burglary 0.35% of sum insured ₦35,000

Shorter durations use prorated rates:

Duration All Risk rate Fire & Burglary rate
"1y" 0.50% 0.35%
"6m" 0.30% 0.20%
"3m" 0.20% 0.13%
"1m" 0.10% 0.05%

Step 1 — Get Premium Quote

All Risk:

curl -X POST https://octamile-api.azurewebsites.net \
  -H "Content-Type: application/json" \
  -d '{
    "userInfo": {
      "id": "YOUR_PARTNER_ID",
      "athrzt": { "id": "YOUR_AUTH_ID", "key": "YOUR_AUTH_KEY" }
    },
    "cmmnd": {
      "cmmnd": "dump ipck_allr-stnd-1111*PRMM",
      "seed": {
        "sumInsured": 10000000,
        "insrncDrtn": "1y"
      }
    }
  }'

Use firb-stnd-1111 for Fire & Burglary. The seed fields are identical.

Seed field Type Description
sumInsured number (float) Value of the property being insured in Naira
insrncDrtn string Duration: "1m", "3m", "6m", "1y"

Response:

{
  "exctnFdbck": { "id": 75, "id_v4": 200 },
  "prmm": 50000
}


Step 2 — Register Consumer

Standard consumer registration. See API Reference — Register Consumer for the full field list.

{
  "cmmnd": {
    "cmmnd": "prfl entity",
    "seed": {
      "type": "s",
      "class": "h",
      "name": { "first": "Ngozi", "last": "Adeyemi" },
      "phoneNo": "+2348031234567",
      "eMail": "ngozi.adeyemi@example.com"
    }
  }
}

Response: Returns id — store as consumer_id.


Step 3 — Request Policy

All Risk:

curl -X POST https://octamile-api.azurewebsites.net \
  -H "Content-Type: application/json" \
  -d '{
    "userInfo": {
      "id": "YOUR_PARTNER_ID",
      "athrzt": { "id": "YOUR_AUTH_ID", "key": "YOUR_AUTH_KEY" }
    },
    "cmmnd": {
      "cmmnd": "entt_{CONSUMER_ID}: insure",
      "seed": {
        "ctgry": "allr",
        "type": "stnd",
        "pckg": "1111",
        "id": "YOUR_UUID_V4_TX_REF",
        "insrncDrtn": "1y",
        "addtnlFact": {
          "sumInsured": 10000000,
          "propertyAddress": "12 Victoria Island, Lagos, Nigeria"
        }
      }
    }
  }'

For Fire & Burglary use "ctgry": "firb". All other fields are identical.

Required Fields

Field Type Description
ctgry string "allr" (All Risk) or "firb" (Fire & Burglary)
type string "stnd"
pckg string "1111"
id string Your UUID v4 transaction reference
insrncDrtn string Duration: "1m", "3m", "6m", "1y"
addtnlFact.sumInsured number (float) Value of the property in Naira — e.g., 10000000
addtnlFact.propertyAddress string Full address of the insured property

Response:

{
  "exctnFdbck": { "id": 75, "id_v4": 200 }
}


Step 4 — Check Policy Status

All Risk:

dump entt_{CONSUMER_ID}|insr_allr-stnd-1111-{TX_ID}*STATUS

Fire & Burglary:

dump entt_{CONSUMER_ID}|insr_firb-stnd-1111-{TX_ID}*STATUS

Status values

status Meaning Next step
"p" Pending — NSIA is processing the policy Continue polling
"a" Approved — policy number in response Done
"d" Declined — see statusNote for the reason Do not retry; contact Octamile

Polling: In test mode, approval is instant. In live mode, poll every 5–10 seconds; property policies typically approve within 60 seconds.

Approved response (live mode):

{
  "exctnFdbck": { "id": 75, "id_v4": 200 },
  "status": "a",
  "policyNo": "NSIA-PROP-2024-XXXXXXXX"
}

In test mode, the response also includes certUrl — a demo certificate link for integration testing. In live mode, only policyNo is returned.


Common Errors

Error Cause Fix
sumInsured not provided Missing addtnlFact.sumInsured Add sumInsured as a number to addtnlFact
sumInsured not a number Sent as a string ("10000000") Send as a number: 10000000 (no quotes)
propertyAddress not provided Missing addtnlFact.propertyAddress Add the full property address string

See also