Who is this API for?
Everyone who touches a duty credit scrip, on one REST API: exporters selling matured credits, importers covering customs duty below face value, brokers and desks booking block deals, enterprise groups netting across entities, and platforms embedding the whole flow for their own clients. Pick your path from the introduction.What is a duty credit scrip?
A transferable credit issued by the Government of India that pays basic customs duty at face value. Exporters earn them under RoDTEP and RoSCTL, importers buy them below face to save on duty. The concept page is What is a scrip?Which schemes can I trade?
RODTEP and ROSCTL, the two values of the scheme enum. See the Schemes annexure.
How are prices quoted?
In bps of face value. 9,650 bps means 96.50% of face. Money is always integer paise. Worked examples: Money and price.What does all_in_paise mean on a quote?
The one number that changes hands. For a seller, what lands after everything; for a buyer, what is paid, everything included. There is no fee schedule to reconstruct on top.
Is a quote firm?
Yes, two ways.POST /v1/quote returns a firm two-sided price for the exact amount, and an order carries your own min_pct_bps floor so a fill can never cross your limit.
How do I run hundreds of firms behind one integration?
The API is built for exactly that. Register each firm once and verify it, then list its credits and take a direct quote perscrip_no. Mint one child key per service for clean attribution, per-key limits and instant revocation, and reconcile the whole book with statements and the audit export. See Embed ScripX.
Can a firm register as both exporter and importer?
Not yet:role is exactly one of exporter or importer per firm, and the API rejects anything else with a 422. Register the side the firm will trade; dual-role firms are on the roadmap.
What is the first call of an integration?
POST /v1/firms: register the client firm, then verify and authorize it. Trading for a firm starts once its connection state is connected.
Can I onboard firms entirely through the API?
Yes, that is the flow: verify with the firm’s customs-account credentials collected in your own UI under its mandate, then authorize with the one-time code the firm receives. The whole lifecycle (register, verify, authorize, credits, update, delete) is on the API, so the onboarding experience is entirely yours to build.How do I try the API without real money?
Ask for ascripx_test_… sandbox key. Same host, same contract, full lifecycle with simulated money: orders match, settlements complete and webhooks fire, but no bank money ever moves. See Environments.
Can I build my whole UI before going live?
Yes, that is what sandbox is for. Every screen a client sees, price panel, trade flow, status timeline, statements, runs end to end on a sandbox key with production response shapes. See Build your UI against sandbox.How do I avoid duplicate orders on retry?
Send anIdempotency-Key header on POST /v1/orders. Re-sending the same key returns the original order.
Should I poll or use webhooks?
Both work; webhooks are cheaper and faster. Register once, verify theX-ScripX-Signature on each delivery, and re-read the resource for authoritative state. See Webhooks.
Where do I see what a trade cost me?
On a market trade,all_in_paise on the quote is the whole number: net to the seller, total to the buyer, nothing added afterwards. On a cross you set both prices and the response returns gross_spread_paise, platform_fee_paise and net_spread_paise before you commit. Across a period, earnings and statements itemise it. For commercial terms, write to amin@eximfiles.io.
What is the cross desk?
Broker and enterprise tooling for pre-arranged block deals and intra-group transfers: price withPOST /v1/cross/quote, prepare with POST /v1/cross, then fund and release as two explicit, gated steps. Nothing settles on its own.
What is group netting?
POST /v1/group/net-plan takes your group companies’ net positions and returns the minimal set of internal transfers that squares them, so you trade only the true group-level residual on the market.
Do my clients see ScripX?
Yes, by design. Verification and authorization always complete with ScripX, and settlement, payout and the audit trail carry ScripX. A firm always knows its trades run on ScripX.How do I reconcile my bill?
GET /v1/statements/mtd is the draft bill for the running period, and GET /v1/audit/export gives a tamper-evident, hash-chained export of your event log.
What are the rate limits?
Per key: a monthly call quota and a per-minute rate, with the live numbers inX-RateLimit-* headers on every response. See Authentication.
Where is every term defined?
In the Terminology annexure, which defines every domain term the API reference uses and names the field that carries it. The wider market vocabulary is in the Glossary.Is there a machine-readable spec?
Yes:GET /v1/openapi.json, public, no key. See Use with AI.