Babelway - Level 1 Certification
The Level 1 Certification Babelway course is a hypothetical project that will result in a certification of the Babelway tool upon completion.
This course will give you the materials and prompt you with a hypothetical implementation project. Upon completion of the work, and submission for approval, the user can be awarded a level 1 Babelway certificate and signifies the users basic understanding of the Babelway tool and B2B integration concepts.
Table of contents
Documents attached to the course
Contact Import XML Sample.xml
<?xml version="1.0" encoding="UTF-8"?>
<request>
<contactImport>
<systemInformation>
<newContact>Y</newContact>
<accountOwner>John Doe</accountOwner>
<creationDate>2016-01-29</creationDate>
</systemInformation>
<personalInformation>
<name>Jill Smith</name>
<company>ABC Co.</company>
<title>Project Manager</title>
<language>EN</language>
<country>US</country>
<phone>555-552-9143</phone>
<email>jill.smith@abcco.com</email>
</personalInformation>
</contactImport>
</request>
Customer ERP Invoice Sample.xml
<request>
<invoice>
<invoiceHeader>
<invoiceNumber>INV123</invoiceNumber>
<invoiceDate>20160301</invoiceDate>
<poNumber>4500064817</poNumber>
<VATAmount>435.20</VATAmount>
<supplierNumber>4500074828</supplierNumber>
</invoiceHeader>
<invoiceDetail>
<lineItem>
<quantity>1</quantity>
<unit>EA</unit>
<unitPrice>1.99</unitPrice>
<description>Nails</description>
</lineItem>
</invoiceDetail>
</invoice>
<invoice>
<invoiceHeader>
<invoiceNumber>INV124</invoiceNumber>
<invoiceDate>20160301</invoiceDate>
<poNumber>4500064817</poNumber>
<VATAmount>435.20</VATAmount>
<supplierNumber>4500074828</supplierNumber>
</invoiceHeader>
<invoiceDetail>
<lineItem>
<quantity>10</quantity>
<unit>EA</unit>
<unitPrice>21.99</unitPrice>
<description>Tape</description>
</lineItem>
<lineItem>
<quantity>1</quantity>
<unit>EA</unit>
<unitPrice>104.99</unitPrice>
<description>Drill</description>
</lineItem>
<lineItem>
<quantity>7</quantity>
<unit>EA</unit>
<unitPrice>20</unitPrice>
<description>Boards</description>
</lineItem>
</invoiceDetail>
</invoice>
</request>
Customer ERP Order Sample.xml
<PurchaseOrders>
<PurchaseOrder PurchaseOrderNumber="99503" OrderDate="1999-10-20">
<Address Type="Shipping">
<Name>Ellen Adams</Name>
<Street>123 Maple Street</Street>
<City>Mill Valley</City>
<State>CA</State>
<Zip>10999</Zip>
<Country>USA</Country>
</Address>
<Address Type="Billing">
<Name>Tai Yee</Name>
<Street>8 Oak Avenue</Street>
<City>Old Town</City>
<State>PA</State>
<Zip>95819</Zip>
<Country>USA</Country>
</Address>
<DeliveryNotes>Please leave packages in shed by driveway.</DeliveryNotes>
<Items>
<Item PartNumber="872-AA">
<ProductName>Lawnmower</ProductName>
<Quantity>1</Quantity>
<USPrice>148.95</USPrice>
<Comment>Confirm this is electric</Comment>
</Item>
<Item PartNumber="926-AA">
<ProductName>Baby Monitor</ProductName>
<Quantity>2</Quantity>
<USPrice>39.98</USPrice>
<ShipDate>1999-05-21</ShipDate>
</Item>
</Items>
</PurchaseOrder>
</PurchaseOrders>
Customer ERP Order Sample_Multiple Orders.xml
<?xml version="1.0"?>
<PurchaseOrders>
<PurchaseOrder PurchaseOrderNumber="99503" OrderDate="1999-10-20">
<Address Type="Shipping">
<Name>Ellen Adams</Name>
<Street>123 Maple Street</Street>
<City>Mill Valley</City>
<State>CA</State>
<Zip>10999</Zip>
<Country>USA</Country>
</Address>
<Address Type="Billing">
<Name>Tai Yee</Name>
<Street>8 Oak Avenue</Street>
<City>Old Town</City>
<State>PA</State>
<Zip>95819</Zip>
<Country>USA</Country>
</Address>
<DeliveryNotes>Please leave packages in shed by driveway.</DeliveryNotes>
<Items>
<Item PartNumber="872-AA">
<ProductName>Lawnmower</ProductName>
<Quantity>1</Quantity>
<USPrice>148.95</USPrice>
<Comment>Confirm this is electric</Comment>
</Item>
<Item PartNumber="926-AA">
<ProductName>Baby Monitor</ProductName>
<Quantity>2</Quantity>
<USPrice>39.98</USPrice>
<ShipDate>1999-05-21</ShipDate>
</Item>
</Items>
</PurchaseOrder>
<PurchaseOrder PurchaseOrderNumber="99505" OrderDate="1999-10-22">
<Address Type="Shipping">
<Name>Cristian Osorio</Name>
<Street>456 Main Street</Street>
<City>Buffalo</City>
<State>NY</State>
<Zip>98112</Zip>
<Country>USA</Country>
</Address>
<Address Type="Billing">
<Name>Cristian Osorio</Name>
<Street>456 Main Street</Street>
<City>Buffalo</City>
<State>NY</State>
<Zip>98112</Zip>
<Country>USA</Country>
</Address>
<DeliveryNotes>Please notify me before shipping.</DeliveryNotes>
<Items>
<Item PartNumber="456-NM">
<ProductName>Power Supply</ProductName>
<Quantity>1</Quantity>
<USPrice>45.99</USPrice>
</Item>
</Items>
</PurchaseOrder>
<PurchaseOrder PurchaseOrderNumber="99504" OrderDate="1999-10-22">
<Address Type="Shipping">
<Name>Jessica Arnold</Name>
<Street>4055 Madison Ave</Street>
<City>Seattle</City>
<State>WA</State>
<Zip>98112</Zip>
<Country>USA</Country>
</Address>
<Address Type="Billing">
<Name>Jessica Arnold</Name>
<Street>4055 Madison Ave</Street>
<City>Buffalo</City>
<State>NY</State>
<Zip>98112</Zip>
<Country>USA</Country>
</Address>
<Items>
<Item PartNumber="898-AZ">
<ProductName>Computer Keyboard</ProductName>
<Quantity>1</Quantity>
<USPrice>29.99</USPrice>
</Item>
<Item PartNumber="898-AM">
<ProductName>Wireless Mouse</ProductName>
<Quantity>1</Quantity>
<USPrice>14.99</USPrice>
</Item>
</Items>
</PurchaseOrder>
</PurchaseOrders>
TradingPartner CSV Invoice Sample.csv
Invoice Number,Invoice Date,Due Date,Customer Code,Customer Reference,Line-Quantity,Line-Description,Line-Rate,Line-Charge Type,Line-Vat Amount,Line-Vat Rate
101,18/07/2011,28/07/2009,1,Customer 101 Invoice,2,Invoice line 1,2000,Sale of goods,0,0
102,18/07/2011,29/07/2009,1,Customer 102 Invoice,2,Invoice line 1,2000.01,Sale of goods,0,0
103,18/07/2011,30/07/2009,1,Customer 103 Invoice,2,Invoice line 1,2000.02,Sale of goods,0,0
104,18/07/2011,31/07/2009,1,Customer 104 Invoice,2,Invoice line 1,2000.03,Sale of goods,0,0
TradingPartner CSV Order Sample.csv
Order #,Order Date,Order Status,Subtotal Inc. Tax,Shipping $,Item Description,Item SKU,Item Unit Price,Item Qty,Item Weight (oz),Warehouse Loc/Bin No.,Shipping First Name,Shipping Last Name,Shipping Company Name,Shipping Address Line 1,Shipping Address Line 2,Shipping City,Shipping State,Shipping Zip Code,Shipping Country,Email,Phone,Customer Notes
1617,6/12/2013,unfulfilled,212.8,40,Fujitsu 500GB backup drive,FJ123,112.8,1,20,A1 S3,Jackie,Kelmier,,609 Castle Ridge,Suite 445,Austin,TX,78746,United States,jackie@gmail.com,5324445555,Please ship before next weekend as I go on vacation
1617,6/12/2013,unfulfilled,,,Keyboard,K999,35,1,13,A4 S9,,,,,,,,,,,,
1617,6/12/2013,unfulfilled,,,Computer Mouse,C345,25,1,12,B2 S3,,,,,,,,,,,,
1616,6/12/2013,pending,25,0,Computer Mouse,C345,25,1,12,B2 S3,Patricia,Field,Patty Jams,800 S Congress,,Austin,TX,78704,United States,patty@pattyjams.com,9796665555,
1615,6/12/2013,pending,25,0,Computer Mouse,C345,25,1,12,B2 S3,Fernando,Paulo,,3801 Wilson,,Austin,TX,78704,United States,paulof@gmail.com,5647775533,
1614,6/12/2013,unfulfilled,87.1,22.3,iPhone 4S cover. Blue,I098a,39.8,1,4,M2 S1,Gerry,Johns,,600 California,,San Francisco,CA,94108,United States,Gerry@example.com,8752223335,
1614,6/12/2013,unfulfilled,,,Computer Mouse,C345,25,2,12,B2 S3,,,,,,,,,,,,
1613,6/11/2013,unfulfilled,58,22.3,Keyboard,K999,35.7,1,13,A4 S9,Lars,Hector,Little Finds,513 Doheny,,Beverly Hills,CA,90210,United States,lars@lhector.com,7568884433,
- The
Customer AS2Specification.zip
contains the followings documents:
as2.babelway_legacy.crt
- AS2 certificateas2.babelway_legacy.p7b
- Bundled certificate & Certificate AuthorityAS2Specification.pdf
- AS2 Specificationroot.babelway_legacy.crt
- AS2 certificate chain
Project Scenarios
Scenario #1
In this scenario, we will be building a connection between a Trading Partner
and a Customer ERP system
. The Customer
will be sending Purchase Orders
to the Trading Partner
and then the Trading Partner
will return Invoices
to the Customer
.
The following information will help you complete this project scenario:
Trading Partner Information
Communication Protocol
: 'We prefer an FTP retrieval and delivery'
Message Format
: 'Our system processes CSV Import and Export. Sample files of CSV Orders and Invoices are attached.'
Customer ERP Information
Communication Protocol
: 'We exchange information via AS2. Our AS2 specifications and certificate are attached.'
Message Format
: 'Our system processes information via XML. Sample XML files are attached.'
Special Information
: 'We require a notification to our Accounts Receivable Department whenever a new invoice is received. The email address for this department is: AR@customer.com'
If you have any questions on the scenario, you may direct them to jeff.douglas@babelway.com
- We need to import the
Customer AS2
certificate.
- We need to put
Alias
iqual toLevel 1 Certification - Scenario 1 - AS2 Certificate
,Certificate Trusted Url
iqual tohttps://us1.babelway.net/corvus/httpd/as2/inbound
and choose theas2.babelway_legacy.p7b
Bundled certificate & Certificate Authority document.
Scenario 1 - Purchase Orders
- We need to create a new channel with
Name:
iqual toLevel 1 Certification - Scenario 1 - Purchase Orders
andDescription:
iqual toThis channel is used to set up the Purchase Orders process of the Level 1 Certification - Scenario 1.
- We need to set up the
Gateway IN
withAS2
protocol.
- We need to put
From:
value withBABELWAY_AS2_29329
and select forCertificate for verification
thebabelway as2 shared
one imported previously asLevel 1 Certification - Scenario 1 - AS2 Certificate
.
- We need to select
XML
for theMessage IN
message type:
- Choose the
Customer ERP Order Sample.xml
document forSample Xml
- Create loop for
PurchaseOrder
- Create loop for
Item
- Delete the second
Item
- We need to set up the
Gateway OUT
withFTP Client
protocol.
- We need to put
ftp.tradingpartner.com
forServer
,Customer
forUsername
,Password
forPassword
and/Orders
forDirectory
.
- We need to select
CSV
for theMessage OUT
message type:
- Select the
TradingPartner CSV Order Sample.csv
file forSample file (text)
Create the
mapping
PurchaseOrder Loop
-->line loop
PurchaseOrderNumber
-->Order #
OrderDate
-->Order Date header
PartNumber
-->Item SKU
ProductName
-->Item Description
Quantity
-->Item Qty
USPrice
-->Item Unit Price
Comment
-->Customer Notes
item Loop
-->line loop
Address 1 - substring-before(Name, ' ')
-->Shipping First Name
Address 1 - substring-after(Name, ' ')
-->Shipping Last Name
Address 1 - Street
-->Shipping Address Line 1
Address 1 - City
-->Shipping City
Address 1 - State
-->Shipping State
Address 1 - Zip
-->Shipping Zip Code
Address 1 - Country
-->Shipping Country
DeliveryNotes
-->Shipping Address Line 2
Create a Test Case for
Simple Order
Put
Simple Order
inName
and chooseCustomer ERP Order Sample.xml
forMessage in
- Run the
Simple Order
test case.
TestMessageSimpleOrder.csv
Order #,Order Date,Order Status,Subtotal Inc. Tax,Shipping $,Item Description,Item SKU,Item Unit Price,Item Qty,Item Weight (oz),Warehouse Loc/Bin No.,Shipping First Name,Shipping Last Name,Shipping Company Name,Shipping Address Line 1,Shipping Address Line 2,Shipping City,Shipping State,Shipping Zip Code,Shipping Country,Email,Phone,Customer Notes
99503,1999-10-20,,,,Lawnmower,872-AA,148.95,1,,,Ellen,Adams,,123 Maple Street,Please leave packages in shed by driveway.,Mill Valley,CA,10999,USA,,,Confirm this is electric
99503,1999-10-20,,,,Baby Monitor,926-AA,39.98,2,,,Ellen,Adams,,123 Maple Street,Please leave packages in shed by driveway.,Mill Valley,CA,10999,USA,,,
Create a Test Case for
Multiple Order
Put
Multiple Order
inName
and chooseCustomer ERP Order Sample_Multiple Orders.xml
forMessage in
- Run the
Multiple Order
Test Case
TestMessageMultipleOrder.csv
Order #,Order Date,Order Status,Subtotal Inc. Tax,Shipping $,Item Description,Item SKU,Item Unit Price,Item Qty,Item Weight (oz),Warehouse Loc/Bin No.,Shipping First Name,Shipping Last Name,Shipping Company Name,Shipping Address Line 1,Shipping Address Line 2,Shipping City,Shipping State,Shipping Zip Code,Shipping Country,Email,Phone,Customer Notes
99503,1999-10-20,,,,Lawnmower,872-AA,148.95,1,,,Ellen,Adams,,123 Maple Street,Please leave packages in shed by driveway.,Mill Valley,CA,10999,USA,,,Confirm this is electric
99503,1999-10-20,,,,Baby Monitor,926-AA,39.98,2,,,Ellen,Adams,,123 Maple Street,Please leave packages in shed by driveway.,Mill Valley,CA,10999,USA,,,
99505,1999-10-22,,,,Power Supply,456-NM,45.99,1,,,Cristian,Osorio,,456 Main Street,Please notify me before shipping.,Buffalo,NY,98112,USA,,,
99504,1999-10-22,,,,Computer Keyboard,898-AZ,29.99,1,,,Jessica,Arnold,,4055 Madison Ave,,Seattle,WA,98112,USA,,,
99504,1999-10-22,,,,Wireless Mouse,898-AM,14.99,1,,,Jessica,Arnold,,4055 Madison Ave,,Seattle,WA,98112,USA,,,
Scenario 1 - Invoices
- We need to create a new channel with
Name:
iqual toLevel 1 Certification - Scenario 1 - Invoices
andDescription:
iqual toThis channel is used to set up the Invoices process of the Level 1 Certification - Scenario 1.
- We need to set up the
Gateway IN
withFTP Client
protocol.
- We need to put
ftp.tradingpartner.com
forServer
,Customer
forUsername
,Password
forPassword
and/Invoices
forDirectory
.
- We need to select
CSV Type
forMessage IN
- Choose
TradingPartner CSV Invoice Sample.csv
forSample file (text)
- We need to select
XML Type
forMessage OUT
- Select
Customer ERP Invoice Sample.xml
forSample Xml
- Create
Loop
forinvoiceDetail
- We need to select
AS2
forGateway OUT
- We need to put
To:
value withBABELWAY_AS2_29329
,https://us1.babelway.net/corvus/httpd/as2/inbound
forRecipient address
and select forCertificate for verification
thebabelway as2 shared
one imported previously asLevel 1 Certification - Scenario 1 - AS2 Certificate
.
Create the
mapping
Loop
-->invoice loop
Invoice Number
-->invoiceNumber
Invoice Date
-->invoiceDate
Customer Code
-->SupplierNumber
Customer Reference
-->poNumber
Loop
-invoiceDetail
Line-Quantity
-->quantity
concat(Line-Description, ' ', Line-Charge Type)
-->description
Line-Rate
-->uniPrice
- Create a Test Case for
Invoice
- Put
Invoice
inName
and chooseTradingPartner CSV Invoice Sample.csv
forMessage in
- Run the
Invoice
test case.
testMessageInvoice.xml
<?xml version="1.0" encoding="UTF-8"?>
<request>
<invoice>
<invoiceHeader>
<invoiceNumber>101</invoiceNumber>
<invoiceDate>18/07/2011</invoiceDate>
<poNumber>Customer 101 Invoice</poNumber>
<supplierNumber>1</supplierNumber>
</invoiceHeader>
<invoiceDetail>
<lineItem>
<quantity>2</quantity>
<unitPrice>2000</unitPrice>
<description>Invoice line 1 Sale of goods</description>
</lineItem>
</invoiceDetail>
</invoice>
<invoice>
<invoiceHeader>
<invoiceNumber>102</invoiceNumber>
<invoiceDate>18/07/2011</invoiceDate>
<poNumber>Customer 102 Invoice</poNumber>
<supplierNumber>1</supplierNumber>
</invoiceHeader>
<invoiceDetail>
<lineItem>
<quantity>2</quantity>
<unitPrice>2000</unitPrice>
<description>Invoice line 1 Sale of goods</description>
</lineItem>
</invoiceDetail>
</invoice>
<invoice>
<invoiceHeader>
<invoiceNumber>103</invoiceNumber>
<invoiceDate>18/07/2011</invoiceDate>
<poNumber>Customer 103 Invoice</poNumber>
<supplierNumber>1</supplierNumber>
</invoiceHeader>
<invoiceDetail>
<lineItem>
<quantity>2</quantity>
<unitPrice>2000</unitPrice>
<description>Invoice line 1 Sale of goods</description>
</lineItem>
</invoiceDetail>
</invoice>
<invoice>
<invoiceHeader>
<invoiceNumber>104</invoiceNumber>
<invoiceDate>18/07/2011</invoiceDate>
<poNumber>Customer 104 Invoice</poNumber>
<supplierNumber>1</supplierNumber>
</invoiceHeader>
<invoiceDetail>
<lineItem>
<quantity>2</quantity>
<unitPrice>2000</unitPrice>
<description>Invoice line 1 Sale of goods</description>
</lineItem>
</invoiceDetail>
</invoice>
</request>
- We need to create a new notification
- Put
Received Invoice
for theName
, check[X] Success
and putAR@customer.com
forAdditional emails
.
Scenario #2
In this scenario, we will be updating a CRM
with contact information
from inbound requests
for new contacts
. This will be made available to all users in a company who will email a CSV template to update the CRM.
The following information provides details to complete the project:
- All employees must be able to communicate the new contact request via email
- A CSV template must be created for employees to use when creating a new contact
- The CRM system handles contact import via an XML file. A sample import is attached.
- The CRM system will pull XML imports from an FTP server.
- Upon successful import, the CRM admin team would like to receive a notification of the successful import. Their email is admin@customer.com.
If you have any questions about this scenario, you can contact jeff.douglas@babelway.com
Scenario 2 - CRM
- We need to create a new channel with
Name:
iqual toLevel 1 Certification - Scenario 2 - CRM
andDescription:
iqual toThis channel is used to set up the CRM process of the Level 1 Certification - Scenario 2.
- We need to set up the
Gateway IN
withEmail
protocol.
- We need to fill in
Email Address:
value withLevel1CertificationScenario2Crm
.
- Create a new Template CSV Template using Excel
- Save as
CSV
withCRM Template
Name
- We need to select
CSV
for theMessage IN
message type:
- Choose the
CRM Template.csv
document forSample file (text)
- We need to select
XLM
for theMessage OUT
message type:
- Choose
Contact Import XML Sample.xml
forSample XML
- We need to set up the
Gateway OUT
withFTP Client
protocol.
- We need to put
ftp.company.com
forServer
,Company
forUsername
,Password
forPassword
and/Crm
forDirectory
.
Create the
mapping
Loop
-->contacImport
Is New Contact
-->newContact
Account Owner
-->accountOwner
Creation Date
-->creationDate
Name
-->name
Company
-->company
Title
-->title
Language
-->language
Country
-->country
Phone
-->phone
Email
-->email
- Create a Test Case for
CRM
- Put
CRM
inName
and chooseCRM Template.csv
forMessage in
- Run the
CRM
test case.
testMessageCRM.xml
<?xml version="1.0" encoding="UTF-8"?>
<request>
<contactImport>
<systemInformation>
<newContact>Y</newContact>
<accountOwner>John Doe</accountOwner>
<creationDate>29/01/2016</creationDate>
</systemInformation>
<personalInformation>
<name>Jill Smith</name>
<company>ABC Co.</company>
<title>Project Manager</title>
<language>EN</language>
<country>US</country>
<phone>555-552-9143</phone>
<email>jill.smith@abcco.com</email>
</personalInformation>
</contactImport>
</request>
- We need to create a new notification
- Put
CRM Template Received
for theName
, check[X] Success
and putadmin@customer.com
forAdditional emails
.
Certification Submission
Submit for Review
When you are done building both scenarios, complete the attached certification submission form.
Fill out the information and submit the form to: info@babelway.com
Include in the subject line of the submission 'BabelAcademy Level 1 Certification'