Difference between revisions of "Data Integration"

From Whirlwind eCommerce Wiki
Jump to: navigation, search
(New page: The integration details can be a bulleted list like below. In addition to each transfer being described, we will need example transfers for each type. All details (field names, data types,...)
 
m (Reverted edits by Ukaqicuryx (Talk) to last version by Root)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The integration details can be a bulleted list like below. In addition to each transfer being described, we will need example transfers for each type. All details (field names, data types, tables, etc) should be from the perspective of your system (MARCO).
+
The integration details can be a bulleted list like below. In addition to each transfer being described, we will need example transfers for each type. All details (field names, data types, tables, etc) should be from the perspective of your system.
  
 
==Description==
 
==Description==
 
Breakdown the list in the following format:
 
Breakdown the list in the following format:
  
*From and To System (so we know what direction we are sending the info)
+
*;''From and To System (so we know what direction we are sending the info)''
;*Transfer Name
+
:*;Transfer Name
;Details about transfer like how often to execute, how it will connect, any ‘triggered actions’ that may take place as it occurs and the data format. Any information about returned data(error codes, etc) will be here as well.
+
:''Details about transfer like how often to execute, how it will connect, any ‘triggered actions’ that may take place as it occurs and the data format. Any information about returned data(error codes, etc) will be here as well.''
;;*Flat Table Name
+
::*Flat Table Name
;;;*Data Field Name DATATYPE (Expected layout) [examples or fixed values]
+
:::*Data Field Name DATATYPE (Expected layout) [examples or fixed values]
  
 
==Example==
 
==Example==
  
From Web to MARCO:
+
*;''From Web to Point Of Sale''
o Orders
+
:*;Orders
Transferred every 15 minutes, all orders that have been COMPLETED since last transfer. Transfer method will be FTPing a file to ftp://address/folder using user name “user” and password “password”. The data will be in comma delimited format.
+
:''Transferred every 15 minutes, all orders that have been COMPLETED since last transfer. Transfer method will be FTPing a file to ftp://address/folder using user name “user” and password “password”. The data will be in comma delimited format''
Orders
+
::*Orders
OrderNumber INT(21)
+
:::*OrderNumber INT(21)
CreateDate DATETIME (YYYY-MM-DD HH:MM:SS)
+
:::*CreateDate DATETIME (YYYY-MM-DD HH:MM:SS)
CompleteDate DATETIME (YYYY-MM-DD HH:MM:SS)
+
:::*CompleteDate DATETIME (YYYY-MM-DD HH:MM:SS)
SourceCode VARCHAR(20)
+
:::*SourceCode VARCHAR(20)
userId INT(21)
+
:::*userId INT(21)
Products
+
::*Products
itemId INT(21)
+
:::*itemId INT(21)
SKU VARCHAR(25)
+
:::*SKU VARCHAR(25)
PricePer FLOAT(10,2)
+
:::*PricePer FLOAT(10,2)
Quantity INT(4)
+
:::*Quantity INT(4)
Product Options
+
::*Product Options
optionId INT(21)
+
:::*optionId INT(21)
productId INT(21)
+
:::*productId INT(21)
optionName VARCHAR(25);
+
:::*optionName VARCHAR(25);
optionValue VARCHAR(100);
+
:::*optionValue VARCHAR(100);
optionPrice FLOAT(10,2)
+
:::*optionPrice FLOAT(10,2)
Discounts
+
::*Discounts
discountId INT(21)
+
:::*discountId INT(21)
discountCode VARCHAR(25)
+
:::*discountCode VARCHAR(25)
discountDetails VARCHAR(100)
+
:::*discountDetails VARCHAR(100)
amount FLOAT(10,2)
+
:::*amount FLOAT(10,2)
Payments
+
::*Payments
paymentId INT(21)
+
:::*paymentId INT(21)
cardNumber VARCHAR(20)
+
:::*cardNumber VARCHAR(20)
expDate DATE (YYYY-MM-DD)
+
:::*expDate DATE (YYYY-MM-DD)
status VARCHAR(2) [Approved, Declined, Manual…]
+
:::*status VARCHAR(2) [Approved, Declined, Manual…]
firstName VARCHAR(50)
+
:::*firstName VARCHAR(50)
lastName VARCHAR(50)
+
:::*lastName VARCHAR(50)
Addresses
+
::*Addresses
addressed INT (21)
+
:::*addressed INT (21)
shippingOrPayment BIT [1,2]
+
:::*shippingOrPayment BIT [1,2]
firstName VARCHAR(50)
+
:::*firstName VARCHAR(50)
lastName VARCHAR(50)
+
:::*lastName VARCHAR(50)
address1 VARCHAR(100)
+
:::*address1 VARCHAR(100)
address2 VARCHAR(100)
+
:::*address2 VARCHAR(100)
city VARCHAR(50)
+
:::*city VARCHAR(50)
state CHAR(2)
+
:::*state CHAR(2)
zip VARCHAR(5)
+
:::*zip VARCHAR(5)
phone1 VARCHAR(21)
+
:::*phone1 VARCHAR(21)
phone2 VARCHAR(21)
+
:::*phone2 VARCHAR(21)
emailAddress VARCHAR(100)
+
:::*emailAddress VARCHAR(100)
o User Accounts
+
:*;User Accounts
Transferred once a day at 4:00am EST. Transfer method will be an http call made by MARCO to address http://urlhere/folder/file . The file will be closed with a “<!—COMPLETED -->” tag if the request was successfully fulfilled. The data will be in comma delimited format.
+
:''Transferred once a day at 4:00am EST. Transfer method will be an http call made by POS to address http://urlhere/folder/file . The file will be closed with a “<!—COMPLETED -->” tag if the request was successfully fulfilled. The data will be in comma delimited format.''
Users
+
::*Users
userId INT(21)
+
:::*userId INT(21)
emailAddress VARCHAR(100)
+
:::*emailAddress VARCHAR(100)
password VARCHAR(20)
+
:::*password VARCHAR(20)
firstName VARCHAR(50)
+
:::*firstName VARCHAR(50)
lastName VARCHAR(50)
+
:::*lastName VARCHAR(50)
From MARCO to WEB:
+
*;''From MARCO to WEB''
o Shipping (Fulfillment) Status
+
:*;Shipping (Fulfillment) Status
This transfer will occur every 1 hour on the hour. MARCO will drop an FTP file in FTP://urlhere/folder/file user name: “user” password “password”, Each order that comes in triggers an email to the customer with the tracking information. Email content will be sent later. The data will be fixed width according to the field sizes below.
+
:''This transfer will occur every 1 hour on the hour. POS will drop an FTP file in FTP://urlhere/folder/file user name: “user” password “password”, Each order that comes in triggers an email to the customer with the tracking information. Email content will be sent later. The data will be fixed width according to the field sizes below.''
ORDERS
+
::*ORDERS
trackingNumber VARCHAR(100)
+
:::*trackingNumber VARCHAR(100)
itemId INT(21)
+
:::*itemId INT(21)
ordered INT(21)
+
:::*ordered INT(21)
o Product Pricing
+
:*;Product Pricing
This transfer will occur weekly on Sunday at 4:00 am EST. The web site will make an HTTP call to http://urlhere/folder/file to retrieve the data. The data will be in XML format.
+
:''This transfer will occur weekly on Sunday at 4:00 am EST. The web site will make an HTTP call to http://urlhere/folder/file to retrieve the data. The data will be in XML format.''
PRODUCTS
+
::*PRODUCTS
productNumber INT(21)
+
:::*productNumber INT(21)
listPricePer FLOAT(10,2)
+
:::*listPricePer FLOAT(10,2)
pricePer FLOAT(10,2)
+
:::*pricePer FLOAT(10,2)

Latest revision as of 16:51, 1 December 2010

The integration details can be a bulleted list like below. In addition to each transfer being described, we will need example transfers for each type. All details (field names, data types, tables, etc) should be from the perspective of your system.

Description

Breakdown the list in the following format:

  • From and To System (so we know what direction we are sending the info)
  • Transfer Name
Details about transfer like how often to execute, how it will connect, any ‘triggered actions’ that may take place as it occurs and the data format. Any information about returned data(error codes, etc) will be here as well.
  • Flat Table Name
  • Data Field Name DATATYPE (Expected layout) [examples or fixed values]

Example

  • From Web to Point Of Sale
  • Orders
Transferred every 15 minutes, all orders that have been COMPLETED since last transfer. Transfer method will be FTPing a file to ftp://address/folder using user name “user” and password “password”. The data will be in comma delimited format
  • Orders
  • OrderNumber INT(21)
  • CreateDate DATETIME (YYYY-MM-DD HH:MM:SS)
  • CompleteDate DATETIME (YYYY-MM-DD HH:MM:SS)
  • SourceCode VARCHAR(20)
  • userId INT(21)
  • Products
  • itemId INT(21)
  • SKU VARCHAR(25)
  • PricePer FLOAT(10,2)
  • Quantity INT(4)
  • Product Options
  • optionId INT(21)
  • productId INT(21)
  • optionName VARCHAR(25);
  • optionValue VARCHAR(100);
  • optionPrice FLOAT(10,2)
  • Discounts
  • discountId INT(21)
  • discountCode VARCHAR(25)
  • discountDetails VARCHAR(100)
  • amount FLOAT(10,2)
  • Payments
  • paymentId INT(21)
  • cardNumber VARCHAR(20)
  • expDate DATE (YYYY-MM-DD)
  • status VARCHAR(2) [Approved, Declined, Manual…]
  • firstName VARCHAR(50)
  • lastName VARCHAR(50)
  • Addresses
  • addressed INT (21)
  • shippingOrPayment BIT [1,2]
  • firstName VARCHAR(50)
  • lastName VARCHAR(50)
  • address1 VARCHAR(100)
  • address2 VARCHAR(100)
  • city VARCHAR(50)
  • state CHAR(2)
  • zip VARCHAR(5)
  • phone1 VARCHAR(21)
  • phone2 VARCHAR(21)
  • emailAddress VARCHAR(100)
  • User Accounts
Transferred once a day at 4:00am EST. Transfer method will be an http call made by POS to address http://urlhere/folder/file . The file will be closed with a “<!—COMPLETED -->” tag if the request was successfully fulfilled. The data will be in comma delimited format.
  • Users
  • userId INT(21)
  • emailAddress VARCHAR(100)
  • password VARCHAR(20)
  • firstName VARCHAR(50)
  • lastName VARCHAR(50)
  • From MARCO to WEB
  • Shipping (Fulfillment) Status
This transfer will occur every 1 hour on the hour. POS will drop an FTP file in FTP://urlhere/folder/file user name: “user” password “password”, Each order that comes in triggers an email to the customer with the tracking information. Email content will be sent later. The data will be fixed width according to the field sizes below.
  • ORDERS
  • trackingNumber VARCHAR(100)
  • itemId INT(21)
  • ordered INT(21)
  • Product Pricing
This transfer will occur weekly on Sunday at 4:00 am EST. The web site will make an HTTP call to http://urlhere/folder/file to retrieve the data. The data will be in XML format.
  • PRODUCTS
  • productNumber INT(21)
  • listPricePer FLOAT(10,2)
  • pricePer FLOAT(10,2)