Skip to content

4. Create the product

Updated

Setup → Products/Services → Create Product. Give it a name and a group, choose Product Type VPS/Dedicated and Server Module Proxmox VE, set the prices and save. The Proxmox settings open on the product's edit page.

Auto setup

Auto Setup decides when the server is built: as soon as the first payment is received (the usual choice), as soon as the order is placed, or only when an admin accepts the order.

The Proxmox VE virtual servers card reads its lists live from the cluster — pick the server in Lists from at the top right. The summary line above the sections always shows what one order gets.

The Proxmox product card

1 · Resources

Field Meaning
CPU cores vCPUs of each server
Memory (MB) RAM; 1024 = 1 GB
Disk (GB) Size of the system disk. The template's disk is grown to this; it is never shrunk
Monthly traffic (GB) Shown to you and the customer as a limit; 0 = unlimited. Usage is read from Proxmox every hour
CPU sockets KVM only; leave at 1 unless you know you need more
CPU limit Caps the server to this many cores' worth of time (0 = no cap), e.g. 0.5 for half a core
Swap (MB) LXC only

Quick fill sets cores, memory and disk to a common size in one click.

2 · Image and placement

Field Meaning
Type KVM virtual machine or LXC container
Node A fixed node, or Server default / least busy
KVM template to clone The template new servers are copied from. Install ready-made systems under it opens the image library
Container template LXC only: the vztmpl the container is created from
Disk storage Where the new server's disk goes
Installer ISO KVM only: instead of a template, boot an installer (see the note)
Login user KVM only: the user cloud-init creates; root by default
Upgrade packages on first boot KVM only: cloud-init runs the system's upgrade once; the first start is slower
Nesting LXC only: allows Docker inside the container
Protect from deletion On by default. Proxmox's protection flag, so nobody deletes the server by accident in the Proxmox UI. PNLCS lifts it only to terminate, reinstall or restore the server, and puts it back after a reinstall or restore

3 · Network

Field Meaning
Network bridge The bridge servers are plugged into, listed from the node
IPv4 address DHCP on the bridge, or one from the server's IPv4 pool (each server gets its own fixed address)
IPv6 address None, or SLAAC (automatic). A container gets it directly, a KVM server through cloud-init (so not one installed from an ISO)
DNS servers Given to the server through cloud-init, e.g. 1.1.1.1 8.8.8.8
VLAN tag Puts the network card on a VLAN (0 = none)
Speed limit (MB/s) Caps the network card (0 = none)
Proxmox firewall Turns on Proxmox's firewall for the card; the rules themselves are yours to set in Proxmox

4 · The customer's panel

Field Meaning
Snapshots the customer may keep 0 hides snapshots from the customer
Backups the customer may keep 0 hides backups; also needs a backup storage on the server
Operating systems the customer may reinstall with Tick the templates to offer and give each a name customers understand. The product's own template is always offered

5 · Let the customer choose at checkout

Tick what the customer may pick when ordering — operating system, memory, CPU cores, disk, additional IPv4 addresses — edit the choices and their extra monthly price, and press Create order options. PNLCS creates the configurable options, links them to the product and shows them in a table. Longer billing periods are charged the monthly price times their months (quarterly = 3×, annually = 12×…).

The values in sections 1–4 are the default; a choice made at checkout replaces them for that order. Prices can be changed later under the Configurable Options page (linked from Change prices and choices), where the options appear as, for example, memory|Memory with choices 2048|2 GB — the part before | is what the module reads, the part after is what the customer sees.

Writing options by hand

The same convention works for options you create yourself. The keys the module understands are os, memory, cores, disk, swap, bandwidth, rate, snapshots, backups and extra_ipv4. A quantity option sets the number itself, e.g. cores|CPU cores with the quantity the customer types.

Additional IPv4 addresses

With IPv4 address set to the server's pool, the product can also sell additional addresses: tick Additional IPv4 addresses above and give each choice (0, 1, 2…) its monthly price, or make an extra_ipv4 option yourself. A quantity option lets the customer type the number. A server takes at most 16.

On a product that takes its address by DHCP, Create order options refuses any choice above 0: "Additional IPv4 addresses come from the server's IPv4 pool. Set IPv4 address to "One from the server's IPv4 pool" first, or offer only "No additional address"."

  • The addresses come from the same pool as the server's own, and go back to it when the service ends. A pool that cannot give them all refuses the order's set-up, which is retried, rather than giving fewer.
  • Each address is on a network card of its own (net1, net2…) on the product's bridge, without a gateway: the server keeps its route on net0. A virtual machine learns them through cloud-init, a container directly. This also suits providers that bind each additional address to a MAC of its own.
  • The customer can buy more later on the service's Upgrade page (Raise options), charged for the rest of the billing cycle. A container gets them at once; a virtual machine when it is next restarted from the panel. An address that staff take away removes its card.
  • Which address belongs to which service: Setup → Servers → Capacity, under IPv4 pool. The service page lists them too, and the admin service search finds a service by any of them.

What the customer sees when ordering

Ordering a VPS

  • the options with their prices for the chosen billing cycle;
  • a running summary with each choice and the total;
  • Server hostname instead of the domain-purchase box shown for web hosting. It becomes the server's name; left empty, the server is named vps-<VM id>.
  • SSH public keys (optional): up to 10, one per line, in OpenSSH format. They are put on the server when it is built (through cloud-init on KVM, so not on a server installed from an ISO), and the customer can change them when reinstalling. A pasted private key or a line that is not a public key is refused.

Next: order it once yourself and look at the customer's panel.