DirectScale Developers

DirectScale Developers

Get Started    API Reference

Volume Ranges (Data Range)

At the beginning of a compensation plan, you always have a <ComPeriod> with the template's details. Within that ComPeriod, you always have to have a single <VolumeRange> that serves as the compensation plan's default date range.

<ComPeriod> 
    <VolumeRange>
        <VolumeRange Name="Monthly">
            <RangeType>
                <Monthly StartOffset="0" EndOffset="0"/>
            </RangeType>
      </VolumeRange>
    </VolumeRange>
</ComPeriod>

Use Volume Ranges to set separate date ranges to count volume. For example, let's say you gave orders placed in the first week of the month double volume.

 <VolumeRange Name="First7DaysOfTheMonth">
    <RangeType>
        <MovingDays BeginDays="0" EndDays="7" />
    </RangeType>
 </VolumeRange>

Then define another range for the beginning of the month that adds up the volume.

 <VolumeRange Name="LastMonth">
    <RangeType>
        <Monthly StartOffset="1" EndOffset="0" />
    </RangeType>
 </VolumeRange>

Each Volume Range has a Name attribute. Set the name as anything you want. You can reference the name throughout the compensation plan. The core part of the Volume Ranges is the Range Type.



Range Types

<RangeType> is a period for which you are calculating commissions. The most common Range Types are <Monthly> and <Weekly>, but <Daily>, <BiMonthly>, and <Yearly> also exist.


Monthly

A Range starting on the first day of the month and ends on the last day of the month. Use the Offset parameters to include multiple months. Typically, you only use this for a sub Volume Range, not your main.

<VolumeRange Name="Monthly">
    <RangeType>
        <Monthly StartOffset="0" EndOffeset="0" />
    </RangeType>
</VolumeRange>

The preceding example is Monthly. If the current month is October, this Volume Range would be from October 1st to 31st; the entire month. The StartOffset takes the main Volume Range and offsets the start date to the past by the amount entered. So, if the current date were October, then a StartOffset=1 would start in September:

<Monthly StartOffset="1" EndOffset="0" />

You can offset the month's end date as well. If the current month was October and we created the following example:

<Monthly StartOffset="1" EndOffset="0" />

Then the preceding would start September 1st and end on September 30th, covering the previous month only.


Weekly

Range representing seven days beginning on WeekBegin.

<VolumeRange Name="currentWeek">
  <RangeType>
    <Weekly WeekBegin="Monday" />
  </RangeType>
</VolumeRange>

EnrolledInRange

Counts volume from orders placed within Days from an Associate's enrollment date if the Associate enrolled in OuterRange. <EnrolledInRange> looks at all an Associate's orders (and their customers' orders, depending on the Volume Range) that were placed within a certain amount of Day since they enrolled.

<EnrolledInRange Days="7">
  <OuterRange>
    <Monthly StartOffset="0" EndOffset="0" />
  </OuterRange>
</EnrolledInRange>

Important

<EnrolledInRange> does not work with Tree Volumes.


MovingDays

<MovingDays> looks at the beginning of the master Volume Range and adds or minuses days from that. Typically, you only use this for a sub-Volume Range, not your primary. This element is used a lot in Weekly compensation plans to see if someone is active in the defined range. If the master range is January 25th and BeginDays=-14 and EndDays=7, then the range looks at January 11th-31st.

<MovingDays BeginDays="-14" EndDays="7" />

BiMonthly

cuts the month in half, so there is a first half and second half. For example, if you enter a SplitDay of 15, the first half of the month will run the 1st–14th, and the second half will start on the 15th and run the rest of the month. Those are the two ranges in which you could pay commissions.

<BiMonthly SplitDay="15" />

FourWeek

A four-week range, but not a rolling four-week period. It's a company-wide set of four weeks. For example, if you assign it a StartOfFourWeek date of January 1st, 2021. The four-week cycle will start on that date, which happens to be a Friday:

<FourWeek WeekBegin="Friday" StartOfFourWeek="1" />

This four-week period will end after four weeks, so in this case, it will end on January 28th, 2021. The next four-week cycle would start on January 29th and go four weeks from there, ending on February 25th. That is the company-wide four weeks.

<FourWeeks> is commonly used in Binary compensation plans, in which the main compensation plan has a weekly period. But let's say you want another element to the compensation plan that's a bigger payout down the road.

Adding a <FourWeek> statement will make it so your weekly and four-weekly line up perfectly every single time. There will always be four periods inside a month. AutoShips are run every four weeks for these plans because they don't have a monthly element. In a Binary plan, an Associate may fluctuate a lot between those four weeks. Their week three will be great because they signed up a lot of people. But if you want to know how an Associate is doing, you have to look at the full four-week cycle. They could be doing fantastic on week three but awful the rest of the weeks.

Updated about a month ago



Volume Ranges (Data Range)


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.