Helpful Xactly Best Practices

Home » Posts tagged 'Xactly'

Tag Archives: Xactly


Xactly Order Processing

Overview: When processing orders (closed deals) in Xactly it is important to understand the principles of how and why orders go from uploaded data to incentive results. Below is a high level illustration which summarizes order processing in Xactly:

Order Processing

  1. Prior to calculating any commissions, reps are working tirelessly on closing deals. Once a deal is closed (won), it is ready to be imported into Xactly to generate and display commission results.
  2. All closed deals, and details of the deal, need to import into Xactly to become what is referred to throughout the system as “orders” which is just another term for closed deals. Generally there is either a DELTA process already in place which picks up orders directly from your CRM and/or a file with a list of orders is placed onto a secure FTP site. If there is no DELTA process in place, you would need to gather a list of your closed transactions and upload them into Xactly manually through an upload template
  3. Whether through a manual upload template or through DELTA processing, once an order is uploaded it is stored in Staging section (Orders -> Orders -> Staging). Staging is simply a holding place in the application which stores any order(s) uploaded but does not do anything with them yet. You can continue to upload thousands and thousands orders into Staging without generating a single credit/commission result.
  4. Once the calculation process is initiated orders are moved into Processed section (Orders -> Orders -> Processed), and Credit/Commission results are generated for those directly and indirectly involved in the deal. All orders in Processed Orders should have generated credit/commission results (unless did not trigger credit/commission rules). Unlike Orders in Order Staging, once Orders are in Processed Orders they cannot be modified and are final unless first deleted from Processed Orders

Since all orders are processed in batches, below are some tips to keep in mind while creating and uploading batches:

  • Multiple batches can be created and uploaded within a single upload template as long as all batches are to be uploaded into the same period
  • All orders within a single upload batch must belong to the same Period. For example, you can have an order with 9/15/15 Incentive date and another order with 9/22/15 Incentive date within the same template but cannot have an order with 9/15/15 Incentive date and 7/2/15 Incentive date since latter two are in different periods
  • It is crucial to enter a batch name as orders can be uploaded without being assigned to a specific batch. In this case the system will create a “Default” batch for each order, and you can end up with thousands of batches, 1 batch per order
  • Multiple reps can be added to the same order by copying Employee ID and Split % column headers to the right of original headers. You can add as many additional headers as needed to eliminate the need for duplicating orders
  • Each order in a batch must have a unique order code/item code combination. For example order code 1, item code 1 is unique unless there is already an order code 1, item code 1 order already existing in any period. To make the latter order unique change the item code to 2, to have order code 1, item code 2. This combination is now unique, unless of course there is already such combination

Closing Periods & Prior Period Adjustments

Overview: Closing periods is optional within Xactly, and depending on the way your company is processing commissions, you may or may not need to finalize (close) periods. Below are some reasons why you would need to finalize periods:

  • Draw Payments (when using Plan Design -> Draws) occur only after period is finalized. Since “Recoverable/Non-Recoverable Guarantee” type draws are paid net of commissions earned, finalizing the period ensures there will be no further commissions processed.
  • Draw Balance Recovery occur only after period is finalized. Period needs to be finalized to ensure no additional commissions are generated and the recovery is complete (similar to above).
  • Balance Carry Forward (BCF) recovery occurs only after period is finalized. BCF is different from Draw Balances since balance owed is a result of a negative commission such as de-book/clawback

To finalize a period, navigate to Results -> Payments, click on the “Process” drop down -> Finalize -> Drag over Business groups which you would like to to finalize


Prior Period Adjustments: Unless periods are finalized processing prior period adjustments may be difficult since often the transaction adjusted occurred in a prior period but is paid in the current period. If periods are finalized you can upload your adjustment into a prior period (closed), calculate the adjustment and have the resulting payment push into the first (current) open period since credit/commission are tied to the period in which you are processing and the resulting payment is always pushed into the first open period.

For example, Jan 2015 has been finalized, however after some additional review a $100,000 order, previously assigned to person A in January, later turned out to be $85,000. Person A has been overpaid and we need to recover. As Best Practice I would suggest uploading and calculating a -$15,000 order (same order code if possible) to person A in January. Credit and Commission for this order would net to $85,000 (where truly earned), however the resulting negative payment will push into the first open period (Feb). This way amount person A got paid in January would still be accurate and match to payroll. If we look at the same example without closing periods, processing the -$15,000 would adjust credit, commission and payment all in January. Although this might seem easier, the January payment amount would no longer match to payroll, which would create potential problems with an Audit, as well as the employee.

Adjustment Example

Note: Keep in mind, any time you need to unfinalize (re-open) a period or multiple periods, you would need to submit a ticket to Xactly Support in order to have them re-open it for you. At this time Administrators do not have the ability to re-open periods from the application.

Working with Xactly Hierarchy

