Abiquo 5.4

Skip to end of metadata
Go to start of metadata

Introduction to pricing

With Pricing, you can create pricing models to match service level agreements and assign them to your tenants and resellers. You can also onboard price lists from public cloud providers with pricing credentials and incorporate them into pricing models. Customers can obtain estimates for their virtual appliances from the pricing system. The platform's accounting system meters the resource usage of each tenant. The platform's billing system enables you to charge customers for all their cloud usage with one bill based on pricing and accounting. The platform also enables reseller pricing within a tenant hierarchy. 

Privilege: Access Pricing view, Manage pricing

For each datacenter, you can set separate prices, and use different currencies, and you can set cost codes for resources, such as VM image templates. 

The workflow to create a new pricing model is as follows:

  1. Enter currencies
  2. Create cost codes
  3. Create the pricing model
  4. Assign the model to an enterprise


Display pricing models

To display pricing models, click the pricing button in the main menu. The pricing model of your enterprise has the text "(assigned pricing model)" after the Name.

The platform will list the pricing models that you can display based on your user scope.

To display the details of this pricing model, select it from the list, and click the pencil edit button. 

You can only make changes to a pricing model if you have the same scope as the pricing model. The scope of the pricing model is the user scope of the creator of the pricing model.

Create a new currency

The platform supports multiple currencies.
  • Default currencies are euros, US dollars, and Japanese yen
  • You cannot delete a currency that is in use
  • You must always have at least one currency
  • Each pricing model uses only one currency

To add a new currency

  1. Go to PricingCurrencies

  2. Click the + add button

  3. Complete the dialog and click Save




Standard currency code, for example EUR, USD, for display in the pricing tabs. Download information from the ISO website or refer to Wikipedia


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 the platform will round prices up to the nearest digit.

Create a new cost code

To tag resources such as VM templates and hardware profiles for pricing, use cost codes.  When users in enterprises with a pricing model deploy a VM using a resource with a cost code, the pricing estimate will include the cost assigned to the cost code.

To create a cost code for resource pricing

  1. Go to Pricing → Cost codes

  2. Click the + add button
  3. Complete the dialog and initial prices




The name of the cost code, may be related to the resource


Description of the cost code, may be related to the resource

Set the Initial prices for a resource in all of the currencies in your platform. You can assign later different prices in each pricing model.




The currency code


The currency name


The price in the currency given in this row

Now assign cost codes to VM templates (see Modify a VM Template) and hardware profiles (see Hardware profiles). Then set prices for the cost codes in your pricing models. Note that you can override cost code prices by setting prices for specific hardware profiles. Pricing and billing for dynamic hardware profiles will also use prices for CPU and RAM for the datacenter.

Create a new pricing model

To assign prices to resources for enterprises, create pricing models with prices for VM elements.

Before you begin

  • Add your currencies at Pricing → Currencies
  • Pre-create cost codes at Pricing → Cost codes to assign to resources, for example, hardware profiles or templates

To create a pricing model: 

  1. Go to Pricing → Pricing models

  2. To base the pricing model on your enterprise's current model, click the + add button, or 
    To clone a pricing model, click the copy clone button. The platform will name the new model "PricingModelName (c)".
    Note: The platform will assign your user scope to the pricing model





The name of your pricing model. The name can represent a service level agreement

DescriptionDescription 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.

Charging period

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

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

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

Insert variable

Choose a variable from the pull-down list to add to the pricing estimate message. The variables are described in the table below

Deployment message

Enter the estimate message for VM deployment, including variables. See Create a pricing estimate message

Modify prices

The platform uses the first pricing model for a location in a currency as the set of base prices for the location. If your enterprise has a pricing model, when you create a new pricing model, you can enter a percentage to modify prices, for example, to add a reseller markup. If you then enter a resource price that is lower than the base price, the platform will highlight the price.




CurrencyThe currency for this location (datacenter or public cloud region)

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)

Public IPs

Price per public IP address reserved

NAT IPsPrice per NAT 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 onPrice per virtual CPU core when virtual machine is powered ON
CPU offPrice per virtual CPU core when virtual machine is powered OFF

Memory (GB)

Price of virtual memory in GB for deployed virtual machine. If the location uses hardware profiles, pricing does not use this value.

Memory on
Memory off (GB)
Price of virtual memory in GB when virtual machine is powered ON or OFF
Virtual machineFee 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-AffinityPrice per VM deployed in anti-affinity layer. In public cloud regions, the platform does not use this value
FirewallPrice per firewall attached to VM
Load balancerPrice per load balancer attached to VM

The provider can configure billing by usage or allocation.

Datastore tiers

In a private cloud datacenter, datastore tiers set service levels for storage. See Manage Datastore Service Levels with Datastore Tiers.

