3Import Your Member Data
This chapter contains the following:
Import Your Member Data
Use this topic to import member data into Oracle Loyalty Cloud. You can use the import functionality to create, update, or delete member records.
To import member records, perform the following tasks:
-
Map your source data to Oracle Loyalty Cloud object attributes.
-
Create the source Comma Separated Values (CSV) file for import.
-
Create the import activity.
-
Review the import activity.
How to Map Your Member Source Data to Target Object Attributes
To import your member data into Oracle Loyalty Cloud, you need to populate a CSV file with your source data and map that source data to target object attributes in Oracle Loyalty Cloud.
You must do the following before creating the CSV file for data import:
-
Identify how your source data attributes map to the target object attributes in Oracle Loyalty Cloud.
-
Ensure that the prerequisite steps, such as understanding what attributes are required for importing your objects, are complete.
-
Understand your options for uniquely identifying the records.
-
Ensure parent records exist before importing child records.
-
Identify the target object attributes that are required in the CSV file for a successful import.
Before You Start Importing Member Data
You can use the import functionality to either import members from a legacy or an external system, or you can batch enroll members from file. Set EnrollFlag to Y for the member record in the file if you want to batch enroll members, set EnrollFlag to N if you want to import member from a legacy or external system. EnrollFlag is only applicable for the create member scenario. When importing a member from a legacy or external system, import the member and its child objects as a whole for data integrity.
You must set certain options for some attributes in the application before you can populate the attributes. For example, you must set up a loyalty program before you import the member data. When importing members from a legacy or an external system (where EnrollFlag is set to N), you must import contact, account, and household records before you import Loyalty Member data, because the member data contains references to contact, account, household data. When batch enrolling members (where EnrollFlag is set to Y), you can choose to use existing contact, account, household records, or you can provide the required information in the input file to create contact, account, household records when enrolling the member. When enrolling the member, the default member tier and member status history records are created. This member enrollment behavior is the same as enrolling a member using the REST API.
Options to Uniquely Identify the Member Records
To import data into Oracle Loyalty Cloud, your CSV file must include some specific attributes that enable the import process to uniquely identify the records. The file import process uses the attribute values to automatically map your source data to the target object attributes in Oracle Loyalty Cloud.
The preferred options to uniquely identify an object record are as follows:
-
Public unique identifiers: If you're creating new records, then you can provide a user-friendly public unique identifier (attributes denoted with 'Number' and usually visible in the business object's UI). If you update a record for which you have previously provided a Number attribute, or for which a Number attribute is visible in the object's UI, you can use the Number attribute to identify the record. For the Loyalty Member object, the attribute is MemberNumber.
-
Internal ID: If you're identifying a record that already exists in Oracle Loyalty Cloud, then you can use the internal ID of the record. An Internal ID is typically a system-generated unique identifier attribute with "id" in the attribute name. You can determine the internal ID of a record by exporting Oracle Loyalty Cloud object data, or by doing a transactional database query. Using an internal ID typically provides better performance and reduces the import duration. For the Loyalty Member object, these attributes are as follows:
-
LoyMemberId
-
PrConId
-
AccntId
-
OrgGroupId
-
AccrualToMemId
-
Required Attributes and Validations for Member Import
To import data successfully into Oracle Loyalty Cloud, your CSV file must include the required attributes. Ensure that you provide valid values for the attributes.
The following table lists the required attributes for importing new member records, required attributes for updating these member records, prerequisite setup tasks for the attributes, and specific validations, if any, for a member import:
Attribute | Description | Data Type | Data Length | Prerequisite Setup Task/ Import Validations | Creating a Loyalty Member record | Updating an Existing Member record |
---|---|---|---|---|---|---|
MemberNumber |
The unique ID for the Loyalty Member record. |
Text |
30 |
None |
Conditionally Required A value is required if EnrollFlag is N. |
Required |
MemberTypeCode |
The member type code. The default value is ORA_MEM_TYPE_INDIVIDUAL |
Text |
30 |
If providing a value, then the value must be a valid, enabled lookup code for lookup type ORA_LOY_MEM_TYPE. |
Conditionally Required A value is required if the default value isn't used. |
Not Required |
StatusCode |
The status code of the member. |
Text |
30 |
If providing a value, the value must be a valid, enabled lookup code for lookup type ORA_LOY_MEM_STATUS. |
Conditionally Required A value is required if the default value isn't used. |
Optional |
MemberClassCode |
The class code of the member. |
Text |
30 |
If providing a value, the value must be a valid, enabled lookup code for lookup type ORA_LOY_MEM_CLASS. |
Optional |
Optional |
MemberGrpCode |
The group code of the member. |
Text |
30 |
If providing a value, the value must be a valid, enabled lookup code for lookup type ORA_LOY_MEM_GRP. |
Optional |
Optional |
MemberPhaseCode |
The phase code of the member. |
Text |
30 |
If providing a value, the value must be a valid, enabled lookup code for lookup type ORA_LOY_MEM_PHASE. |
Optional |
Optional |
LoyProgramName |
The program name of the member enrolls |
Text |
50 |
The program must exist. |
Required |
Not Required |
ReferredByNumber |
The public unique identifier of referred by member. |
Text |
30 |
The referred by member must exist and from same loyalty program. |
Optional |
Optional |
PrConId |
The party identifier of the contact that associate with the member. |
Number |
18 |
The contact must exist. One contact can be associate with single member within a given program. |
Conditionally Required Either PrConId or PartyNumber must be provided for the following two cases:
|
Not Required |
PartyNumber |
The party number of the contact that associate with the member |
Text |
30 |
The contact must exist. One contact can be associate with single member within a given program. |
Conditionally Required Either PrConId or PartyNumber must be provided for the following two cases: A value is required when importing a member from a legacy or external system. A value is required if batch enrolling a member that's associated with an existing contact. |
Not Required |
ContactFirstName |
The first name of the contact |
Text |
150 |
None |
Conditionally Required A value is required when batch enrolling a member with a new contact. |
Not Required |
ContactLastName |
The last name of the contact |
Text |
150 |
None |
Conditionally Required A value is required when batch enrolling a member with a new contact. |
Not Required |
AccntId |
The party identifier of the account that's associated with the company type of the member. |
Number |
18 |
The account must exist. |
Conditionally Required Either AccntId or AccountPartyNumber must be provided for the following two cases when member type is ORA_MEM_TYPE_COMP as follows: A value is require when importing the company type of the member from a legacy or external system. A value is required if batch enrolling a company type of the member that's associated with the existing account. |
Optional |
AccountPartyNumber |
The party number of the account that associate with company type of member |
Text |
30 |
The account must exist. |
Conditionally Required Either AccntId or AccountPartyNumber must be provided for following two cases when member type is ORA_MEM_TYPE_COMP as follows: A value is require when importing the company type of the member from a legacy or external system A value is required if batch enrolling the company type of the member that's associate with the existing account. |
Optional |
LoyAccountName |
The name of the account. |
Text |
360 |
None |
Conditionally Required A value is required when batch enrolling the company type of the member with new account. |
Not Required |
OrgGroupId |
The party identifier of the household that's associated with the household type of the member. |
Number |
18 |
The household must exist. |
Conditionally Required Either OrgGroupId or HouseholdPartyNumber must be provided for the following two cases when the member type is ORA_MEM_TYPE_HOUSEHOLD: A value is require when importing household type of member from a legacy or external system. A value is required if batch enrolling the household type of the member that's associated with the existing household. |
Optional |
HouseholdPartyNumber |
The party number of the household that's associated with the household type of the member. |
Text |
30 |
The household must exist. |
Conditionally Required Either OrgGroupId or HouseholdPartyNumber must be provided for the following two cases when member type is ORA_MEM_TYPE_HOUSEHOLD: A value is require when importing the household type of the member from a legacy or external system. A value is required if batch enrolling the household type of the member that's associated with the existing household. |
Optional |
LoyHouseholdName |
The name of the household. |
Text |
360 |
None |
Conditionally Required A value is required when batch enrolling the household type of the member with a new household. |
Not Required |
AccrualTypeCode |
The accrual type code of the company type of the member. |
Text |
30 |
If providing a value, the value must be a valid, enabled lookup code for lookup type ORA_LOY_MEM_ACCRU_TYPE. |
Conditionally Required A value is required when creating the company type of the member. |
Optional |
AccrualToMemberId |
The unique identifier of the household member which the individual member associates with. |
Number |
18 |
The member must exist and be from same program. |
Conditionally Required Either AccrualToMemberId or HouseholdMemberNumber must be provided when creating the individual type of member and associating it with an existing household member. |
Optional |
HouseholdMemberNumber |
The household member which the individual member associates with. |
Text |
30 |
The member must exist and be from same program. |
Conditionally Required Either AccrualToMemberId or HouseholdMemberNumber must be provided when creating the individual type of the member and associating it with an existing household member. |
Optional |
CurrencyCode |
The currency code for the member. |
Text |
15 |
None |
A list of valid values are defined in the lookup table, ZCA_COMMON_CORPORATE_CURRENCY. Review and update the profile option using the Setup and Maintenance work area, and the Manage Currency Profile Options task. |
Optional |
SurvMemberNumber |
The public unique identifier of the surviving member number |
Text |
30 |
The member must exist and be from same program |
Conditionally Required A value is required when the member is in merged status. |
Optional |
StartDate |
The date when the member joined the program. |
DateTime |
|
None |
Conditionally Required A value is required if you're not using current date time. |
Optional |
You can view the Loyalty Member object along with all its child objects and attributes in the Manage Import Objects page of the Import Management flow. You can find attribute information like type, length, description, and so on, on this page.
Create the Source CSV File for Member Data
The CSV file is provided as input to the data import process. You must populate the CSV file with the data you want to import into Oracle Loyalty Cloud.
You can either create a CSV file on your own or by using a predefined template. To download a template, do the following:
-
Open Tools, and click Import Management.
-
Click the Import Objects tab to open the Import Object Details page.
-
Click the object name link under the Display Name column to navigate to the Manage Mapping page.
-
If you don't have an existing mapping, then click Create Import Mapping to create a mapping.
-
On the Edit Import Mapping page, map the required field attributes by dragging them from the Target Attributes section to the Source File section. Save the mapping when you're done.
-
Click the link in the Mapping Number column of the required mapping.
Note: You can filter the mappings using the Find drop-down list. -
On the Edit Import Mapping page, select Download Template from the Actions drop-down list.
-
Save the template CSV file to a location on your desktop.
You must edit the template CSV file and provide valid values for the required attributes. In the following sample source file, the import CSV file uses MemberNumber and LoyProgramName information from a legacy system to identify the member and the program records. In the first row, ContactFirstName and ContactLastName are provided to enroll a new contact and associate it with a member. In the second row, a value is provided for PartyNumber which identifies the existing contact to associate with the member.
MembernNumber | LoyProgramName | MemberTypeCode | ContactFirstName | ContactLastName | PartyNumber | EnrollFlag |
---|---|---|---|---|---|---|
MEM00000001 |
ABC Reward |
ORA_MEM_TYPE_INDIVIDUAL |
Steve |
Braun |
|
Y |
MEM00000002 |
ABC Reward |
ORA_MEM_TYPE_INDIVIDUAL |
|
|
Party_7231354 |
N |
In the following sample source file, the user enters MemberNumber to identify the member, updating the StatusCode of the member in Oracle Loyalty Cloud.
MemberNumber | StatusCode |
---|---|
MEM00000001 |
ORA_MEM_STATUS_INACTIVE |
MEM00000002 |
ORA_MEM_STATUS_CANCEL |
In the following sample source file, the user enters MemberNumber to identify the member, deleting the member in Oracle Loyalty Cloud by the given MemberNumber. The child member records for the member will be cascade deleted.
MemberNumber | |
---|---|
MEM00000001 |
|
MEM00000002 |
Create the Member Import Activity
To import data into Oracle Loyalty Cloud, you need to create an import activity and provide the CSV file as an input to the activity.
To create an import activity, do the following:
-
Sign in as a setup user.
-
Open Tools, and click Import Management.
-
On the Manage Imports page, click Create Import Activity.
-
In the Create Import Activity: Enter Import Options page, provide a name for the import activity, and select Loyalty Member from the Object drop-down list.
-
In File Name, browse and upload the required CSV file, and click Next.
-
In the Create Import Activity: Map Fields page, edit the attribute mappings if required, and click Next.
Note: Click Validate Data to validate the mapping of the source file for unmapped columns and to check for data format issues. -
In the Create Import Activity: Review and Submit page, click Submit.
Review the Member Import Results
You can review the import results by checking for the import activity in the Manage Import Activity page. A file import activity is said to be successful when its status displays as Completed.
To check the status of the import activity, do the following:
-
Sign in as a setup user.
-
Open Tools, and click Import Management.
-
On the Manage Imports page, search for the import activity that you created using one of the search criteria, such as status, name, object, and so on.
-
Check the Status column for the import activity. The import is successful if the status displays as Completed. The other valid values for the import activity status are Queued for import, Preparing data for import, Importing data, Completed with errors, and Unsuccessful.
Import Your Member Data Using Optimized Volume Import
Use this topic to import your data into Oracle Loyalty using optimized import. You can use the import functionality to create, update, or delete your records.
Use this import mode to import a large number of records for the objects that are supported. When importing the data, select the Enable High-Volume Import option. Optimized import is designed to import millions of records in one import job. This mode doesn't trigger any custom logic configured through the application composer.
Before You Start
Before using optimized import to import your member data, you must do the following:
-
Update your CSV file. Optimized import mode imports use the same CSV template file as standard imports. However, before running an optimized import, you must remove the attributes in the CSV file that only support standard import, and replace those attributes with the replacement attributes. For more information, see the topic Known Issue for Optimized Import.
-
Add the required role and date security. Before using optimized import to import contacts, accounts, and households, you must add the required role and data security policy. For more information, see the topic Add the Required Role and Data Security Policy.
Import Your Member Data In Optimized Import Mode
When you import your data using the optimized import mode, do so in the following order:
-
Contacts (or accounts or households)
-
Members
To import your data using the optimized import mode:
-
Open Tools, and click Import Management.
-
On the Manage Imports page, click Create Import Activity.
-
On the Enter Import Options page, do the following:
Note: Select Contact (or Account or Household), Member, then Transaction, in that order, for each import job.-
Enter a name for your import in the Name field (for example, Contact Import, Member Import, or Transaction Import), then select the object to import for the job from the Object field (for contact data, select Contacts; for member data, select Loyalty Member; for transaction data, select Loyalty Transaction).
-
Select the CSV file to import (for example. MyContacts.csv, MyMembers.csv, or MyTransactions.csv) by clicking Browse beside File Name.
-
Select the Enable High-Volume Import option in the Advanced Options section.
-
Specify any other options as required, and click Next.
-
-
On the next two pages, accept the defaults and click Next, and then click Submit Job on the last page.
-
On the Manage Imports page, check that your job status is set to Completed.
-
You can click your import job name to find details of your import job including any validation errors that are typically provided in the Import Attachments section.
-
(Optional) You can also generate a diagnostic log by clicking Generate Diagnostics from the Actions field.
-
Repeat these steps as required to import your contact (or accounts or households) and member data.