Plustiveplustive
Sign inGet API key

Bill-payment API

DSTV Subscription API

Renew DStv subscriptions via API in Nigeria. Verify the smartcard, pay the bouquet — idempotent, auto-reconciled, prepaid from one wallet.

Renew DStv subscriptions programmatically through the Plustive cable TV API. DStv carries the largest subscriber base of the three major Nigerian cable providers, so it's usually the highest-volume biller on any payment platform.

The verify-then-pay flow protects customers: you confirm the smartcard account holder before any money moves, which catches transposed digits and wrong-decoder mistakes before they result in a failed renewal.

Payments draw down a prepaid wallet funded by bank transfer to a dedicated account (NUBAN) that credits automatically. All transactions are idempotent on your clientReference and reconcile or refund without manual intervention.

The API call

One authenticated POST /api/v1/cabletv request, idempotent on your clientReference, with all money in integer kobo:

# 1) verify the smartcard, then 2) pay the bouquet
curl -X POST https://api.plustiveimpact.com/api/v1/cabletv/verify \
  -H "Authorization: Bearer pk_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{ "productId": "dstv-compact", "smartcardNumber": "1234567890" }'

→ { "customerName": "ADA OKAFOR", "status": "valid" }

What you get

  • Verify the DStv smartcard before paying — returns the account holder name.
  • Idempotent on clientReference — safe to retry after any network failure.
  • Auto-reconciliation: ambiguous states resolve and any undelivered renewal refunds to your wallet.
  • Same prepaid wallet and Bearer key as data, airtime, electricity and other bills.
FAQ

DSTV Subscription API — FAQ

How do I renew a DStv subscription via API?

First verify the smartcard or IUC number with POST /api/v1/cabletv/verify, passing the productId (e.g., "dstv-compact") and the customer's smartcard number. This returns the account holder's name so the customer can confirm it's the right decoder. Then POST to /api/v1/cabletv with the same productId, smartcard number, and a unique clientReference to complete the renewal.

Is the DStv renewal idempotent?

Yes. Each renewal call carries your clientReference and the API enforces idempotency — retrying after a network timeout returns the same result instead of issuing a duplicate charge. Failed or unconfirmed renewals reconcile automatically and any debit is refunded to your wallet.

Do I need different credentials for DStv vs other cable billers?

No. DStv, GOtv and StarTimes all use the same /api/v1/cabletv endpoint, the same prepaid wallet, and the same Bearer key. The productId field is what identifies the biller and bouquet — switching billers is a change of one field, not a re-integration.

Related: