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
To manage the currencies in the pricing system, go to the Currencies tab. The default currencies are euros, US dollars and Japanese yen. You may delete currencies but one currency must always remain in the system; this does not have to be a default currency. Click the header line to sort the currencies by ascending or descending order of the currency code or currency name.
Open the currency tab and click the + Add button to add a new currency.
Unique name of the currency and the currency symbol
Number of digits after the decimal point. If you change the pricing model from a currency with more digits to one with fewer digits, then prices will be rounded up to the nearest digit.
Before you delete a currency, check that it is not in use in any pricing models, because you cannot delete a currency that is in use.
To delete or edit a currency, first select the currency. Then click the edit or delete button.
Abiquo uses cost codes for pricing and accounting of VM templates.
To implement image pricing:
The pricing in the estimate will include the cost of the image when users in enterprises with a pricing model assigned deploy a VM using a template with a cost code.
To add a cost code, open the Cost Code tab and click the + Add button. Then complete the dialog as described here.
The name of the cost code, usually related to the virtual image name
Description of the cost code, usually related to the virtual image description
Set the default prices for a VM template in all of your currencies. You can later change these prices in a specific pricing model on the Image Prices tab.
The currency code
The currency name
The price in the currency given in this row
On the Pricing models tab, you can create pricing models by entering prices for the VM elements. You can clone an existing pricing model to create a new one. Abiquo controls access to pricing models with scopes as well as privileges:
Before creating the pricing model:
To clone a pricing model, click theclone button. The platform will call the new model "PricingModelName (c)"
To create a new pricing model, click the + Add button.
Complete this tab first if you have all the information. You must enter all the required fields on this tab and the other tabs before you save the pricing model.
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 Pricing Estimate Message below
When the enterprise has a pricing model, Abiquo will display pricing estimates.
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 acocunting system.
Description and example
Charge for the virtual machine, for example "22.50 USD"
Charging period, for example "month".
Minimum charge, for example 2.25 USD.
Minimum charging period, for example "week"
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|
You can set pricing models per private cloud datacenter or public cloud region. When you create the first pricing model for a locaton in a currency and assign it to your tenant, Abiquo will use the prices as the base prices for the datacenter. When you create a new pricing model, Abiquo will copy the base prices for each pricing element and modify the prices by the percentage you enter. Then if you enter a price that is lower than the base price, it will be marked in red or marked with a warning symbol.
This tab displays all the elements in a datacenter (with separate tabs for datastore and storage tiers) or public cloud region. The default for each field is the price set for the enterprise's existing pricing model in this datacenter with your percentage increment applied.
For the selected cloud location (public or private cloud), you can set prices for the following elements.
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.
|CPU on||Price per virtual CPU core when virtual machine is powered ON|
|CPU off||Price per virtual CPU core when virtual machine is powered OFF|
Price of virtual memory in GB for deployed virtual machine. If the location uses hardware profiles, pricing does not use this value.
|Memory on (GB)||Price of virtual memory in GB when virtual machine is powered ON|
|Memory off (GB)||Price of virtual memory in GB when virtual machine is powered OFF|
|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 loadbalancer attached to VM|
The provider can configure billing by usage or allocation.
In a private cloud datacenter, datastore tiers set service levels for storage, so different datastores can be assigned to different tiers. You can manage datastore tiers in Infrastructure view (See Manage Datastore Service Levels with Datastore Tiers).
In a private cloud datacenter, persistent storage tiers set service levels for storage, so different storage devices can be assigned to different tiers. You can edit the storage tier details in the Datacenter Storage tab.
In public cloud and in private cloud datacenters where hardware profiles are enabled, users can work with hardware profiles to select the appropriate combinations of CPU and RAM for their VMs. You can edit hardware profiles in Infrastructure view on the Hardware profiles tab.
This tab displays all of the images as set in the main cost code tab, with their current price. See the Manage Cost Codes section above.
In the Enterprise Associations tab you can associate a pricing model with each enterprise. This tab displays a list of pricing models and two panes of enterprises. The default display is all pricing models and all enterprises.
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.