Pricing Plans Using Segmented Aggregations - m3ter Documentation

Documentation Index

Fetch the complete documentation index at: /llms.txt

Use this file to discover all available pages before exploring further.

If you want to use a Segmented Aggregation to price up one of your Product Plans, the Pricing Editor is designed to help you quickly price the segments you’ve defined for the Aggregation. This topic explains how to use the Segmented Aggregation described in the Segmented Aggregations topic to price a Plan:

If you’ve set up a Compound Aggregation that references Segmented Aggregations, you can also use this to Price Plans:

Notes & Warnings:

Creating Segmented Pricings for Plans in the Console

When you use a Segmented Aggregation to price one of your Product Plans, you must create a separate pricing for each segment value you’ve defined. You can do this using the Console’s Pricing Editor.To price a Plan using a Segmented Aggregation:

  1. Select Pricing>Pricing editor. The Pricing editor opens.
  2. In the Product drop-down, select the Product for which you want to add a Plan to price up.
  3. Select Add Plans. A Select Plans popup appears and lists the Plans created for the Product.
  4. Select the Plan or Plans you want to price and select Confirm. You are returned to the Pricing page where the selected Plan is shown. A warning states that no pricing has yet been configured for the Plan.
  5. Select Add aggregations. A Select Aggregations popup appears listing the Aggregations created for the Product.

Notes: Selecting Aggregations for Pricing.

  1. Select the Segmented Aggregation you want to use to price the Plan and select Confirm. The popup closes, you are returned to the Pricing Editor where the Segmented Aggregation is shown ready for pricing. A warning states that no active pricing is yet configured.
  2. Select Edit segmented pricing. The Pricing>Segments page opens:

Tip: Filter Grid? You can use the filter fields at the head of each segment field column to filter the grid.

  1. To configure a price for a segment value, select Create plan pricing. A Pricing page opens for the segment value, which mimics the Pricing page for a simple Aggregation that is not segmented - you can use either a Pricing Wizard workflow or choose to use the Advanced Pricing configuration options. See Creating a Pricing for a Plan for more guidance.
  2. Use the Pricing page to configure the precise pricing you want to apply to the segment value and select Create Pricing:
  1. When you return to the Pricing Editor, you’ll see the pricing you’ve configured using the Segmented Aggregation has been saved - in this example 6/6 (6 of 6) segments are now priced:

Reviewing Segmented Priced Plan Details

If you open the Plan details page of a Plan you’ve priced using a Segmented Aggregation, under Pricing you can review and manage the each segment’s pricing. For the current example:

Using API Call to Create a Segmented Pricing

Instead of using the Console Pricing Editor, you can use the Create Pricing API call to create a pricing on a Plan using a Segmented Aggregation. When you do this, you can create a separate pricing for each of the segment values defined for the Segmented Aggregation. You can also create a pricing using wildcards to satisfy cases where you only want a specific pricing to apply to some of the segment values and apply a common pricing to any of the other segment values.This section uses the example of a Segmented Aggregation defined in the main Segmented Aggregations topic to show how to:

API Call - Creating a Pricing for a Segment

We’ll adapt the previous example to imagine we want to price a Plan using a Segmented Aggregation called Hiring Check 4:

The Hiring Check 4 Segmented Aggregation defines three segment values using Location and Type fields:

If we select to Edit segmented pricing, Pricing>Segments page opens. Under Segmented pricing, the Pricing Grid shows that no active pricings have been configured for any of the three segment values:

To create a segment value pricing:

  1. Make a POST Create Pricing call to create a pricing for the Location = China/Type = Standard segment value:

Here’s the request body JSON:

{

"planId": "12f2e595-d758-4d68-a492-d923bbxxxxxx",
  "aggregationId": "2a6db6df-26de-481e-8974-e1a43fxxxxxx",
  "segment": {
    "location": "China",
    "type": "Standard"
  },
  "cumulative": true,
  "tiersSpanPlan": false,
  "pricingBands": [
    {
      "lowerLimit": 0,
      "fixedPrice": 0,
      "unitPrice": 0.25
    }
  ],
  "startDate": "2023-11-01T14:15:22Z",
  "endDate": "2024-11-01T14:15:22Z",
  "minimumSpend": 0,
  "minimumSpendDescription": ""
}

Note that:

If the segment pricing has been created successfully, you’ll receive a 200 response and a response body similar to this:

Note that:

  1. If we return to Pricing>Segments and refresh the page, we can check that the Segmented pricing grid is now showing for the specified segment value:

API Call - Creating Wildcard Pricings for Segments

If you’ve created a Segmented Aggregation and defined multiple segment values, you might have a pricing use case that requires only some of those segment values to have their own specific pricing defined and for the remainder of the segments to be priced together using a common or default pricing. You can do this by using wildcard values for some or all of the fields used to define segments. This section illustrates with two example how to create such wildcard pricings for your Segmented Aggregations using the Create Pricing API call.

