ChargeIndia Hub uses a routing matrix (allow-list) to control which eMSPs can roam with which CPOs. This is a core pilot and production control mechanism.
How routing works
When an eMSP requests data or initiates an action involving a CPO, the Hub checks whether a routing rule exists for that eMSP↔CPO pair.
| If rule exists | Behavior |
|---|---|
| Yes | Request proceeds; data is visible or action is forwarded |
| No | Request fails or returns empty — partner is not visible |
Routing rules are configured by your ChargeIndia account team. Contact them to enable roaming with specific partner networks.
What routing affects
eMSP visibility
| Module | Routing impact |
|---|---|
| Locations | GET /locations returns only CPOs with active routing rules |
| Tariffs | GET /tariffs returns only routed CPO tariffs |
| Tokens | Authorization forwarded only to routed CPOs |
| Commands | Commands forwarded only to routed CPOs |
| Sessions/CDRs | Async push to eMSP only when session CDR token identifies a routed pair |
CPO behavior
CPOs push locations, sessions, and CDRs to the Hub regardless of routing. The Hub stores all data but only exposes it to eMSPs with active rules.
Session and CDR routing
Sessions and CDRs include a cdr_token with country_code and party_id identifying the eMSP. The Hub uses this to determine which eMSP receives async pushes.
Ensure cdr_token is set correctly on every session and CDR push — incorrect values will prevent delivery to the intended eMSP.
Example
| eMSP | CPO | Routing rule | eMSP can see CPO locations? |
|---|---|---|---|
| EMSP-A | CPO-1 | Active | Yes |
| EMSP-A | CPO-2 | Active | Yes |
| EMSP-B | CPO-1 | Not configured | No |
| EMSP-B | CPO-2 | Active | Yes |
Troubleshooting
| Symptom | Likely cause |
|---|---|
| Empty location list | No routing rules for your eMSP↔CPO pairs |
NOT_ROUTED or authorization failure | Target CPO not in your routing matrix |
| Session/CDR not received by eMSP | Missing or incorrect cdr_token on CPO push |
Contact your account team to verify routing configuration.