How to migrate from WHMCS to IPTVbp

Switching your IPTV billing off WHMCS should not mean re-keying every client by hand. IPTVbp's built-in importer pulls your WHMCS clients, subscriptions, and stream logins straight into your new store — here is exactly how it works, and what you still do yourself.

Quick answer

To migrate from WHMCS to IPTVbp, open Portal → Dashboard → Migration, choose the WHMCS tab, and pull your data with one of two built-in methods: the recommended Export Script (a token-protected PHP file you upload to your own WHMCS server, which reads the WHMCS MySQL database directly and decrypts stream passwords) or the WHMCS API (your WHMCS URL plus an API identifier and secret). Both methods feed the same mapping screen, where you map each WHMCS product to an IPTVbp product you have pre-created and map custom fields to username, password, or MAC. IPTVbp then creates a customer account, an EndCustomer, and a Subscription for every matching service, plus one synthetic paid invoice per subscription. It imports clients, services, credentials, statuses, and renewal/due dates (from the next-due date) — the WHMCS billing cycle is used only so you can map each product per cycle, not stored as a recurring term. It does not recreate your products, real invoice or payment history, or client credit balances, and it does not provision new panel lines (it only links to existing ones). The WHMCS migration is a paid add-on module, and imported customers receive a random portal password, so you send bulk password resets after import. The importer never provisions, modifies, or cancels your panel lines — it only links to existing ones — so nothing it does interrupts your customers' current streams.

Step by step

  1. 1

    Enable the WHMCS module and pre-create your products

    The WHMCS importer is a paid add-on module (platform admins and owners bypass the gate). Before importing, create the IPTVbp products you want customers mapped onto — the importer never creates products, product groups, or pricing tiers, and any WHMCS product left unmapped has all of its services skipped.

  2. 2

    Open Migration and choose your ingest method

    Go to Portal → Dashboard → Migration and select the WHMCS tab. Pick the recommended Export Script method or the WHMCS API method. Export Script is the fuller path because it is the only one that can also read addons and configurable options for adult/multiroom detection.

  3. 3

    Pull your WHMCS data

    Export Script: enter your WHMCS store URL, click Generate Export Script, download the token-protected PHP file, and upload it to your WHMCS root (the folder containing configuration.php) via cPanel, FTP, or SSH. It runs on your own server — parsing your DB credentials from configuration.php, reading the WHMCS MySQL database directly, and decrypting stream passwords with your install's encryption hash — then returns the data to IPTVbp. IPTVbp never connects to your database itself. WHMCS API: instead supply your WHMCS URL, API identifier, and secret, and whitelist the platform IPs; note the API method cannot retrieve addons or configurable options.

  4. 4

    Review counts and choose which statuses to import

    Both methods converge on the same steps. Review the fetched client, service, and product counts, then choose which WHMCS statuses to import — the default is Active only. Active maps to ACTIVE and Suspended maps to SUSPENDED; every other status (Terminated, Cancelled, Pending, and so on) collapses to EXPIRED and is skipped unless you explicitly select it.

  5. 5

    Map products, custom fields, addons, and options

    Choose the target shop and, optionally, a panel integration. Map each WHMCS product — per billing cycle where a product has several — to one of your existing IPTVbp products. Map custom fields to username, password, MAC address, panel user ID, email, or notes, and map product addons and configurable options to Adult or Multiroom (+N connections). Set the auth type per product (auto, username/password, or MAC) where needed.

  6. 6

    Review and start the import

    Optionally enable "import clients without subscriptions" to bring over non-subscribers for remarketing (spam addresses are auto-excluded and clients without a valid email are skipped). Start the import — it commits directly in batches of 50 inside transactions (there is no dry-run for WHMCS). For each matching service it creates the customer records, a Subscription with your mapped credentials and an end date taken from the next-due date, plus one synthetic paid "migration" invoice.

  7. 7

    Reset passwords and delete the export script

    Imported customers receive a random portal password, so send bulk password resets from the Customers page. If you used the Export Script, delete the PHP file from your WHMCS server afterward. Duplicate emails reuse the existing customer and duplicate product+credential subscriptions are skipped, so you can safely re-run the import while refining your mapping.