Persistent storage

In a private cloud datacenter, persistent storage tiers set service levels for storage. See Manage Storage

In public cloud regions, the platform automatically imports provider tiers so you can price them.

Hardware profiles

You can price hardware profiles in public cloud and in private cloud datacenters with hardware profiles, see Hardware profiles. The platform can retrieve hardware profile costs from AWS and Azure. See Import hardware profile prices from AWS

In private cloud, you can also use cost codes for hardware profile pricing. Pricing and billing of dynamic hardware profiles also includes the usage cost of CPU and RAM.

Privilege: View datacenter details, Manage enterprises

Backup prices

In private cloud datacenters, you can set prices for backup policies.

When users request a pricing estimate for their virtual appliance, the platform will include the price of the backup policies of each VM.

The platform will also include the price of backup services in the VM_PRICES list.

Privilege: View datacenter details, Manage enterprises

The platform bills backups with a monthly fixed cost and/or a separate cost for VM disk size in GB (in the platform). For example, if a customer has a VM with 50 GB of hard disk and is using a daily backup policy. If the price for the backup policy is $20 and the price per GB is $1 per GB, the customer will pay $20 + (50 * $1) = $70 per month.

Cost code prices

This tab displays resources and cost codes with their initial prices. You can modify these prices in this new pricing model. The platform will display a warning symbol if you enter a discount of the price in the current pricing model.


Access to pricing models

  • When you create a pricing model, Abiquo automatically assigns the same scope as your user. The Abiquo UI does not display the scope of the pricing model
  • Users with pricing privileges can always display the pricing model of their own enterprise. Administrators who can switch to another enterprise can display the current pricing model of the enterprise, even if the pricing model has a different scope
  • To display or manage the pricing model of another enterprise in Pricing view, you must have the same scope as the creator of the pricing model

Display a pricing estimate message

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. 

     Click here to show/hide the screenshots

    Screenshot: Pricing estimate button with EUR price code

    Screenshot: A sample pricing message

  • Users with access to the Abiquo API can also request a pricing estimate via the API.
  • To automatically display a pricing estimate popup when the user deploys a virtual appliance or VM, when creating a pricing model, select the checkbox to "Show charges before deployment".

Configure the pricing estimate message

The default text of the pricing estimate message is as follows.

The charge for this Virtual Appliance will be %CHARGE_FORMATTED% per %CHARGEPERIOD%, charged per %MINPERIOD%, subject to a minimum charge of %MINCHARGE_FORMATTED%. Backup service charge: %BACKUP_PRICE%. VMs in this Virtual Appliance will be:
Resources defined in the Virtual Datacenter total %VDC_TOTAL_CHARGE% per %CHARGEPERIOD%:

Notes about the pricing estimate message:

  • 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 network cost, backup costs, 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:

  1. Edit the message, change the text and use the standard cut and paste keys to change the location of the variables. 
  2. 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:
VM1 1.25 USD
VM2 1.00 USD 

%VDC_PRICES%List of charges per virtual datacenter resource
%VDC_TOTAL_CHARGETotal charge for virtual datacenter resources, not including VMs

Assign pricing models to enterprises

After you save a pricing model, to assign it to one or more tenants, do these steps:
  1. Go to Pricing→ Pricing models
  2. Click Enterprise associations

  3. In the search boxes at the top of the enterprise lists, enter text from the enterprise name to filter and display the enteprise
  4. Select the pricing model

The enterprise with the pricing model will move to the enterprises With pricing model panel.

Troubleshooting: If an expected pricing model does not display in the list, check that you are logged in with a user with the same scope as the user that created the pricing model.

You can also assign a pricing model to an enterprise when you edit the enterprise. See Assign a pricing model to an enterprise

Create reseller pricing

Abiquo supports reseller pricing with pricing scope and default base prices per datacenter.

To implement reseller pricing:

  1. Create a scope for each reseller that is not the unlimited global scope
  2. Create pricing models with the base prices that resellers will pay for virtual resources.
  3. Assign a pricing model to each reseller

When the reseller first opens the Pricing view, their pricing model will display. The administrator can edit this pricing model to view prices but they cannot save changes, unless they have the same scope as the user that assigned the pricing model to the enterprise.

The reseller can then create their own pricing models:

  • They can enter a percentage to increase or decrease the base prices.

  • For resource prices, the platform applies the percentage change (adding the percentage of the base price the reseller entered to the base price). 

  • The reseller 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. 
 Click here to expand...

After an administrator saves the pricing model they can then assign it to their customers. Each customer administrator should only be able to display the pricing model for their own tenant.
For a guide to pricing for resellers, see Pricing for Resellers. See also Synchronize public cloud price lists

Related pages