INCENT UPLOAD CUSTOMERS
Summary
The INCENT UPLOAD CUSTOMERS
command allows developers to load information about customers into Incent.
The Customer area allows companies to set up customers and channels that can be used in the incentive compensation rules, formulas, attainment measures, lookup tables, and the Incentive Estimator. Customer name and the corresponding fields can also be used for reporting in Xactly Analytics, and are featured in a “Top Ten Customers by Order Amount” out-of-the-box template report.
Incent Admin Guide: https://helpcenter.xactlycorp.com/article/incent-administrator-customer-2/
The command transfers data from the staging.customer
table into Incent. The command is often called as part of a larger ETL pipeline before validating staged sales orders. Customer names found on a staged sales order must be present in Incent for the staged order row to validate properly. Refer to INCENT UPLOAD ORDERS
and INCENT VALIDATE ORDERS
.
The following list provides the generic steps to follow:
DELETE
data from thestaging.customer
andstaging.customer_exception
tables. Archive rows as necessary as dictated by your business requirements.- Perform any ETL transformations necessary to prepare your raw customer data for upload into Incent.
INSERT
the transformed data intostaging.customer.
- Call
INCENT UPLOAD CUSTOMERS
. - Check the
staging.customer_exception
table for any processing and data validation errors. Fix or archive any staging rows that failed validate and call the upload command again as necessary.
Syntax
incent [synchronous] upload customers; |
Parameters
Parameter
|
Description
|
---|---|
synchronous |
(Optional) The upload command runs asynchronously by default when invoked, i.e. control returns immediately to the calling program and the job runs in the background on the Connect server. Use the ‘synchronous’ keyword to force the Connect server to return control only after the upload completes.
When invoked asynchronously, you can track the status of the upload by querying the |
Details
Ensure you have registered a valid Incent username and password within Connect before invoking the upload command. INCENT
commands require valid credentials to modify data with Incent. Refer to INCENT CREDENTIAL.
The upload command operates against the complete set of rows found in the staging.customer
table. The following tables describe the staging and exception log tables used to move customers into Incent. Unlike other types of reference data in Incent, customers are not effective dated.
staging.customer – (Required) Use this table to transfer customer data into Incent. | |||
Column Name | Data Type | Description | xactly Target Table |
---|---|---|---|
action | string | (Required) The value instructs the type of operation the upload should perform on the row. INCENT UPLOAD CUSTOMERS has two options:
|
n/a |
name | string | (Required) Unique business identifier for a customer. | xactly.xc_customer.name |
description | string | (Optional) Free-form text for notes or other details about the customer. | xactly.xc_customer.descr |
prefix | string | (Optional) Free-form text for honorifics or other name prefixes. | xactly.xc_customer.prefix |
first_name | string | (Optional) Free-form text for customer name information. | xactly.xc_customer.first_name |
middle_name | string | (Optional) Free-form text for customer name information. | xactly.xc_customer.middle_name |
last_name | string | (Optional) Free-form text for customer name information. | xactly.xc_customer.last_name |
full_name | string | (Optional) Free-form text for customer name information. | xactly.xc_customer.full_name |
address_line_1 | string | (Optional) Free-form text for customer address information. | xactly.xc_customer.addr_line_1 |
address_line_2 | string | (Optional) Free-form text for customer address information. | xactly.xc_customer.addr_line_2 |
address_line_3 | string | (Optional) Free-form text for customer address information. | xactly.xc_customer.addr_line_3 |
city | string | (Optional) Free-form text for customer address information. | xactly.xc_customer.city |
state | string | (Optional) Free-form text for customer address information. | xactly.xc_customer.state |
zip | string | (Optional) Free-form text for customer address information. | xactly.xc_customer.zip |
country | string | (Optional) Free-form text for customer address information. | xactly.xc_customer.country |
phone_number_1 | string | (Optional) Free-form text for contact info. | xactly.xc_customer.phone_no_1 |
phone_number_2 | string | (Optional) Free-form text for contact info. | xactly.xc_customer.phone_no_2 |
fax_number | string | (Optional) Free-form text for contact info. | xactly.xc_customer.fax_number |
email_address | string | (Optional) Free-form text for contact info. | xactly.xc_customer.email |
parent_name | string | (Optional) Reserved for future use to create a customer hierarchy. | xactly.xc_customer.parent_customer_id |
staging.customer_exception – The upload command writes any errors encountered during processing to this table. INCENT UPLOAD CUSTOMERS truncates this table automatically for each run. Archive any existing error rows as needed before running the command. |
||
Column Name | Data Type | Description |
---|---|---|
action | string | Refer to staging.customer |
name | string | Refer to staging.customer |
description | string | Refer to staging.customer |
prefix | string | Refer to staging.customer |
first_name | string | Refer to staging.customer |
middle_name | string | Refer to staging.customer |
last_name | string | Refer to staging.customer |
full_name | string | Refer to staging.customer |
address_line_1 | string | Refer to staging.customer |
address_line_2 | string | Refer to staging.customer |
address_line_3 | string | Refer to staging.customer |
city | string | Refer to staging.customer |
state | string | Refer to staging.customer |
zip | string | Refer to staging.customer |
country | string | Refer to staging.customer |
phone_number_1 | string | Refer to staging.customer |
phone_number_2 | string | Refer to staging.customer |
fax_number | string | Refer to staging.customer |
email_address | string | Refer to staging.customer |
parent_name | string | Refer to staging.customer |
exception_code | string | Numeric error code returned for any row that the command cannot upload |
exception_message | string | Text description returned for any row that the command cannot upload. Refer to possible messages in following table. |
Examples
incent upload customers;