Recipe: How to set up a Usage-Based Offer for Distributors

Aleksandra Pietras

Introduction

This article is a step-by-step recipe for Distributors who need to configure a Product, Offer, and Pricing Plan for a Usage-Based Subscription in Product Management. By following this guide, you will set up one ready-to-sell Product in your Catalog with tiered pricing based on actual consumption.

The example Product used throughout this article is:

CloudStorage API — a data transfer service billed per KB consumed. The Offer uses tiered Volume pricing:

Tier Consumption range Cost Price (EUR) Suggested Retail Price (EUR)
1 1–4 KB €0.10 per KB €0.10 per KB
2 5+ KB €0.08 per KB €0.08 per KB

With Volume mode, the tier applies to the entire consumed Quantity. For example:

  • A Customer consuming 4 KB in a month falls into Tier 1: 4 × €0.10 = €0.40
  • A Customer consuming 8 KB in a month falls into Tier 2: 8 × €0.08 = €0.64

All charges are calculated at the end of each monthly Billing Period based on usage data reported via API.

In this article:

Prerequisites

Before you begin, ensure the following are in place:

  • You have Distributor access to Product Management Hub.
  • Your Vendor has been created in Product Management by the Support Team.
  • You have your Vendor ID and API credentials (SAS keys) available for usage reporting.

Phase 1: Creating the Product

Before configuring commercial terms, you must create the master Product entry in Product Management. A Product is the top-level catalog entry that your Offer and Pricing Plan will be attached to.

  1. From the My Vendors grid, select View Products (eye icon) next to your Vendor


     

  2. On the Products & Offers page, select the Products tab, then click New Product

     
  3. Fill in the following fields:

    • Name (required): CloudStorage API
    • Description (required): Pay-as-you-go cloud data transfer service billed per KB consumed.
    • Image (required): Upload a representative product image. Recommended size: 400 × 400. Accepted formats: PNG, JPG.


     

  4. Click Create Product

     

  5. The Product will appear in the Products grid under your Vendor

Phase 2: Creating the Offer

An Offer links a Product to specific commercial terms, availability settings, and catalog visibility. In the new UI, Offer creation follows a five-step wizard: Offer Details, Pricing, Billing Rules, Provisioning, and Review & Publish. This phase covers Step 1 (Offer Details) with all its sub-tabs.

WARNING! You must click Save as Draft after completing Offer Details. Without saving the Draft, the Pricing step will be greyed out and you cannot proceed.

Starting the wizard

  1. In the Products grid, select the New Offer (plus icon) in the Actions column next to CloudStorage API. This opens the New Offer Configuration wizard. 


     

Offer Details tab

  1. In the Basic Information section, configure:

    • VendorOffer ID (required): Enter a unique identifier (for example: cloudstorage-api-usage).
    • Contract Type (required): Select "Distribution Services" from the dropdown.


     

    WARNING! The VendorOffer ID and Contract Type cannot be changed after the Offer is published.

     

  2. In the Display Information section, configure:

    • Name: CloudStorage API
    • Full Name (required): CloudStorage API
    • Description: Flexible cloud storage billed only for what you use.

Marketing tab

  1. Switch to the Marketing tab and configure:

    • Short Description: Pay-as-you-go cloud data transfer service.
    • Extended Description: CloudStorage API provides scalable data transfer billed per KB consumed. Tiered Volume pricing ensures lower rates as consumption grows — pay €0.10/KB for the first 4 KB, or €0.08/KB for 5 KB and above, applied to the entire quantity.
    • Offer Image: Upload an image (recommended: 400 × 400, PNG or JPG, max 5 MB).


     

Availability tab

  1. Switch to the Availability tab and configure:

    • Industries: Select which industries can access this Offer (for example: Private business, Government, Education, Nonprofit).
    • Countries: Select the countries where the Offer is available.


     

Business Rules tab

  1. Switch to the Business Rules tab. Leave Renewals automatically disabled. Usage-Based Subscriptions bill in arrears based on actual consumption — there is no fixed renewal cycle to configure. 

