Summary
Kalshi removed client_order_id from Fill response objects on March 30 2026. Our core/specs/kalshi.yaml Fill schema still declares this field. Code reading fill.client_order_id will receive undefined.
Impact
HIGH — fill reconciliation that relies on client_order_id to correlate fills with submitted orders will silently break. This may cause duplicate order detection or missed fill tracking.
Details
- Field removed:
client_order_id (string) from the Fill object
- Removal date: March 30 2026 (Kalshi changelog)
- Affected endpoints: GET /portfolio/fills, GET /portfolio/orders/{order_id}/fills
- Current spec:
core/specs/kalshi.yaml Fill schema still includes client_order_id
Required Fix
- Remove
client_order_id from the Fill schema in core/specs/kalshi.yaml
- Audit the Kalshi normalizer for any logic that reads
fill.client_order_id — replace with the parent order's ID from the request context or a separate lookup if needed
Summary
Kalshi removed
client_order_idfrom Fill response objects on March 30 2026. Ourcore/specs/kalshi.yamlFill schema still declares this field. Code readingfill.client_order_idwill receiveundefined.Impact
HIGH — fill reconciliation that relies on
client_order_idto correlate fills with submitted orders will silently break. This may cause duplicate order detection or missed fill tracking.Details
client_order_id(string) from the Fill objectcore/specs/kalshi.yamlFill schema still includesclient_order_idRequired Fix
client_order_idfrom the Fill schema incore/specs/kalshi.yamlfill.client_order_id— replace with the parent order's ID from the request context or a separate lookup if needed