What the WHMCS importer actually creates

The importer reads your WHMCS clients, services, and products and turns each matching service into real IPTVbp records — it is a genuine data move, not a screen-scrape, and it is precise about what it writes.

  • A customer login (role end-customer) with a random password, plus an EndCustomer per shop — if a client has no email, an EndCustomer is still created but without a login (no portal account).
  • One Subscription per WHMCS service, carrying username, password, MAC, status, and end/renewal date from the next-due date. (The cycle-to-days mapping — monthly=30, quarterly=90, annually=365 — is used only to map products per billing cycle, not stored on the subscription.)
  • One synthetic PAID invoice per subscription (gateway "migration", amount from the WHMCS recurring amount or your mapped product price).
  • A panel link only when you mapped a panel-user-ID custom field AND selected a panel integration — it links to an existing line, it does not provision a new one.

Two ways to pull your data: Export Script vs WHMCS API

IPTVbp gives you two working ingest methods, and both feed the same mapping screen and the same import engine.

  • Export Script (recommended): a generated, token-protected, 24-hour PHP file you run on your own WHMCS host. It reads the WHMCS MySQL database directly and decrypts stream passwords using your install's encryption hash, and it is the only method that can pull addons and configurable options.
  • WHMCS API: enter your WHMCS URL, API identifier, and secret. It pulls clients, services, and products but cannot retrieve addons or configurable options, and it requires whitelisting the IPTVbp platform IPs.
  • IPTVbp never connects to your WHMCS database — with the Export Script the database read happens entirely on your server, then only the resulting data is sent to IPTVbp.

What does not transfer automatically

A truthful migration plan matters more than a one-click promise. These items you handle yourself, by design.

  • Products, product groups, and pricing tiers — you pre-create these and map WHMCS products onto them; unmapped products are skipped.
  • Real invoice and payment history — only one synthetic PAID invoice is written per created subscription.
  • Client credit balances and affiliate balances — these are copied as free-text notes on the migration invoice, not restored as usable funds.
  • Panel provisioning — no new lines are created; existing external lines are only linked when a panel user ID is mapped and a panel is selected.
  • Client address, phone, company, tax IDs, currency, tickets, orders, and domains — none of these are imported. Only first name, last name, email, and status are stored (plus credit/affiliate stats as notes via the Export Script), and the original WHMCS signup date is not preserved — imported accounts are dated from the time of import.

Will your customers keep streaming?

The importer moves billing records into IPTVbp — it does not touch, reprovision, or cancel your actual IPTV lines. Existing panel lines keep running as they are; the importer at most links to them read-only. The one change your customers see is portal access: imported accounts get a random IPTVbp portal password, so plan a bulk password-reset send from the Customers page as part of go-live. Because duplicate emails reuse the existing customer and duplicate subscriptions are skipped, you can run the import more than once safely while you refine your mapping.

The platform you are migrating onto

IPTVbp is IPTV-native billing and automation, not a generic host-billing tool retrofitted for streams. It ships with the panel integrations, payment rails, and white-label controls resellers actually need.

  • A dozen panel and media-server integrations: NXT, XUI, Xtream UI, Ghost X, OneStream, Ultra 8K, Strong 8K, XtreamReal, and Activation Panel, plus Plex, Jellyfin, and Emby.
  • 11 payment gateways: Stripe, PayPal, SumUp, Square, Rampex, NOWPayments, Plisio, Litepay, BTCPay, PayRam, and Interac e-Transfer.
  • Full white-label: brand name, logo, favicon, colors, custom CSS and meta, a "hide Powered by" toggle, free per-vendor subdomains, and custom domains via CNAME behind Cloudflare SSL.
  • Plans from a 14-day free trial (€0) to Starter €29/mo, Professional €79/mo, Business €149/mo (Most Popular), and Enterprise €299/mo.