Terms and Conditions tab

  1. Switch to the Terms and Conditions tab and add:

    • Title: Terms and conditions
    • EULA Link: Paste the URL to the End User License Agreement.


     

Saving the Draft

  1. Click Save as Draft at the bottom of the page. The Offer is saved in Draft status and the Pricing step becomes available. 


     

  2. Click Next: Pricing to proceed to the Pricing Plan configuration. 

     

Phase 3: Configuring the Pricing Plan

Pricing Plans define the exact commercial logic for an Offer. For Usage-Based Subscriptions, the Pricing Plan controls the Billing Cycle and links to the meters and pricing tiers configured in the following phases.

Creating the Pricing Plan

  1. On the Pricing Plans page, click Create New


     

  2. In the setup dialog, configure the following and click OK:

    • Effective Date: Today's date
    • Currency: Euro (EUR)
    • Country: All

Design section

  1. In the Design section, add the following controls: 
     

    Text field:

    • Label: Text
    • Default value: "CloudStorage API — pay only for what you use"


     

    Number field (Estimated kBs):

    • Click Number to add a numeric input.
    • Label: Estimated kBs
    • Check Use as Quantity
    • Default value: 1 | Min value: 1 | Max value: 9999


     

    NOTE! The Estimated kBs field is required by the Pricing Plan validator in Product Management and cannot be removed. However, it does not affect billing — actual charges are calculated exclusively based on the consumption data reported via API against the Data transfer meter. This field serves as an estimated input only and has no impact on the Customer's final Invoice.
     

Price section

  1. In the Price section, the default Billing Cycle is set to Monthly Billing. No additional configuration is needed in this section. 

     

    NOTE! You will configure the usage meter and its pricing tiers within this Pricing Plan in the next two phases, using the Usage tab in the plan editor.

Phase 4: Setting up the meter

Meters are units of measurement for usage consumption. Each meter tracks a specific resource type and must have a unique identifier that matches exactly what you will use when reporting usage data via API.

  1. While editing the Pricing Plan, select the Usage tab. 

     
  2. Select Add New Meter. If no meters have been created yet, the tab will display the message "You have no price configurations for meters yet." 

     
  3. In the Create new consumption meter form, configure the following fields:

    • Id From Vendor: cloudstorage-kb-meter
    • Name: Data transfer meter
    • Category: Storage
    • Sub-Category: Data transfer
    • Unit: kB


     

    NOTE! The Id From Vendor value (cloudstorage-kb-meter) is critical. It must match exactly the MeterId field you send when reporting usage via API. Any mismatch will cause the usage report to be rejected by the Platform.


     

  4. Select CREATE to save the meter configuration. 

Phase 5: Configuring meter pricing

After creating the meter, configure its tiered pricing to define exactly how consumption will be billed.

  1. Configure the following fields in the Pricing rules section:

    • Variable name: Data transfer (KB)

      NOTE! The Variable name is what Customers will see in the UI when viewing usage pricing details. Choose a clear, descriptive name.
    • Billing Cycle: Monthly
    • Formula: Quantity Price Table
    • Quantity control: Metric "Data transfer meter"
    • Tier Mode: Volume
       
    NOTE! Volume mode applies a single rate to all units based on the tier the total Quantity falls into — so if a Customer consumes 5 KB or more, the lower rate of €0.08/KB applies to the entire Quantity. Graduated mode, by contrast, always bills the first 4 KB at the higher rate regardless of total consumption. Use Graduated if you want to ensure the first N units are always billed at the higher rate and only the excess is discounted.


     

  2. Configure the pricing tiers as follows:

    Tier Min (inclusive) Max (inclusive) Cost Price (EUR) Suggested Retail Price (EUR)
    1 1 4 0.10 0.10
    2 5 99999 0.08 0.08


     

    NOTE! Tier 2 starts at Min 5. With Volume mode, a Customer consuming exactly 5 KB or more will have the lower rate of €0.08 applied to their entire Quantity. A Customer consuming 1–4 KB pays €0.10/KB for all units.


     

  3. Click Save Plan

Phase 6: Setting Billing Rules and Provisioning

Steps 3 and 4 of the Offer wizard configure how billing and order fulfillment are handled. Return to the Offer wizard and click Next: Billing Rules.

