Abiquo Documentation Cookies Policy

Our Documentation website uses cookies to improve your experience. Please visit our Cookie Policy page for more information about cookies and how we use them.


Abiquo 4.5

Skip to end of metadata
Go to start of metadata

Introduction to pricing

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.

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. 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 the  icon to access Pricing view. 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

 

Manage Currencies

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 manage currencies, go to Pricing → Currencies 


 Click here to show/hide the screenshot


Add a new currency

To add a currency, go to Pricing → Currencies.

Field

Description

Code

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

Name

Unique name of the currency and the currency symbol

Digits

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.

Manage cost codes

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 implement cost code pricing:

  1. Before you create a pricing model, go to Pricing → Cost Codes, and create cost codes with initial prices for VM templates and hardware profiles
  2. Go to Apps library → Edit VM template → Advanced, and assign cost codes (one per template). See Modify a VM Template
  3. Go to Hardware profiles → Create or edit a hardware profile, and assign cost code. See Hardware profiles
  4. Go to Pricing → Pricing models. Create a pricing model, and enter the prices per cost code
    1. To override the price of a cost code for a hardware profile in a pricing model, set a resource price for the hardware profile in a datacenter
    2. Dynamic hardware profiles will also use prices for CPU and RAM for the datacenter

 Click here to show/hide the screeenshot


Create a new cost code

To create a cost code for resource pricing, go to Pricing → Cost codes

Field

Description

Name

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

Description

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.

Field

Description

Code

The currency code

Name

The currency name

Price

The price in the currency given in this row

Manage Pricing Models

To assign prices to resources for enterprises, create pricing models with prices for 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:

  • 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
 Click here to show/hide the screenshot

To manage pricing models, go to Pricing → Pricing models. 

Create a new pricing model

Before creating the pricing model:

  • To use a new currency, add it at Pricing → Currencies
  • To use cost codes for resources, create them at Pricing → Cost codes, and when convenient, assign them to resources, for example, templates in the Apps library view.

Go to Pricing → Pricing models

To clone a pricing model, click the  clone button. The platform will name the new model "PricingModelName (c)".

 

Field

Description

Name

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. See below

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.

Currency

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

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.

 Click here to show/hide the screenshot

Prices

Field

Description

Hypervisor Datastores GB

Price of hypervisor datastores per gigabyte. In public cloud regions, the platform does not use this value

VLANs

Price per VLAN (at least one VLAN is always created for each virtual datacenter)

Public IPs

Price per public IP address reserved

CPU

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 (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-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

Hardware profiles

In public cloud and in private cloud datacenters with hardware profiles, see Hardware profiles. 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

Cost code prices

This tab displays resources and cost codes with their prices. 

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

     Click here to show/hide the screenshots

  • 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 message

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%"

 Click here to show/hide the screenshots

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.

 

 

Variable

Description and example

%CHARGE_FORMATTED%

Charge for the virtual machine, for example "22.50 USD"

%CHARGEPERIOD%

Charging period, for example "month".

%MINCHARGE_FORMATTED%

Minimum charge, for example 2.25 USD.

%MINCHARGEPERIOD%

Minimum charging period, for example "week"

%VM_PRICES%

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

To assign a pricing model to an enterprise

  1. Go to Pricing → Enterprise Associations. This tab displays a list of pricing models and two panes of enterprises. The default display is all pricing models and all enterprises.
 Click here to show/hide the screenshot

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.

  • To assign a new pricing model to an enterprise: Select a pricing model from the pull-down list next to an enterprise name to assign the current pricing model to this enterprise.
  • To remove a pricing model from an enterprise: Select a new pricing model from the pull-down list next to an enterprise to replace this pricing model OR select "None" to remove this pricing model from an enterprise without replacing it. The enterprise will now move from the left enterprise pane to the right enterprise pane for this pricing model.

You can also assign or remove a pricing model from an enterprise when you create or edit the enterprise. See Manage Enterprises

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.

     Click here to show/hide the screenshot

  • 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
Related pages