Creating Double-Wildcard Default Segment Pricing

Suppose the pricing requirements for the current example of a three-value Segmented Aggregation is that for one segment value - Location = China/Type = Standard - a specific pricing will apply but for the remaining two segment values - Location = USA/Type = Complete and Location = UK/Type = Extended - a common pricing will apply. To implement this, you’ll first have to define a wildcard segment value for the Segmented Aggregation:

We can now create a pricing for this double-wildcard default segment. This pricing will then be applied to any usage data submitted for any undefined segment values.To create a double-wildcard segment value pricing:

  1. Make a POST Create Pricing call:

Here’s the request body JSON:

{

"planId": "12f2e595-d758-4d68-a492-d923bb1xxxxx",
  "aggregationId": "2a6db6df-26de-481e-8974-e1a43f12xxxx",
  "segment": {},
  "cumulative": true,
  "tiersSpanPlan": false,
  "pricingBands": [
    {
      "lowerLimit": 0,
      "fixedPrice": 0,
      "unitPrice": 0.50
    }
  ],
  "startDate": "2023-11-01T14:15:22Z",
  "endDate": "2024-11-01T14:15:22Z",
  "minimumSpend": 0,
  "minimumSpendDescription": ""
}
  1. If we return to Pricing>Segments and refresh the page, we can check that the Segmented pricing grid is now showing for the wildcard segment value:

Important! Segments added to the Aggregation and who do not have Pricing created for them yet, DO NOT have the default segment pricing applied. In the current example, if we now want the default segment pricing to be applied to usage data submitted for either Location = USA/Type = Complete or Location = UK/Type = Extended, we first have to update the Hire Check 4 Segmented Aggregation and delete them from the Aggregation.

Creating Single-Wildcard Segment Pricing

Lastly, you might want to create a pricing for a Segmented Aggregation that uses a single wildcard. In the current Example, suppose we define a segment value on Hiring Check 4 for Location = Germany/Type = Any, since we want to apply the same pricing to any checks made for candidates located in Germany and regardless of the Type of check performed:

We can now create a pricing for this single-wildcard pricing.To create a single-wildcard segment value pricing:

  1. Make a POST Create Pricing call:

Here’s the request body JSON:

{

"planId": "12f2e595-d758-4d68-a492-d923bb174981",
  "aggregationId": "2a6db6df-26de-481e-8974-e1a43f121719",
  "segment": {
    "location": "Germany"
  },
  "cumulative": true,
  "tiersSpanPlan": false,
  "pricingBands": [
    {
      "lowerLimit": 0,
      "fixedPrice": 0,
      "unitPrice": 0.75
    }
  ],
  "startDate": "2023-11-01T14:15:22Z",
  "endDate": "2024-11-01T14:15:22Z",
  "minimumSpend": 0,
  "minimumSpendDescription": ""
}
  1. If we return to Pricing>Segments and refresh the page, we can check that the Segmented pricing grid is now showing for the wildcard segment value:

Tip: Using Wildcards for Segment Values - Evaluation Order? If you use a mix of specific segment values and wildcard segment values, you might be wondering in what order evaluation occurs when usage data is ingested for different segment values. For details, see Using Wildcards - Order of Evaluation.

Pricing with Compound Aggregations Based on Segmented Aggregations

You cannot define segments directly for a Compound Aggregation. However, if you’ve created a Compound Aggregation that references one or more Segmented Aggregations, you can also use the Compound Aggregation to price a Plan by segments defined for the Segmented Aggregations:

To price with Compound Aggregation based on Segmented Aggregations:

  1. Select Pricing>Pricing Editor. The Pricing page opens.

  2. In the Product drop-down, select the Product for which you want to add a Plan to price up.

  3. Select Add Plans. A Select Plans popup appears and lists the Plans created for the Product.

  4. Select the Plan or Plans you want to price and select Confirm. You are returned to the Pricing page where the selected Plan is shown. A warning states that no pricing has yet been configured for the Plan.

  5. Select Add compound aggregations. A Select Compound Aggregations popup appears listing the Aggregations created for the Product.

  6. Select the Compound Aggregation based on Segmented Aggregations you want to use to price the Plan and select Confirm. The popup closes, you are returned to the Pricing Editor, and the Segmented Aggregation is shown ready for pricing. A warning states that no active pricing is yet configured for any of the available segments:

  7. Select Edit segmented pricing. The Pricing>Segments page opens:

In this example, Hiring Check Compound1 references a single Segmented Aggregation - Hiring Check - which has six segments defined and therefore there are 6 segments available to price, but we’ve chosen to price only 4/6 (4 of 6) segments: