Subscribe to cable TV packages (DSTV, GoTV, Startimes).

Cable Subscription

Subscribe to cable TV packages for DSTV, GoTV, Startimes, and other supported providers.

Endpoint

POST https://example.com/api/cable_subscription

Request Headers

{
  "Accept": "application/json",
  "Content-Type": "application/json",
  "Authorization": "Bearer YOUR_API_TOKEN"
}

Request Body

FieldTypeRequiredDescription
cable_namestringYesCable provider name (e.g., "DSTV", "GOTV", "STARTIME")
cable_subscription_plan_idintegerYesCable plan ID
smart_card_numberstringYesDecoder smart card / IUC number

Example Request

{
  "cable_name": "DSTV",
  "cable_subscription_plan_id": 5,
  "smart_card_number": "1234567890"
}
curl -X POST https://example.com/api/cable_subscription \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{
    "cable_name": "DSTV",
    "cable_subscription_plan_id": 5,
    "smart_card_number": "1234567890"
  }'

Response

Success (200)

{
  "data": {
    "id": 1,
    "network": null,
    "ident": "CS20260318123045123456",
    "amount": "10,500.00",
    "api_response": "Success",
    "description": "DStv Confam 6200 DSTV Cable Subscription to 1234567890 (John Doe)",
    "plan_network": "N/A",
    "Status": "successful",
    "balance_before": "15,000.00",
    "balance_after": "4,500.00",
    "create_date": "18/03/2026 10:30 AM"
  }
}

Response Fields

FieldTypeDescription
idintegerTransaction ID
networkinteger/nullNetwork ID (typically null for cable)
identstringUnique transaction reference (prefixed with CS)
amountstringAmount charged (formatted with 2 decimals)
api_responsestringProvider response message, or "N/A"
descriptionstringHuman-readable transaction description
plan_networkstringAlways "N/A"
Statusstring"successful", "pending", or "failed"
balance_beforestringWallet balance before transaction
balance_afterstringWallet balance after transaction
create_datestringTransaction timestamp (format: DD/MM/YYYY hh:mm AM/PM)

Cable Providers

ProviderName Value
DSTV"DSTV"
GOtv"GOTV"
Startimes"STARTIME"

Sample Cable Plans

GOTV:

PlanAmount
GOtv Smallie₦1,100/month
GOtv Jinja₦2,250/month
GOtv Jolli₦3,300/month
GOtv Max₦4,850/month

DSTV:

PlanAmount
DStv Padi₦2,500/month
DStv Yanga₦3,500/month
DStv Confam₦6,200/month
DStv Premium₦24,500/month

Plan IDs and pricing may change. Always check your API dashboard for current plan IDs.

Error Handling

Validation Error (422)

Returned when request fields fail validation:

{
  "message": "The given data was invalid.",
  "errors": {
    "cable_name": ["The cable name field is required."],
    "cable_subscription_plan_id": ["Please Select Plan"],
    "smart_card_number": ["The smart card number field is required."]
  }
}
ErrorCause
"The cable name field is required."Missing cable_name parameter
"Please Select Plan"Missing cable_subscription_plan_id parameter
"The smart card number field is required."Missing smart_card_number parameter

Business Logic Errors (422)

{
  "message": "The given data was invalid.",
  "errors": {
    "status": ["Something Went Wrong! Try again Letter"]
  }
}
Error MessageFieldCause
"Insufficient wallet balance!"amountNot enough funds in your wallet
"Service unavailable!."statusCable service is currently disabled
"Your account has been restricted for transaction, Please submit your KYC to activate your account or contact support!."statusAccount KYC restriction
"Sorry, your daily cable_subscription spending limit exceeded! Limit: ₦X"statusDaily spending limit reached
"Something Went Wrong! Try again Letter"statusProvider-level failure (generic)

Unauthorized (401)

Returned when the Bearer token is missing or invalid.

IP Whitelist Denied (403)

{
  "status": false,
  "message": "Access Denied: Your IP (x.x.x.x) or Origin is not whitelisted for this API token."
}

Notes

  • Validate the smart card / IUC number using the IUC Validation endpoint before subscribing
  • Additional package charges may apply depending on the cable provider