Step 3: Billing Rules

  1. At the top of the page, select Set custom billing rules

     
  2. On the Billing Date tab (required, cannot change after publishing), select Purchase date. This means Subscriptions are billed on the same calendar day each month as the original purchase date. 

     

    NOTE! Four options are available for Billing Date: Purchase date (excluding dates 29, 30, 31), Invoice date, Coterm date, and Purchase date. The right choice depends on your Vendor's invoicing requirements. This recipe uses Purchase date as a common default.


     

  3. Configure the remaining tabs (Proration Rules, Rounding, Usage Billing Rules, Offer Components) according to your Vendor's requirements.

  4.  For Usage-Based Subscriptions, pay particular attention to the Usage Billing Rules tab — this controls how usage data submitted via API is processed and aggregated. Rounding and Usage Billing Rules can be adjusted after publishing.

WARNING! Once an Offer is published, Billing Date and Proration Rules cannot be modified. Review these settings carefully before proceeding.

For detailed field-by-field instructions on all sub-tabs, see: How to configure Billing Rules in Product Management Hub

After configuring, click Next: Provisioning.

Step 4: Provisioning

  1. Configure how Orders for this Offer are fulfilled. Select Send order details to an email and enter the email address that will receive Order notifications. 

After configuring, click Next: Review & Publish.

Phase 7: Publishing the Offer

Step 5 of the wizard (Review & Publish) validates the entire Offer configuration. The page shows a compliance overview organized into Offer Form and Business Configuration columns. Each subcategory shows either "Compliant" or issues with a Fix Issue button.

  1. Review the compliance overview. Resolve any issues shown with the Fix Issue → buttons. 
     
  2. In the Billing Rules section, tick the acknowledgment checkbox confirming that Billing Date and Proration settings cannot be changed after publishing. 
     
  3. Under Publishing Schedule, select Publish Immediately.
  4. Click Publish Offer. The Offer status updates to "Published." 
     


     

Phase 8: Adding the Product to the Customer Catalog

Once your Offer is published, the Product must be added to the Customer Catalog before Customers can browse and purchase it. For a full overview, see: How to add Products in Catalog?

  1. Go to Catalog in the top navigation and select Customer Catalogs

     
  2. Select the catalog (in most cases All (default)).
  3. Click Edit catalog.
  4. In the left panel, locate the Not Published section. Filter by your Vendor to find CloudStorage API


     
  5. Drag the CloudStorage API card into a category on the right side of the catalog editor.
  6. In the Select available offers pop-up, confirm the CloudStorage API Offer is checked, then click Save changes

     
  7. A notification confirms that changes are being processed.
NOTE! If the Product is not added to any category, it will not be available for Customers.

Phase 9: Verifying the Customer view

Verify the end result by logging in on the Customer's behalf.

  1. Log in on the Customer's behalf and navigate to the Catalog.
  2. Find CloudStorage API in the category you assigned it to. 

     
  3. Click View offers to open the Offer details page. You will see the Offer name, description, and the Suggested Retail Price based on the configured pricing tiers. 

     
  4. Click Buy now to open the ordering form.
  5. The ordering form will display the text field configured in the Pricing Plan ("CloudStorage API — pay only for what you use") along with a price summary. 

     

Since the Offer uses Usage-Based billing with no fixed component, the displayed fixed Price will show as €0.00. This is expected and correct — it does not indicate a configuration error. Actual charges are calculated and billed at the end of each Billing Period based on consumption reported via API.

The Offer is now correctly configured and ready to be purchased by Customers.

Phase 10: Using the Usage-Based calculator (optional)

Before purchasing, Customers can use the Usage-Based calculator to estimate their expected costs based on the configured pricing tiers. This tool is available directly from the product catalog and is automatically populated based on the meter and pricing configuration set up in Phases 4 and 5.

To estimate costs, the Customer:

  1. Selects the Estimate button on the CloudStorage API Offer in the Catalog. 

     
  2. Enters an estimated number of KB in the meter field.
  3. Reviews the calculated Usage Fee in the price summary. The calculator displays a breakdown per meter component, showing the unit rate and subtotal based on the entered Quantity. If Markups are updated, all displayed prices adjust automatically. 

     
