Legacy Data Import
Outline
When migrating from another CRM or Gateway you will need to get in contact with the CRM/Gateway that you are running the billings through to let them know that you will be migrating your customers to a new CRM. Let them know that you will need the card numbers and/or rebill tokens to validate our rebill requests (dependent on how the gateway operates).
Once you receive the data from the gateway, you will need to adjust their file so that it contains the headers and data that the CheckoutChamp import is expecting to see. Follow the instructions below to determine which files/data you will need to prepare.
Please be aware that the are the merchantId, campaignId, and productId are all required values on the Transactions file, and these values are found within your CheckoutChamp CRM. The merchantId is the ID found on the gateway list, the campaignId is the ID found on the campaign list, and the productId is the ID found on the offers/upsells INSIDE the campaign.
When you are ready with the file (or you can do this sooner), please place a request to our migration team as that is the team who will pull in the data. They are also a great resource if you have any questions about the files.
When it has been determined that the file is ready, my team will send SFTP credentials for the data to be posted into – where then we will pull it from the SFTP and into CheckoutChamp. When the data has been pulled into CheckoutChamp we will request that you look at the imported customers to ensure everything is looking as it should. We will also ask for you to Force Bill a few customers (force the next rebill) so we can confirm that the transaction reaches the gateway properly. It is typically suggested to do a smaller sample file first – and then we can proceed with uploading the rest after it is confirmed that the sample upload was successful.
Once it has been confirmed that everything is looking good on the imports, and after coordinating with you to ensure the billings in the old CRM/Gateway have been stopped – the last step is for the migration team to enable those migrated customers so that they get picked up on the rebill task moving forward.
Instructions
Legacy Data must be imported into CheckoutChamp via .csv formatted import files.
CheckoutChamp staff will provide support and guidance on creating the file, however, CheckoutChamp staff will not be responsible for manipulating data or modifying files. The accuracy of the data provided in the import files is 100% the responsibility of the CheckoutChamp client. Any request to modify data that was imported as defined in the import files , may result in a billable fee.
It is absolutely critical that the file format provided matches in terms of:
Data Type - The data type must match to the specifications defined below. If data format does not meet the specifications, the import will fail.
Required - Required fields must be provided in the file. If they are not provided, the import will fail.
Some Common data things to look for:
1. .csv file format is required 2. dateCreated field needs to be format: (YYYY-MM-DD HH:MM:SS) 3. isActiveRecurring column needs to be defined if providing an active account and specifying the next bill date 4. responseType can only be one of these two options: SUCCESS or DECLINE (Exact case and exact spelling) 5. responseText can only be one of these two options: SUCCESS or DECLINE (Exact case and exact spelling) 6. billShipSame column needs to be defined.
Below are the formats for the 3 possible files involved in the process:
Transactions*
Customer Notes
Additional Customer Details
*Required
Depending on the information you intend to retain, you may choose to import customer notes and additional customer details.
- Transactions - The transactions file is the most important file. This holds information on all the individual transactions that have been issued against customer cards. It also contains data related to recurring continuity and upcoming billing dates as well was tracking numbers related to order shipments.
Field Definitions:
Col
Name
Type
Required
Description
A
customerId
varchar(20)
Y
Your internal customer id for this customer
B
orderId
varchar(20)
Y
Your internal order id for the order associated with this transaction
C
dateCreated
datetime (YYYY-MM-DD HH:MM:SS)
Y
The timestamp of the transaction
D
campaignId
integer
Y
The CheckoutChamp campaignId that indicates which campaign to import this order into.
E
productId
integer
Y
The CheckoutChamp campaign productId that indicates which product within the campaign, the transaction was for. (Found on the campaign page)
F
isActiveRecurring
bit 0=false 1=true
Y
Whether this transaction was made on a currently active continuity product
G
nextBillDate
date (YYYY-MM-DD)
Y - IF isActiveRecurring=1
The next scheduled billing date for the active continuity product
H
paySource
ENUM (CREDITCARD, CHECK, or PREPAID)
Y
How the customer paid for the product
I
cardNumber
integer (max 19)
Y - IF paySource=CREDITCARD
Full credit card number used for payment
J
cardExpiryMonth
integer (MM)
Y - IF paySource=CREDITCARD
Month in which the card expires (must include leading zeros)
K
cardExpiryYear
integer (YYYY)
Y - IF paySource=CREDITCARD
Year in which the card expires (must be 4 digits)
L
achRoutingNumber
integer
Y - IF paySource=CHECK
Routing number of the customer's bank
M
achAccountNumber
integer
Y - IF paySource=CHECK
Account number of the customer's bank account
N
achAccountType
ENUM (SAVINGS or CHECKING)
Y - IF paySource=CHECK
Bank Account Type
O
merchantId
integer
Y
CheckoutChamp Id for the merchant account the transaction was billed against
P
merchantTxnId
varchar(30)
Y
transactionId returned by the merchant processor
Q
txnType
ENUM (SALE, AUTHORIZE, CAPTURE, REFUND)
Y
The type of transaction
R
subTotal
decimal
Y
product price before shipping and taxes applied
S
shipTotal
decimal
Y
shipping charged for the order
T
salesTax
decimal
Y
sales tax charged for the order
U
totalAmount
decimal
Y
Sum of salesTax / subTotal / shipTotal (Must add up correctly)
V
responseType
ENUM (SUCCESS or DECLINE)
Y
Result of the transaction, was it successful?
W
responseText
ENUM (SUCCESS or DECLINE)
Y
Any additional response information returned by the processor
X
authCode
varchar(20)
N
Authorization Code returned by the processor
Y
parentTxnId
varchar(30)
Y - IF txnType=REFUND or txnType=CAPTURE
The parent transaction against which a refund or capture transaction was run
Z
firstName
varchar(30)
Y
Customer's first name
AA
lastName
varchar(30)
Y
Customer's last name
AB
address1
varchar(30)
Y
Billing Address Line 1
AC
address2
varchar(30)
Y
Billing Address Line 2
AD
city
varchar(30)
Y
Billing Address City
AE
state
varchar(30)
Y - IF country=US or country=CA
Billing Address State
AF
country
char(2) -standard ISO 2 country codes
Y
Billing Address Country
AG
postalCode
varchar(20)
Y
Billing Address Postal Code
AH
phoneNumber
numeric (no dashes or parentheses)
Y - IF emailAddress is not present
Primary Phone number of customer.
AI
homePhone
numeric (no dashes or parentheses)
N
Home telephone number
AJ
cellPhone
numeric (no dashes or parentheses)
N
Cellphone number
AK
workPhone
numeric (no dashes or parentheses)
N
Work telephone number
AL
emailAddress
emailAddress (must be valid format)
Y - IF phoneNumber is not present
Customer's email address.
AM
billShipSame
bit 0=false 1=true
Y
Whether or not the shipping address is the same as the billing address
AN
shipFirstName
varchar(30)
N
Shipping First Name
AO
shipLastName
varchar(30)
N
Shipping Last Name
AP
shipAddress1
varchar(30)
Y - If billShipSame=0
Shipping Address Line 1
AQ
shipAddress2
varchar(30)
Y - If billShipSame=0
Shipping Address Line 2
AR
shipCity
varchar(30)
Y - If billShipSame=0
Shipping Address City
AS
shipState
varchar(30)
Y - If country=US or country=CA
Shipping Address State
AT
shipCountry
char(2) -standard ISO 2 country codes
Y - If billShipSame=0
Shipping Address Country
AU
shipPostalCode
varchar(20)
Y - If billShipSame=0
Shipping Address Postal Code
AV
affId
varchar(20)
N
CheckoutChamp affId
AW
subAffId
varchar(20)
N
Sub affiliate id associated with order
AX
shipDate
date (YYYY-MM-DD)
N
Date on which the order was shipped
AY
shipCarrier
varchar(20) (ex. USPS, FedEx, etc)
N
Carrier responsible for shipment
AZ
shipMethod
varchar(20)
N
Carrier's shipment method (ex. Express, 3-day Ground, etc)
BA
trackingNumber
varchar(20)
N
Order Tracking # assigned by the carrier
BB
isChargedback
Boolean('0' or '1')
N
Indicates that the specific transaction has been charged back by the card holder.
BC
chargebackTotal
Decimal (xx.xx format)
Y-if isChargedback
The amount of the chargeback.
BD
chargebackDate
Date (YYYY-MM-DD)
Y-if isChargedback
The date on which the chargeback was issued.
BE
chargebackReasonCode
varchar(10)
Y-if isChargedback
Card issuer's chargeback code.
BF
externalToken
varchar(50)
N
A token identifying the customer payment source at the 3rd party gateway. This is commonly used to run existing rebills when the full card numbers are unavailable and when gateway-supported. -note: if provided, cardNumber column may be masked with either x's or asterisks.
BG
quantity
integer
N
The quantity of the product. If not provided or not greater than 0, then it will be set to 1.
BH
variantDetailId
integer
N
The CheckoutChamp variantDetailId that indicates which variant of the product the transaction was for. (Found on the product page). The variant must exist on the CheckoutChamp product.
BI
password
varchar(30)
N
Membership password for a third-party site
BJ
companyName
varchar(50)
N
Customers company
BK
cancellationDate
date (YYYY-MM-DD)
Y - IF status of order is CANCELLED
The date the product was cancelled
*NOTE: The final file should be a .csv file. We highly recommend quoting all cells to avoid formatting issues with strings that contain commas or quotation marks. Pay extra attention to the Card Number field as spreadsheet files have a bad habit of truncating card numbers to 15 significant digits.
- Customer Notes - The Customer Notes file contains exactly that -- notes on customer service actions that affect customer orders.
Field Definitions:
Col
Name
Type
Required
Description
A
customerId
varchar(20)
Y
Your internal customer id for this customer. This must match the customerId in the transactions file
B
dateCreated
datetime (YYYY-MM-DD HH:MM:SS)
Y
the date the note was taken
C
agentName
varchar(20)
N
Name of the individual customer service agent. (Leave empty for system notes)
D
noteText
varchar(500)
Y
The note itself
- Additional Customer Details - So you store as much information about every customer as possible? We do too! This file is for all the additional information you collect on customers, such as custom fields, club memberships and website username / passwords.
Field Definitions:
Col
Name
Type
Required
Description
A
customerId
varchar(20)
Y
Your internal customer id for this customer. This must match the customerId in the transactions file
B
loginId
varchar(30)
N
loginId or username for a third-party site
C
password
varchar(30)
N
password for a third-party site
D
custom1
varchar(50)
N
standard custom field 1
E
custom2
varchar(50)
N
standard custom field 2
F
custom3
varchar(50)
N
standard custom field 3
G
custom4
varchar(50)
N
standard custom field 4
H
custom5
varchar(50)
N
standard custom field 5
Providing the files to CheckoutChamp :
Since these files contain credit card numbers and bank account numbers, they cannot be transferred over email. Your CheckoutChamp Legacy Import Specialist will provide you with a secure sftp account to which to can post the files. Once your files are transferred to the CheckoutChamp SFTP site, the CheckoutChamp team will work with you to import your data.
PGP Key found here
Last updated