Why IPTVbp

  • Built-in WHMCS importer — a real Export Script and API migration path inside the vendor portal, not a paid consulting project.
  • The database read happens on your own server and stream passwords are decrypted locally, so IPTVbp never needs your WHMCS database credentials.
  • IPTV-native billing: username/MAC auth, bouquets, multiroom, and adult packages are first-class, not bolt-ons.
  • A dozen panel and media-server integrations and 11 payment gateways (cards, wallets, crypto, and Interac) out of the box.
  • Full white-label with custom domains and a 14-day free trial to evaluate the platform first (the WHMCS importer itself is a paid add-on available on Starter and above, not on the free trial).
  • Honest, mapping-driven import: you control exactly which products, statuses, and fields land where — and re-runs are safe.

Frequently asked questions

What doesn't transfer automatically from WHMCS to IPTVbp?+

Products, product groups, and pricing tiers, real invoice and payment history, and panel provisioning do not transfer automatically. Client credit and affiliate balances are copied only as free-text notes on the migration invoice, not restored as spendable funds. Client address, phone, company, tax IDs, currency, tickets, orders, and domains are not imported either — only name, email, and status are stored, plus credit/affiliate stats as notes via the Export Script (the original signup date is not preserved). You pre-create your products and map WHMCS products, custom fields, and addons onto them before importing.

Will my customers be disrupted during the migration?+

The importer itself will not disrupt them. It moves billing records into IPTVbp and never touches, reprovisions, or cancels your live IPTV lines, so existing streams keep working. The only change customers see is portal login: imported accounts get a random IPTVbp password, so send bulk password resets from the Customers page at go-live. You can safely re-run the import while refining your mapping, because duplicate emails reuse the existing customer and duplicate subscriptions are skipped.

Does IPTVbp need my WHMCS database password?+

No. With the recommended Export Script, you upload a token-protected PHP file to your own WHMCS server; it parses your database credentials from configuration.php, reads the WHMCS MySQL database directly on your host, and returns the results to IPTVbp. IPTVbp never connects to your database. The optional WHMCS API method uses an API identifier and secret instead and requires whitelisting the platform IPs.

Does the importer bring over my WHMCS invoices and payment history?+

No. The importer writes exactly one synthetic PAID invoice per created subscription (gateway "migration", amount from the WHMCS recurring amount or your mapped product price). Your historical WHMCS invoices and real payment transactions are not migrated, and client credit or affiliate balances are copied only as free-text notes on that migration invoice — not restored as usable funds.

Will it recreate my products and pricing automatically?+

No. The importer never creates products, product groups, or pricing tiers. You create the IPTVbp products first, then map each WHMCS product (per billing cycle where needed) to one of them on the mapping screen. Any WHMCS product you leave unmapped has all of its services skipped, so this step is where you decide exactly what comes across.

How are my customers' stream usernames and passwords handled?+

The Export Script decrypts service and custom-field passwords on your own server using your install's encryption hash and imports them onto the subscription, so most stream logins carry over intact. Decryption is best-effort across WHMCS 8.x and 7.x schemes — if it cannot decrypt a value it returns it as-is, so a few passwords may need manual fixing. The WHMCS API method returns whatever WHMCS provides. Because no panel line is provisioned, credentials are stored for reference and linked to existing lines only when you map a panel user ID.

Is the WHMCS migration included, or is it an extra?+

The WHMCS importer is a paid add-on module you enable on your IPTVbp account (platform admins and owners bypass the gate). It is separate from the generic CSV importer, and it is available from the Starter plan upward rather than on the free trial.

See how we stack up

Ready to put this on autopilot?

Start your 14-day trial. No payment required. Cancel anytime.

14-Day Free Trial
No Payment Required
Cancel Anytime