X-ScripX-Key header, the same contract in sandbox and production. Whether you sell a single matured scrip, cover a Bill of Entry, run a broker book, square a group of companies, or embed all of it in your own product, you are calling the same endpoints.
Choose your path
Sell scrips
Exporters. List a firm’s matured credits, take a firm quote per scrip, sell with a price floor, and get paid with a UTR the same day.
Buy scrips
Importers. Quote a duty requirement, receive the whole-scrip bundle that covers it, and fund customs duty below face value.
Run a desk
Brokers and desks. Price a block deal, then prepare, fund and release it as separate deliberate steps, and read your earnings.
Net a group
Enterprises. Read positions across every entity, net internal surplus against internal demand, and take only the residual to market.
Embed ScripX
Platforms. Onboard client firms from your own UI, mint a scoped key per service, and reconcile the whole book with one audit trail.
Quick start
Everyone. Market snapshot to firm quote to a placed order, in five curl calls.
What the API gives you
- A firm price, not an indication.
POST /v1/quotereturns one binding price for an exact scrip or an exact duty requirement, good until a statedvalid_until, withall_in_paiseas the only number that changes hands. - Orders that cannot slip. A sell order carries
min_pct_bpsas a floor, a buy order carriesmax_pct_bpsas a ceiling, and anIdempotency-Keymakes any retry safe. - Delivery versus payment. Title and money move together or neither moves, and the seller payout carries a bank UTR on the same business day.
- Provenance on every scrip. A credit is quotable only once it has been screened.
sellable: trueon a firm’s credits is the flag to trade on. - Status without polling. Signed webhooks for
order.matched,settlement.settledandpayout.sent, with retries, dead-letters and replay. - A record that reconciles. Statements, earnings and a hash-chained audit export your auditor can verify offline.
The lifecycle at a glance
1
Connect the firm
Register the firm with its IEC, verify it under its own mandate, and complete with the one-time authorization code. A firm trades once its state is
connected.2
Quote
Read the market snapshot or the live stream, then take a firm quote for the exact scrip or the exact requirement.
3
Order
Place the order at your limit with an
Idempotency-Key, or batch up to 500. Desks book block deals and intra-group transfers on the cross desk.4
Settle and reconcile
Poll positions or take the webhook. Settlement completes delivery versus payment, the payout carries a UTR, and statements plus the audit export close the loop.
Base URL and environments
scripx_live_… is production; scripx_test_… is the sandbox, where the full lifecycle runs with simulated money and nothing real ever moves. Build your entire UI there first: see Environments. The machine-readable contract is public at GET /v1/openapi.json.
Three conventions that hold everywhere
Money is integer paise, price is bps of face value, timestamps are ISO 8601 (IST). Learn them once and every payload reads itself. Worked examples are in the Money and price annexure, and every term the API uses is defined in the Terminology annexure.Learn the market
What is a scrip?
The instrument itself: how a claim becomes a credit, and what the credit can pay.
RoDTEP explained
What the scheme remits, how rates are notified, and who earns them.
RoSCTL explained
The apparel and made-ups scheme, and how it differs from RoDTEP.
Price and discount
What moves the discount, and how bps convert to rupees.
Core concepts
Scrips, the reference rate, provenance, DvP settlement and the UTR.
Glossary
Every term in the market, with the API field that carries it.
Build the integration
Authentication
The
X-ScripX-Key header, scopes, child keys, and the rate limit headers on every response.Errors
The flat error body, every status code, and the stable
code values to branch on.Webhooks
Signature verification, delivery headers, retries, dead-letters and replay.
SDKs and tools
Python and TypeScript clients, webhook verification helpers, and the live OpenAPI spec.
Need help?
Write to support
Support is first-party, no ticket maze. Include your key prefix (never the full key) and, for a specific call, the response body you received.