Skip to main content
ImpulseVPS

Server plans: how they tie to WHMCS products

How a server plan pins one provider account and its sizes, locations and images, and how connecting a WHMCS product publishes those choices as configurable options you price.

Last updated 21 days ago

A server plan is the reusable policy behind what you sell. It names one provider account and the sizes, locations, operating systems and applications customers may choose. A WHMCS product connects to a server plan and keeps its own pricing. Any number of products can share one plan. All of this lives under Addons → ImpulseVPS → Plans & Products.

One plan, one provider account

Create server plan asks for the provider account first (Vultr, Hetzner Cloud, DigitalOcean or Linode), and the editor then shows only what that account can deliver. A plan can't move to another account. To move a product, create a plan on the new account and connect the product to it. Each order keeps the plan revision it was placed under, so editing a plan never changes an existing server at the provider. Client tools and provider visibility are the exception: they follow the plan, so a change there also applies to existing customers as soon as you save the plan.

The editor has these sections:

  • Customer catalog: the sizes, locations and operating systems on sale. An empty list offers everything active and mapped for the account. Applications (Vultr only in this version) come from the Collection chosen under Defaults or from applications you pick here. If you set neither, the plan offers none.
  • Defaults: the size, region and deployment used when an order doesn't specify one, and the plan's Application Collection.
  • Provider visibility: hidden (the default) keeps customer copy provider-neutral. branded shows the provider's name.

Client tools, Published customer choices and Limits are inside Advanced: client tools, published choices, and limits, which starts collapsed:

  • Client tools: the customer tools (Reinstallation, Console, Firewall, Snapshots, Reverse DNS, Usage graphs) and the paid options (Backups, Additional Storage, IPv6).
  • Published customer choices: what reaches the order form. Size, region, deployment and IPv6 are on by default. If you turn off size, region or deployment, the plan needs a default for it.
  • Limits: snapshots per server, and the most additional storage a customer can buy (0 or a multiple of 10 GB).

Backups and Additional Storage start off. To sell one, turn it on under both Client tools and Published customer choices. Additional Storage also needs a storage limit above 0. Your provider bills you for both. Backups work on all four providers, Additional Storage on Vultr only. Linode gives every server IPv6, so it is never a choice there.

Server sizes: imported sizes start inactive

On the Server Sizes tab, Import provider sizes reads one account's sizes, specs and monthly costs. It never touches servers. Imported sizes start inactive because a plan with no sizes selected offers every active size, and providers list dozens. Filter the list and activate only the sizes you sell.

Create custom size adds a size by hand with the provider's plan code. ImpulseVPS checks the code with the provider when it can. A size you add by hand starts active, and its label is published as you wrote it, so on a hidden plan keep provider names out of the label.

Size and location aren't checked together at checkout

The order form offers size and location separately, so WHMCS accepts an order for a size the provider doesn't sell in that location. ImpulseVPS catches this only when it creates the server, after the order is accepted and usually paid. Nothing is created at the provider. The customer sees that setup hit a problem but not why, and you get a critical alert.

A size whose plan code the provider has retired fails the same way. ImpulseVPS never substitutes another size or location. Allow only locations that sell every size on the plan.

Connecting a WHMCS product

  1. In WHMCS, go to System Settings → Products/Services and create the product.
  2. On the Module Settings tab, choose Cloud VPS. The product needs no server or server group.
  3. Under Plans & Products → WHMCS Products, pick the product and an active server plan, then click Connect and publish.

ImpulseVPS creates and links a configurable option group, ImpulseVPS Product #42 Options for product ID 42. The group holds Plan, Region, Deployment (operating system or application), IPv6, Backups and Additional Storage (GB). Each choice is included only if the plan publishes it and the provider supports it. Storage is sold in 10 GB blocks up to the plan's limit.

Publishing is all-or-nothing. If it fails, the product stays connected and the order form is unchanged. Fix the reason the message gives, then click Publish choices.

Republishing after changes

Changes reach the order form only when you click Publish choices on each connected product. A product shows Needs publishing after its server plan, a size, an operating system or an application changes. It does not after a location change in ImpulseCore → Projects → Regions, so publish after a location change too.

Republishing adds new choices, refreshes labels and hides choices no longer offered. It never deletes a choice, so existing services keep theirs, and it never changes a price you've set.

Price every size before you sell

Publishing adds each new choice at a zero price, and WHMCS adds a choice's price to the product's own price. So until you price a size, it sells at the product's price, or free if that price is zero.

The Setup Guide's last step, Price your server sizes, treats the product's own price as the price of its smallest size. The step stays open while any other size is unpriced or any size would sell free. Its Set prices button opens the option group in WHMCS.

That step doesn't check Backups or Additional Storage. If those are unpriced, customers get them free while your provider bills you.

Deactivating a server plan doesn't stop WHMCS selling its products, but their orders then fail at setup. The Setup Guide and Diagnostics → Health Checks list any such product. Retire it in WHMCS (a hidden product still sells by direct link), or connect it to an active plan.

Related

  • Installing ImpulseVPS — step-by-step
  • Adding a provider account to ImpulseVPS
  • How snapshots, backups and extra storage work
  • How to change a customer's server size