Onboarding

Partner credentials exchange and technical onboarding with ChargeIndia Hub.

Technical onboarding establishes mutual trust between your platform and ChargeIndia Hub through the OCPI Credentials module.

Overview

  1. Your account team registers your party and provides an initial Hub token.
  2. You call Hub credentials endpoints to exchange tokens and URLs.
  3. You provide your receiver module URLs to your account team.
  4. Routing rules are enabled for your target partner networks.
  5. You verify end-to-end connectivity before production traffic.

Contact your ChargeIndia account team before starting technical integration. You need an assigned country_code, party_id, and initial credentials.

Credentials exchange flow

sequenceDiagram
  participant Partner
  participant Hub as ChargeIndia Hub
  Partner->>Hub: POST /ocpi/2.2.1/credentials
  Note over Partner,Hub: Partner sends token, URL, roles
  Hub->>Partner: 200 OK with Hub token and HUB role
  Partner->>Hub: PUT /ocpi/2.2.1/credentials
  Note over Partner,Hub: Partner confirms exchange
  Hub->>Partner: 200 OK

Step 1: POST credentials

Call Hub with your platform details:

POST /ocpi/2.2.1/credentials
Authorization: Token {hub-issued-initial-token}
Content-Type: application/json

{
  "token": "your-platform-token",
  "url": "https://your-platform.com/ocpi/2.2.1",
  "roles": [
    {
      "role": "CPO",
      "party_id": "ABC",
      "country_code": "IN",
      "business_details": { "name": "Your CPO Ltd" }
    }
  ]
}

Adjust role to EMSP for eMSP partners.

Step 2: Store Hub response

The Hub responds with its credentials, including a HUB role:

{
  "status_code": 1000,
  "data": {
    "token": "hub-token-for-your-calls",
    "url": "https://hub.chargeindia.com/ocpi/2.2.1",
    "roles": [
      {
        "role": "HUB",
        "party_id": "CIH",
        "country_code": "IN"
      }
    ]
  }
}

Store data.token — use it for all subsequent Hub API calls.

Step 3: PUT credentials (confirmation)

Confirm the exchange:

PUT /ocpi/2.2.1/credentials
Authorization: Token {hub-token-from-step-2}
Content-Type: application/json

{
  "token": "your-platform-token",
  "url": "https://your-platform.com/ocpi/2.2.1",
  "roles": [ ... ]
}

Receiver module URLs

After credentials exchange, provide your account team with the URLs where the Hub should call your platform:

ModuleWho implementsExample path
Tokens (authorize)CPO/ocpi/2.2.1/tokens/{cc}/{pid}/{uid}/authorize
CommandsCPO/ocpi/2.2.1/commands/{command}
SessionseMSP/ocpi/2.2.1/sessions/{cc}/{pid}/{id}
CDRseMSP/ocpi/2.2.1/cdrs

The Hub resolves partner endpoints from its registry. Ensure your account team has configured your receiver URLs before testing async flows (sessions, CDRs, commands).

Routing enablement

Roaming traffic only flows between eMSP↔CPO pairs with an active routing rule. Your account team configures this after credentials exchange. See Routing.

Verification

  1. GET /ocpi/versions — confirm 2.2.1 is listed
  2. GET /ocpi/2.2.1 — confirm module endpoints
  3. GET /ocpi/2.2.1/hubclientinfo — confirm your party appears as CONNECTED

Related docs