JouloDocs
CpoApi

ERE positions

Per-account eligibility checklist and delivered charging data • monetary position fields follow later.

ERE positions

GET /v1/ere-positions — scope cpo:accounts:read

One row per account: is it ERE-eligible, which onboarding gates are still open, and which months of charging data we received from you. Paginated with ?limit (default 50, max 200) and ?offset; narrow to one account with ?cpo_external_ref=.

curl "https://api.joulo.nl/functions/v1/api/v1/ere-positions?cpo_external_ref=your-crm-id-001" \
  -H "Authorization: Bearer <token>"
{
  "positions": [
    {
      "account_id": "60092124-…",
      "cpo_external_ref": "your-crm-id-001",
      "payout_handler": "via_cpo_invoicing",
      "ere_eligible": true,
      "checklist": {
        "mandate_signed": true,
        "ean_validated": true,
        "mid_charger_registered": true,
        "iban_present": true
      },
      "delivered_months": [
        {
          "period": "2026-07-01",
          "total_kwh": 184.2,
          "session_count": 31,
          "status": "staged",
          "received_at": "2026-08-01T09:12:00Z"
        }
      ],
      "total_kwh_delivered": 184.2,
      "ere": null
    }
  ],
  "limit": 50,
  "offset": 0,
  "count": 1
}

The checklist

The four automated gates that make an account ERE-eligible. ere_eligible flips to true when all four are green:

FieldMeaning
mandate_signedThe customer signed the machtiging on the Joulo-hosted screen.
ean_validatedThe connection is active and passed the EAN address check.
mid_charger_registeredAn active charger from a MID-certified catalog model is bound to the connection.
iban_presentAn IBAN is on file. Required for every account, also under via_cpo_invoicing.

Delivered months

Every month you pushed through POST /v1/sessions:batch, with its status:

  • staged — received and stored; not yet part of the ERE pipeline.
  • promoted — promoted into the ERE pipeline; counts toward the position.

The ere block

ere is null for now. The allocation, value and payout figures per account • and which monetary numbers apply per payout_handler model • are still being structured on our side. The field is already in the response so the shape won't change under you: it becomes an object once those figures go live, announced ahead of time.