Overview: The Hierarchy Section within Xactly (Organization tab -> Hierarchy) allows the Administrator to set up reporting relationships. Depending on commission plans within your organization, most people in your sales organization would need to be entered into the hierarchy primarily for three reasons:

  • Allow direct reps (people who are actually closing deals) to pass credit up through the hierarchy to their Manager, Director, VP, etc. (Indirect Credit)
  • Allow reps access to the Incentive Statement – any person who is not in the hierarchy will not be able to view the Incentive Statement
  • Report in Analytics – any person who is not in the hierarchy would not come through into Analytics reports
    • As a workaround, I would recommend creating a “Terminated” branch within the hierarchy (as parent position), and add all your terminated reps to this branch of the hierarchy to clean up your hierarchy for the main view yet you would still be able to report on these people.

How it works: When you first enter your system you would already have a hierarchy set up for you by either Xactly Professional Services (New SetUp), or by the person Administrating the system in the past/currently. However, all hierarchies first start off effective “Start of Time – End of Time (SOT-EOT)”, which means all people within the hierarchy will remain reporting to their current manager unless someone makes any changes. For example, if person A reports to Manager B, A will remain reporting to B until the end of time or until, someone who is authorized to do so, changes this relationship.

As best practice, I would recommend adding a new version of the hierarchy (similar to Position Versioning concept) at least monthly to preserve historical reporting relationships, especially if you plan processing prior period adjustments. To use example above (SOT-EOT hierarchy), as of January 1st 2015 person A now reports to Manager C. To properly accommodate this change, you would first need to create a new version of the hierarchy effective January 1st 2015 and once  created change parent position of person A from Manager B to Manager C. Once completed, you should now have 2 hierarchy versions that look like this:

  • Start of Time – December 31st, 2014 version where person A reports to Manager B
  • January 1st, 2015 – End of Time version where person A now reports to Manager C

By versioning the hierarchy you now preserved the historical reporting relationship of person A so that if any orders are processed prior to January 1st, 2015 will roll up to Manager B, and any orders processed past January 1st, 2015 will roll up to Manager C. Depending on the size of your organization and frequency of changes you could version anywhere from daily to monthly or even annually if there are very few movements in the organization.

Adding New Version: To add a new version to your current hiearchy, navigate to Organization -> Hierarchy, click “Edit Hiearchy” (page should default to the latest hierarchy version). Once page loads click “Add Version” -> Enter Hierarchy Name (follow same naming convention as the prior version name) -> Enter Effective Date (any changes in the hierarchy will be effective as of this date) -> Click Save. Once saved you should see a new version of the hierarchy appear where you can now make changes

Hiearchy Version

Using Xactly Draws

Draw Types – listed below are 4 draw types available for setup in Xactly:

  • Recoverable – amount given in addition to any earned commissions and would need to be paid back in the future. For example, person A qualifies for a $100 draw, however person A also earned $200 in commissions. The resulting payment would be $300 & Draw Balance owed next month will be $100
  • Non-Recoverable – amount given in addition to any earned commissions and does not need to be paid back
  • Recoverable Guarantee – amount given net of commissions earned and would need to be paid back in the future. Taking the same example from above where person A qualifies for a $100 draw and is also earning $200 in commission. The resulting payment would be just the $200 earned from commission, no draw is given as commission amount exceeds draw amount. Balance owed next month would be 0. However, if person A only earned $50 in commission, then the resulting payment would be $100 ($50 from earned commission + 50$ draw payment). Balance owed next month will be $50
  • Non-Recoverable Guarantee – essentially exactly the same as Recoverable Guarantee, however any draw payment added does not need to be paid back

Note: Think of Guarantee type draws as essentially a guarantee by the company that person A will make a certain amount either in a form of a draw payment, commission payment, or a combination of draw + commission.

SetUp: Draws are set up under Plan Design -> Draws & you would need to add each position (person) to the created draw type by clicking “Add Position” -> Searching for Position -> OK -> Enter amounts.


Tips & Best Practice:

  • Draw Name – as best practice I would suggest using the “YYYY – Draw Type – Currency” naming convention to standardize your draws and make it easier to maintain them YoY (For example, “2015 – Recoverable Guarantee – USD”)
  • Draw payments/balance recovery occur when period is finalized (closed)
  • Draw Balance is recovered in a period in which the person is NOT eligible for a draw payment. For example, person A has a -10,000 draw balance in January, yet person A earned $5,000 in commission in February and is eligible for a $5,000 Recoverable Guarantee. Person A will receive a payment of $5,000 in commission (no draw given since he earned the guaranteed amount), and $0 would be recovered as person A was still eligible for a draw even though it was not paid. Balance recovery will start only when there is no more draw eligibility
  • Draw Balances do not automatically carry over into next year. To carry over balances you would need to set up 0 amount draw for the position. For example, by December 2014 Person A still carries -$10,000 draw balance and would need to continue recovering this balance in 2015. Depending on the draw type originally set up, you would need to create a 2015 Draw Type under Plan Design -> Draws (same process as outlined under “SetUp”), and add position for person A with all $0 amounts for periods
  • Draw Balance is recovered after Balance Carry Forward (BCF) is fully recovered. In the event a person has both a balance owed from a debook/clawback in an earlier period and a Draw Balance, the BCF balance is recovered first, and then draw balance is recovered. For example, person A carries a -$5,000 balance carry forward for a debook which occurred in a prior month and a -$10,000 Draw Balance in January. Next month person A earned $2,000 in commission, he would then recover $2,000 from BCF owed and would owe -$3,000 BCF and -$10,000 Draw Balance