NOTE! The calculator provides estimates only. Actual Usage Fees are determined by real consumption reported via API during the Billing Period and may differ from the estimate.

For a full description of how the calculator works for Customers, refer to the related article: What is the Usage-Based calculator?

Phase 11: Reporting usage data via API

Once a Customer purchases the CloudStorage API Offer, you must report their actual usage to the Platform at the end of each Billing Period so that billing is calculated correctly.

Obtain required identifiers

Before reporting usage, ensure you have the following:

  • Vendor ID: Your unique identifier in the Platform.
  • VendorSubscriptionId: Your internal Subscription ID returned when the Customer purchases the Offer.
  • SAS keys: Authentication keys for the Platform API.

API endpoint

POST: https://api.appxite.com/vendors/{vendorId}/usage

Example request body

{
  "CorrelationId": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890",
  "VendorSubscriptionId": "your-internal-subscription-id",
  "MeterId": "cloudstorage-kb-meter",
  "StartDateUtc": "2026-03-01 00:00:00.000",
  "EndDateUtc": "2026-03-31 23:59:59.000",
  "Quantity": 8.00
}

Billing calculation for this example: The Customer consumed 8 KB during March. 8 KB falls into Tier 2 (Volume mode) → 8 × €0.08 = €0.64.

Field descriptions

Field Required Description
CorrelationId Optional Used for diagnostics and tracking
VendorSubscriptionId Required Your internal Subscription ID for the Customer
MeterId Required Must match Id From Vendor exactly: cloudstorage-kb-meter
StartDateUtc / EndDateUtc Required UTC timestamps defining the usage period
Quantity Required Total KB consumed (decimal, up to 8 decimal places)
Service / ServiceType Optional Descriptions used for Reconciliation Data
ResourceName / ResourceId Optional Resource identifiers used in Reconciliation Files
NOTE! The MeterId in the API request must match exactly the Id From Vendor value configured in Phase 4 (cloudstorage-kb-meter). Any discrepancy will cause the usage report to be rejected. The Platform validates usage data immediately when received — if accepted without errors, billing will calculate correctly at the end of the Billing Period. If your report is rejected, verify that the MeterId, VendorSubscriptionId, and date fields are all correct and resubmit. If errors persist, contact the Support Team with your CorrelationId for diagnostics.

For complete API documentation, visit: developer.appxite.com

How invoicing works

Usage-Based Subscriptions are always billed in arrears. Charges appear on the Invoice after the Billing Period ends — not before.

Billing process

  1. Usage data is reported via API throughout the Billing Period.
  2. The Platform validates usage data immediately when reported.
  3. At the end of the Billing Period, total consumption is calculated per meter.
  4. The total cost is included in the Invoice as a Usage Fee.

Standard Invoice view

On a standard Invoice, the charge appears as a single line item:

Charge type Subscription name Customer quantity Customer Unit price Customer total price
Usage Fee CloudStorage API 1 €0.64 €0.64
NOTE! The Customer quantity for a Usage Fee is always 1, which means Customer Unit price = Customer total price on the Invoice.

Detailed Invoice Line Items view

With Detailed Invoice Line Items enabled (available in the Billings details view by switching to Detailed mode), the charge breaks down by meter:

Charge type Subscription name Meter info Customer quantity Customer Unit price Customer total price
Usage Fee CloudStorage API Data transfer (KB) 8 €0.08 €0.64

Summary

This article walked through the full process of creating a Usage-Based Subscription Product and Offer for a Vendor in Product Management, configuring a Pricing Plan with a consumption meter and Volume-tiered pricing, setting Billing Rules, and publishing the Offer to the Customer Catalog. The example CloudStorage API service bills Customers at €0.10 per KB for 1–4 KB consumed and €0.08 per KB for 5 KB or more, with the lower rate applying to the entire Quantity once the threshold is reached. All charges are calculated at the end of each monthly Billing Period based on usage data reported via API.

Was this article helpful?

0 out of 0 found this helpful

Add comment

Please sign in to leave a comment.