Hathway Broadband data API: plans, usage and bills
Hathway Broadband is the official self-care app of Hathway Cable & Data Com Ltd., the Indian multi-system operator that sells high-speed cable and fibre internet alongside its cable-TV business. Subscribers sign in with their broadband account number plus an OTP sent to the registered mobile (RMN) or email, then land on a home dashboard that shows the current plan name, pack validity, outstanding bill and a Pay Now / Renew Plan action. From there the app covers data-usage history against the FUP quota, change-plan and add-plan catalogues filtered by city and technology, GSTIN verification on the account, UPI Auto Pay mandate setup so the bill is debited automatically, OTT add-ons (Playbox, YuppTV, Sun NXT) bundled with some plans, a hosted Ookla speed-test link, and service tickets for technical faults, billing copies and shifting the connection to a new address. Payments check out through Paytm, PayU, HDFC SmartGateway / QR, Amazon Pay, TechProcess and CCAvenue. The app is for Hathway broadband households in India — a market where it sits next to JioFiber, Airtel Xstream Fiber and ACT Fibernet self-care apps — and also exposes a field-ops (FOS) draft-payment path used by collection agents.
Broadband account_no sessions and FUP dataUsage rows are the objects behind every signed-in Hathway line. Login binds the CAN to a customer_id, customer_poid and rmn, the plan snapshot adds plan_name, plan_speed, plan_end_date and technology, and usage reports quota, fup_status and the post-FUP fup_download_speed. The bill side carries bill_no, bill_due_date, outstanding_amount and payable_amount; Auto Pay exposes upi, bank_mandate_status and mandate_max_amount; GSTIN verification returns gstin and legal_name; tickets land as ticket_id / workorder_id.
Household-billing bots, MSP usage dashboards, collection-agent quoting tools and finance GST / mandate checks consume those fields. openData Studio turns them into callable open data.
Screenshots
API surface
The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.
Send login OTP to registered mobile or email
POST
/v1/isp/otposintStarts Hathway self-care login by sending a one-time password to the broadband account's registered mobile number (RMN) or email.
Auth: Unauthenticated. Body is the broadband account_no plus the channel (phone or email). The OTP is delivered to registered_mobile_no / rmn or the account email.
- account_no
- mobile_no
- channel
- status
- statusCode
- message
- otpSent
- registered_mobile_no
- rmn
POST /v1/isp/otp HTTP/1.1 Content-Type: application/json { "account_no": "1234567890", "mobile_no": "9876543210", "channel": "SMS" }{ "status": "SUCCESS", "statusCode": 200, "message": "OTP sent", "otpSent": true, "registered_mobile_no": "98XXXX3210", "rmn": "9876543210" }Verify OTP and open customer session
POST
/v1/isp/sessionosintConfirms the login OTP and returns the session token plus the subscriber profile bound to the broadband account_no.
Auth: Unauthenticated. Body carries account_no plus the SMS/email otp. The returned token is sent as Authorization and authorizationkey on later self-care calls.
- account_no
- otp
- login_device
- token
- authorizationkey
- customer_id
- customer_name
- customer_full_name
- rmn
- customer_plan
- customer_plan_type
- customer_poid
POST /v1/isp/session HTTP/1.1 Content-Type: application/json { "account_no": "1234567890", "otp": "482913", "login_device": "android" }{ "status": "SUCCESS", "statusCode": 200, "token": "hw-session-9f2a", "authorizationkey": "ak-hathway-7c11", "customer_id": "C-18482911", "customer_name": "Rahul Sharma", "customer_full_name": "Rahul Sharma", "account_no": "1234567890", "rmn": "9876543210", "email": "[email protected]", "customer_plan": "FiberMax 200", "customer_plan_type": "POSTPAID", "customer_poid": "POID-8821" }Fetch subscriber and current plan snapshot
GET
/v1/isp/subscriberopendataReturns the signed-in broadband subscriber record: identity, installation address, current plan POID / speed / dates and whether an OTT add-on is attached.
Auth: Authorization / authorizationkey from the session login. Query is the signed-in account_no.
- customer_id
- customer_name
- account_no
- registered_mobile_no
- installation_address
- plan_name
- plan_type
- plan_speed
- plan_poid
- plan_start_date
- plan_end_date
- plan_duration
- technology
- tariffplanname
- is_ott
- ott_status
GET /v1/isp/subscriber?account_no=1234567890 HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "customer_id": "C-18482911", "customer_name": "Rahul Sharma", "account_no": "1234567890", "registered_mobile_no": "9876543210", "installation_address": "12, Andheri West, Mumbai 400053", "plan_name": "FiberMax 200", "plan_type": "POSTPAID", "plan_speed": "200 Mbps", "plan_poid": "POID-8821", "plan_start_date": "2026-04-01", "plan_end_date": "2026-10-31", "plan_duration": "6 months", "technology": "GPON", "tariffplanname": "FiberMax 200 Unlimited", "is_ott": true, "ott_status": "ACTIVE" }Read FUP data-usage history
GET
/v1/isp/usageopendataReturns the account's FUP quota, consumed dataUsage and the post-FUP throttle speeds shown on the Data Usage screen.
Auth: Authorization / authorizationkey from login. Scoped to the signed-in account_no.
- account_no
- quota
- dataUsage
- fup
- fup_status
- download_speed
- upload_speed
- fup_download_speed
- fup_upload_speed
- plan_end_date
- usage
- data_usage_x
- data_usage_y
GET /v1/isp/usage?account_no=1234567890 HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "account_no": "1234567890", "quota": "1000 GB", "dataUsage": "412.6 GB", "fup": true, "fup_status": "WITHIN_LIMIT", "download_speed": "200 Mbps", "upload_speed": "50 Mbps", "fup_download_speed": "20 Mbps", "fup_upload_speed": "5 Mbps", "plan_end_date": "2026-10-31", "usage": [ {"bill_date": "2026-09-01", "data_usage_x": "12.4", "data_usage_y": "3.1"} ] }Last bill and payment detail
GET
/v1/isp/last-billopenfinanceReturns the latest invoice (bill_no, due date, outstanding_amount) and the last successful payment / receipt for the Pay Bill screen.
Auth: Authorization / authorizationkey from login.
- account_no
- bill_no
- bill_date
- bill_due_date
- bill_period_start_date
- bill_period_end_date
- outstanding_amount
- total_due_amount
- paid_amount
- receipt_no
- last_payment_detail
- payment_date
- payment_status
- payment_gateway
- txn_id
- last_paid_plan_name
GET /v1/isp/last-bill?account_no=1234567890 HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "account_no": "1234567890", "bill_no": "HW-202609-4412", "bill_date": "2026-09-01", "bill_due_date": "2026-09-15", "bill_period_start_date": "2026-08-01", "bill_period_end_date": "2026-08-31", "outstanding_amount": 1299.0, "total_due_amount": 1299.0, "paid_amount": 1299.0, "receipt_no": "RCPT-90821", "last_payment_detail": { "payment_date": "2026-08-12", "payment_status": "SUCCESS", "payment_gateway": "PAYTM", "txn_id": "TXN882199" }, "last_paid_plan_name": "FiberMax 200" }Today's collectable / outstanding amount
GET
/v1/isp/amount-dueopenfinanceComputes the amount due today after autopay / plan discounts, used by the Pay Now tile and the FOS collection flow.
Auth: Authorization / authorizationkey from login.
- account_no
- payable_amount
- outstanding_amount
- final_amount
- plan_discount
- plan_amount
- currency
GET /v1/isp/amount-due?account_no=1234567890 HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "account_no": "1234567890", "payable_amount": 1299.0, "outstanding_amount": 1299.0, "final_amount": 1169.0, "plan_discount": 130.0, "plan_amount": 1299.0, "currency": "INR" }List changeable / renewable plans
GET
/v1/isp/plansopendataLists plans the account can renew or switch to, filtered by city, current plan name, plan_type and last-mile technology.
Auth: Authorization / authorizationkey from login. Query includes account_no plus optional city, current_plan_name, plan_type, size and technology filters.
- account_no
- city
- current_plan_name
- plan_type
- technology
- plans
- plan_poid
- plan_name
- plan_speed
- plan_amount
- plan_duration
- is_ott
GET /v1/isp/plans?account_no=1234567890&city=Mumbai¤t_plan_name=FiberMax%20200&plan_type=POSTPAID&technology=GPON HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "plans": [ { "plan_poid": "POID-9104", "plan_name": "FiberMax 500", "plan_type": "POSTPAID", "plan_speed": "500 Mbps", "plan_amount": 1599.0, "plan_duration": "1 month", "technology": "GPON", "is_ott": true, "city": "Mumbai" } ] }Quote amount for a selected new plan
POST
/v1/isp/plan-quoteopenfinancePrices a plan change or renewal before checkout, returning payable_amount after discounts and any outstanding carry-over.
Auth: Authorization / authorizationkey from login.
- account_no
- new_plan_id
- new_plan_duration
- current_plan_id
- plan_amount
- plan_discount
- payable_amount
- charge_amount
- final_amount
- outstanding_amount
POST /v1/isp/plan-quote HTTP/1.1 Content-Type: application/json Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11 { "account_no": "1234567890", "new_plan_id": "POID-9104", "new_plan_duration": "1 month", "current_plan_id": "POID-8821" }{ "status": "SUCCESS", "new_plan_id": "POID-9104", "plan_amount": 1599.0, "plan_discount": 100.0, "payable_amount": 1499.0, "charge_amount": 1499.0, "final_amount": 1499.0, "outstanding_amount": 0.0 }List payment gateways and start a checkout
GET
/v1/isp/gatewaysopenfinanceReturns the live checkout rails (Paytm, PayU, HDFC SmartGateway, Amazon Pay, TechProcess, UPI) and the order_id used to start a payment.
Auth: Authorization / authorizationkey from login. Checkout itself is a follow-up to the selected gateway (Paytm, HDFC, Amazon Pay, TechProcess or UPI).
- account_no
- paymentGateways
- gateway_id
- gateway
- preferredGateway
- payable_amount
- order_id
GET /v1/isp/gateways?account_no=1234567890&device=mobile HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "paymentGateways": [ {"gateway_id": "PAYTM", "gateway": "Paytm", "preferredGateway": true}, {"gateway_id": "PAYU", "gateway": "PayU"}, {"gateway_id": "HDFC", "gateway": "HDFC SmartGateway"}, {"gateway_id": "UPI", "gateway": "UPI"} ], "payable_amount": 1299.0, "order_id": "ORD-441288" }Poll payment status after checkout
POST
/v1/isp/payment-statusopenfinancePolls the selected gateway after the in-app WebView checkout and returns payment_status, gateway txn id and receipt_no.
Auth: Authorization / authorizationkey from login.
- account_no
- order_id
- txn_id
- payment_gateway
- payment_status
- payment_gateway_transaction_id
- paid_amount
- receipt_no
- payment_date
POST /v1/isp/payment-status HTTP/1.1 Content-Type: application/json Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11 { "account_no": "1234567890", "order_id": "ORD-441288", "txn_id": "TXN882199", "payment_gateway": "PAYTM" }{ "status": "SUCCESS", "payment_status": "SUCCESS", "order_id": "ORD-441288", "txn_id": "TXN882199", "payment_gateway_transaction_id": "PTM-992211", "paid_amount": 1299.0, "receipt_no": "RCPT-90821", "payment_date": "2026-10-02T11:04:12+05:30" }List UPI Auto Pay mandates
GET
/v1/isp/mandatesopenfinanceLists UPI Auto Pay mandates linked to the broadband account so the bill / recharge can be debited automatically.
Auth: Authorization / authorizationkey from login. Register and deregister are companion writes on the same Auto Pay screen.
- account_no
- mandates
- upi
- bank_mandate_status
- mandate_max_amount
- mandate_frequency
- autopayMinimumAlertAmountRef
GET /v1/isp/mandates?account_no=1234567890 HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "mandates": [ { "account_no": "1234567890", "upi": "rahul@okaxis", "bank_mandate_status": "ACTIVE", "mandate_max_amount": 3000.0, "mandate_frequency": "ASPRESENTED", "autopayMinimumAlertAmountRef": 500.0 } ] }Verify GSTIN on the broadband account
POST
/v1/isp/gstinopendataVerifies a GSTIN against the government registry and binds it to the Hathway account so subsequent invoices carry GST details.
Auth: Authorization / authorizationkey from login.
- account_no
- gstin
- gst_no
- gstStatus
- legal_name
- TRADE NAME
- TAXPAYER TYPE
- gst_account_no
POST /v1/isp/gstin HTTP/1.1 Content-Type: application/json Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11 { "account_no": "1234567890", "gstin": "27AABCH1234A1Z5", "gst_no": "27AABCH1234A1Z5" }{ "status": "SUCCESS", "gstStatus": "VERIFIED", "gstin": "27AABCH1234A1Z5", "gst_no": "27AABCH1234A1Z5", "legal_name": "RAHUL SHARMA", "TRADE NAME": "Sharma Broadband", "TAXPAYER TYPE": "Regular", "gst_account_no": "1234567890" }Open a service ticket (fault, bill copy, shift)
POST
/v1/isp/ticketsopendataCreates a technical, billing or shift-connection service request and returns the ticket_id / workorder_id tracked on the ticket screen.
Auth: Authorization / authorizationkey from login.
- account_no
- ticket_type
- disposition_name
- customer_phone
- ticket_id
- ticket_status
- workorder_id
POST /v1/isp/tickets HTTP/1.1 Content-Type: application/json Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11 { "account_no": "1234567890", "ticket_type": "TECHNICAL", "disposition_name": "Slow speed", "customer_phone": "9876543210" }{ "status": "SUCCESS", "ticket_id": "SR-552189", "ticket_type": "TECHNICAL", "ticket_status": "OPEN", "disposition_name": "Slow speed", "workorder_id": "WO-77821" }OTT add-on status and YuppTV packages
GET
/v1/isp/ottopendataTells the Claim OTT / Playbox screen whether the current plan includes streaming add-ons and whether activation is still pending.
Auth: Authorization / authorizationkey from login.
- account_no
- is_ott
- ott_status
- ott_url
- plan_end_date_for_ott
- isOttPlan
- isOttPending
- yuppTvData
GET /v1/isp/ott?account_no=1234567890 HTTP/1.1 Authorization: hw-session-9f2a authorizationkey: ak-hathway-7c11{ "status": "SUCCESS", "is_ott": true, "ott_status": "ACTIVE", "ott_url": "https://playbox.example/activate", "plan_end_date_for_ott": "2026-10-31", "isOttPlan": true, "isOttPending": false, "yuppTvData": [ {"package": "YuppTV Premium", "status": "ACTIVE"} ] }
Data categories
- subscriber identity
- broadband plans
- FUP usage
- bills and outstanding
- UPI autopay mandates
- GSTIN
- service tickets
- OTT add-ons
Where teams use this data
Broadband bill-pay and outstanding alerts
A household-billing bot reads the last invoice and today's amount-due after the account_no OTP session and pages when outstanding_amount or bill_due_date is inside a chosen window, using payable_amount as the suggested Pay Now figure.
FUP quota and speed-throttle monitoring
A usage dashboard pulls quota, dataUsage, fup_status and fup_download_speed nightly so an MSP can warn a site before it drops from plan_speed onto the post-FUP throttle.
Plan-change quoting for collections
A field-ops tool lists plan rows (plan_poid, plan_speed, plan_amount, is_ott) then posts a plan quote so a collection agent can quote payable_amount before opening a Paytm / HDFC / UPI checkout.
GSTIN and Auto Pay mandate check
Finance ops verify a gstin / legal_name / gstStatus on the account and read mandate rows (upi, bank_mandate_status, mandate_max_amount) to confirm which accounts will auto-debit and which invoices carry a verified GSTIN.
Frequently asked questions
How does Hathway Broadband authenticate subscribers?
The self-care app signs in with the broadband account_no plus an OTP sent to the registered mobile (rmn) or email at POST /v1/isp/otp, then POST /v1/isp/session returns token and authorizationkey used as Authorization on later calls. There is no anonymous access to plan, usage or bill data.
What billing and usage fields does the API return?
Last-bill returns bill_no, bill_due_date, outstanding_amount, paid_amount and last_payment_detail (txn_id, payment_gateway). Usage returns quota, dataUsage, fup_status and the post-FUP download/upload speeds. Amount-due computes payable_amount after discounts.
Does the app expose UPI Auto Pay and GSTIN?
Yes. GET /v1/isp/mandates lists upi, bank_mandate_status, mandate_max_amount and mandate_frequency. POST /v1/isp/gstin binds a gstin / legal_name onto the account so invoices carry GST.
Which payment gateways can checkout use?
Gateways returns Paytm, PayU, HDFC SmartGateway, Amazon Pay, TechProcess and UPI. Payment-status then polls payment_status, payment_gateway_transaction_id and receipt_no after the in-app WebView.
Apps similar to Hathway Broadband
- JioFiber — Reliance Jio's fibre self-care app for Indian home broadband — plan, usage and bill pay on a competing last-mile.
- Airtel Thanks / Xstream Fiber — Bharti Airtel's consumer app covers Xstream Fiber broadband accounts alongside mobile, with bill and plan screens.
- ACT Fibernet — ACT's subscriber app for fibre households in south and west Indian cities, with usage and recharge flows.
- My DishTV — Dish TV India's DTH self-care app — another Hathway-group / Indian pay-TV property with RMN OTP login and recharge.
Topics
- Hathway Broadband API
- Hathway self-care endpoints
- account_no OTP login
- FUP dataUsage quota
- outstanding_amount bill
- UPI Auto Pay mandate
- GSTIN verification
- Hathway plan_poid
- India ISP open data
Need this app's data API integrated?
We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.
- NDA + SOW on every engagement
- Delivery in 3–7 days
- Payment only after acceptance
- Work scoped to authorized use