Changing Xactly User Email Address

Overview: Every person which needs to have access to Xactly must have an activated user record in the system under SetUp -> Users in order to login. Whenever creating user records, a valid email address needs to be entered (later used to send out system email alerts/notifications to the person). Also, if you either already have or planning to enable Single Sign On (SSO) between Xactly and company CRM system (SFDC, for example), user’s Xactly email address must match the SFDC user’s email address (case sensitive) in order to successfully login through SSO. User email addresses are unique between all Xactly instances, so “” address cannot exists in your own or any other Xactly instance, for example. When an email address is added and user record saved, you can no longer change it and the only way to change the email address is to create a new record, replace old user record with new on the person record, and then delete the old user record. If you try to delete the incorrect user record without initially removing it from the person record, you will notice the delete user option under more actions is grayed out.

Steps: Navigate to SetUp -> Users -> Add Users -> Create New User (with correct email address). Once new user record is created, navigate to Organization -> People -> Search for person record -> Replace old user with new user -> Click Save. Finally, navigate back to SetUp -> Users -> Find and select old user ->  Click More Actions -> Delete User.

NOTE: Keep in mind that any time “Incent” access is checked off under accessible applications, an email alert is triggered to the user with instructions to setup a password in order to login into Xactly.

Changing Positions by Versioning

Overview: Changing positions in Xactly for a person is a fairly straightforward process, however there are few things to consider. As a rule, a person can occupy only 1 position at a given point in time. What this means is that if a person holds position A from Jan 2015 – Mar 2015 he cannot then also hold another position for the same time frame, he can only hold another position either before Jan 2015 or after Mar 2015, but not 2 simultaneously. This rule can sometimes create difficulties in moving people between positions as you may notice the default version time range for any position is start of time – end of time, so you would need to first break up the old position into “time slots” and also break up the new position into “time slots” by versioning both the old and new positions. When versions are created, you can then populate the person into correct time slots. Failing to version positions, will most likely result in the below message and a good amount of frustration:


Versioning: Also called “effective dating” and is used in other parts of the applications and simply allows you to break up either position (or person, etc) records into “time slots” or versions. To expand the earlier example, person A was holding an Account Executive position as of Jan 2015, and is now taking on a Sales Engineer role as of Mar 2015 so in order to correctly change his position, first create a new position record by navigating to Organization -> Positions -> Click Create Position -> Enter position name, title, Business group but DO NOT populate the person (as you recall the default position version is start of time – end of time so populating the person record will conflict with the old start of time – end of time position). Then click Save -> Save and Add New Version -> Select Effective Start Date of the NEW position (March 1st, 2015) -> Click Save (Still do not populate person name).

Add version

Now that you have your new position set up and versioned, you can go back to the old position to version or effectively end that position assignment with the start date of the new position. In order to do that, navigate to Organization -> Positions -> Search for old position -> Open old position -> Click add version -> Select Effective Date of March 1st, 2015 (date when new position starts) -> Click Save. Notice that when you created a new version for the old position, it did not populate the person name and left that field blank. This is OK since this person does not hold this position any longer. So what you should be left with is an Old position with 2 versions, 1st version Start of time – Feb 28th (person name populated), and 2nd version March 1st – End of time (no person populated).

Person Name

You should also already have your new position set up and versioned, however it is still missing person assignment for March 1st – end of time version and you will need to go back and populate the person. To do so navigate back to the new position, it will default to the new version, and add the person record.

To summarize, in order to move any person from one position to another you need to first create the new position and then break up both the new and old positions into “time slots” as by default both are set to start of time – end of time. Once positions are broken up into time slots those slots can be then populated with the person name. Another option is to first version the old position and then create the new position, new version and add person record, however the above method better highlights the value and reasons for versioning.

TIP: Keep in mind that position records can only be deleted if all associated Quotas, Rate Tables, Named Relationships and/or Draws are also deleted. Also, Incentive Data such as credit, commission and bonus results are carried with the position records. So simply deleting and creating a new position is often not an option, unless there are no results associated with the position.

Using Multiple Browsers

Overview: Using multiple browser windows while working in Incent is a great way to maximize efficiency, however make sure not to run multiple sessions within one browser. For example, if you have Incent open in Chrome, do not open another tab in Chrome and to start a new session of Incent. Doing so may cause data integrity issues as your browser could treat these multiple sessions as one session and overlap some of the information. If you would like to run multiple sessions, they need to be in different browsers. You can have up to three different sessions, one for each supported browser (listed below).

Certified Browsers: It is important to know which browsers are certified by Xactly to make sure the system is running correctly in your browser. Currently Xactly is certified for Internet Explorer, FireFox, and Chrome Browsers, and you can find out exact browser versions by accessing the help menu -> browser support or clicking the below URL:

Because Incent is a browser based application, it is designed to operate within specific browser versions, and you may experience issues such as unresponsive buttons and/or obscured windows within Incent, so it is important to install the correct version.