With Abiquo pricing, you can create pricing models to match service level agreements and assign them to your tenants and resellers. Customers can obtain estimates for their virtual appliances from the pricing system. Abiquo Accounting meters tenant resource usage and Abiquo billing enables you to charge customers for this usage based on pricing.
For each datacenter, you can set separate prices, and use different currencies, and you can set cost codes for VM image templates. Create your pricing models in Pricing view, after you create and assign any supporting currencies and cost codes. Abiquo controls pricing with scopes as well as privileges to enable reseller pricing.
Click theicon to access Pricing view. The workflow to create a new pricing model is as follows:
Abiquo 4.0.2 introduces pricing for hardware profiles in private and public cloud. See #Hardware profiles
The platform supports multiple currencies.
To manage currencies, go to Pricing → Currencies
The platform uses cost codes to label a set of resources such as VM templates for pricing. When users in enterprises with a pricing model assigned deploy a VM using a template with a cost code, the pricing in the estimate will include the cost of the image.
To implement image pricing:
You can create pricing models by entering prices for the VM elements. You can clone an existing pricing model to create a new one. The platform controls access to pricing models with scopes as well as privileges:
To manage pricing models, go to Pricing → Pricing models.
The name of your pricing model. The name can represent a service level agreement
|Description||Description of pricing model|
|Change all resource prices|
Only displays when the enterprise already has a pricing model assigned to it. Resellers can change all prices by adding this percentage. See below
Standard period of time by which a user will be charged, such as day, week, etc. Does not have to be equal to the minimum period
Minimum charging period
Minimum period of time that a user will be charged for. This may be longer or shorter than the charging period. This value is not sent to the billing system. Note that the accounting system records the maximum usage value of a resource during an accounting period.
The currency for this pricing model. Enter new currencies in the Currency tab before you create the pricing model
Standing charge per Charging period. You can include this value in the pricing estimate message but the platform does not send it to the billing system
Minimum charge per Minimum charging period. You can include this value in the pricing estimate message but the platform does not send it to the billing system
Show charges before deployment
Mark this checkbox to show a pricing estimate popup before deployment with the message entered in the box at the bottom of the window. See the explanation below
Choose a variable from the pull-down list to add to the pricing estimate message. The variables are described in the table below
Enter the estimate message for VM deployment, including variables. See Create a pricing estimate message
The platform uses the first pricing model for a location in a currency as the set of base prices for the location. When you create a new pricing model, you can enter a percentage to modify prices. If you then enter a resource price that is lower than the base price, the platform will highlight the price.
The price for hypervisor datastores is below the cost price for the reseller.
Hypervisor Datastores GB
Price of hypervisor datastores per gigabyte. In public cloud regions, the platform does not use this value
Price per VLAN (at least one VLAN is always created for each virtual datacenter)
Price per public IP address reserved
Price per virtual CPU core for deployed virtual machines. If the location uses hardware profiles, pricing does not use this value.
|Price per virtual CPU core when virtual machine is powered ON or OFF|
Price of virtual memory in GB for deployed virtual machine. If the location uses hardware profiles, pricing does not use this value.
Memory off (GB)
|Price of virtual memory in GB when virtual machine is powered ON or OFF|
|Virtual machine||Fee per VM in addition to charges for other VM items|
|Virtual machine on|
Virtual machine off
|Fee per VM in addition to charges for other VM items|
|Repository (GB)||Price of template repository use in GB for virtual machine templates. The platform does not include conversions. In public cloud regions, the platform does not use this value|
|Anti-Affinity||Price per VM deployed in anti-affinity layer. In public cloud regions, the platform does not use this value|
|Firewall||Price per firewall attached to VM|
|Load balancer||Price per load balancer attached to VM|
|DR protected VM||Price per VM protected with disaster recovery|
The provider can configure billing by usage or allocation.
In a private cloud datacenter, datastore tiers set service levels for storage. See Manage Datastore Service Levels with Datastore Tiers.
In a private cloud datacenter, persistent storage tiers set service levels for storage. See Manage Storage
In public cloud and in private cloud datacenters with hardware profiles, see Hardware profiles.
The cost codes for assigning to templates and hardware profiles, and their prices.
To display pricing estimates, assign a pricing model to the enterprise. The platform will display the estimates as follows:
At any time users can click the Estimate button in the virtual appliance view to display a current pricing estimate for a VM. If the user does not have pricing privileges, the platform will display the default '$' dollar symbol or the symbol configured in branding. Or if the user has privileges to retrieve the tenant's pricing model, the platform will display the currency code.
The default message is: "The charge for this Virtual Appliance will be %CHARGE_FORMATTED% per %CHARGEPERIOD%, charged per %MINPERIOD%, subject to a minimum charge of %MINCHARGE_FORMATTED%. VMs in this Virtual Appliance will be: %VM_PRICES%. Resources defined in the Virtual Datacenter total %VDC_TOTAL_CHARGE% per %CHARGEPERIOD%: %VDC_PRICES%"
The virtual appliance and VM pricing estimates only include the costs that are directly related to VMs. The virtual datacenters resources estimate includes other costs such as the VLAN cost, and the cost of datastore disks without a datastore tier, such as a cloud-init ISO. The VDC resources cost also includes public IP addresses because they are billed for the time of reservation, which may be longer than the time they are attached to a VM.
To customize the pricing estimate message, edit the message, change the text and use the standard cut and paste keys to change the location of the variables. You can also select variables to add to this message from the pull-down list. Align the message with your accounting system.
Description and example
Charging period, for example "month".
Minimum charge, for example 2.25 USD.
Minimum charging period, for example "week"
Charge for the virtual machine, for example "22.50 USD"
List of charges per virtual machine. for example:
|%VDC_PRICES%||List of charges per virtual datacenter resource|
|%VDC_TOTAL_CHARGE||Total charge for virtual datacenter resources, not including VMs|
To assign a pricing model to an enterprise
Click on a pricing model to display the enterprises with this pricing model assigned in the left pane and the enterprises without it in the right pane.
You can also assign or remove a pricing model from an enterprise when you create or edit the enterprise. See Manage Enterprises
Abiquo supports reseller pricing with pricing scope and default base prices per datacenter.
The first step for a provider to implement reseller pricing is to create a pricing model and assign it to each reseller. When the reseller first opens the Pricing view, they will see the pricing model that you created. This pricing model should contain the base prices that they will pay for virtual resources. They can then create customer pricing models using this pricing model as the base.
This documentation assumes that each of your resellers will have a scope that is above all of their customers and not the unlimited global scope
Remember that all users with pricing privileges can view the pricing model assigned to their own tenant. But to administer a pricing model, the user must have the same scope as the user that created the pricing model.
When a reseller creates a pricing model for their customers, Abiquo will use the base prices from the reseller's pricing model, and then the reseller can enter a percentage to increase or decrease the base prices.
For resource prices, Abiquo loads the existing prices and then applies the percentage change (adding the percentage of the base price they entered to the base price). They can accept the new prices or manually enter a new price for any resource. If they enter a price that is lower than the base price, Abiquo will highlight the price with red text.