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.zipcontains 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 AS2certificate.

- We need to put
Aliasiqual toLevel 1 Certification - Scenario 1 - AS2 Certificate,Certificate Trusted Urliqual tohttps://us1.babelway.net/corvus/httpd/as2/inboundand choose theas2.babelway_legacy.p7bBundled certificate & Certificate Authority document.


Scenario 1 - Purchase Orders
- We need to create a new channel with
Name:iqual toLevel 1 Certification - Scenario 1 - Purchase OrdersandDescription: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 INwithAS2protocol.

- We need to put
From:value withBABELWAY_AS2_29329and select forCertificate for verificationthebabelway as2 sharedone imported previously asLevel 1 Certification - Scenario 1 - AS2 Certificate.

- We need to select
XMLfor theMessage INmessage type:

- Choose the
Customer ERP Order Sample.xmldocument forSample Xml


- Create loop for
PurchaseOrder


- Create loop for
Item


- Delete the second
Item


- We need to set up the
Gateway OUTwithFTP Clientprotocol.

- We need to put
ftp.tradingpartner.comforServer,CustomerforUsername,PasswordforPasswordand/OrdersforDirectory.


- We need to select
CSVfor theMessage OUTmessage type:

- Select the
TradingPartner CSV Order Sample.csvfile forSample file (text)


Create the
mappingPurchaseOrder 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 2Create a Test Case for
Simple OrderPut
Simple OrderinNameand chooseCustomer ERP Order Sample.xmlforMessage in

- Run the
Simple Ordertest 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 OrderPut
Multiple OrderinNameand chooseCustomer ERP Order Sample_Multiple Orders.xmlforMessage in

- Run the
Multiple OrderTest 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 - InvoicesandDescription: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 INwithFTP Clientprotocol.

- We need to put
ftp.tradingpartner.comforServer,CustomerforUsername,PasswordforPasswordand/InvoicesforDirectory.

- We need to select
CSV TypeforMessage IN

- Choose
TradingPartner CSV Invoice Sample.csvforSample file (text)


- We need to select
XML TypeforMessage OUT


- Select
Customer ERP Invoice Sample.xmlforSample Xml

- Create
LoopforinvoiceDetail

- We need to select
AS2forGateway OUT

- We need to put
To:value withBABELWAY_AS2_29329,https://us1.babelway.net/corvus/httpd/as2/inboundforRecipient addressand select forCertificate for verificationthebabelway as2 sharedone imported previously asLevel 1 Certification - Scenario 1 - AS2 Certificate.


Create the
mappingLoop-->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
InvoiceinNameand chooseTradingPartner CSV Invoice Sample.csvforMessage in

- Run the
Invoicetest 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 Invoicefor theName, check[X] Successand putAR@customer.comforAdditional 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 - CRMandDescription: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 INwithEmailprotocol.

- We need to fill in
Email Address:value withLevel1CertificationScenario2Crm.


- Create a new Template CSV Template using Excel


- Save as
CSVwithCRM TemplateName

- We need to select
CSVfor theMessage INmessage type:

- Choose the
CRM Template.csvdocument forSample file (text)


- We need to select
XLMfor theMessage OUTmessage type:


- Choose
Contact Import XML Sample.xmlforSample XML


- We need to set up the
Gateway OUTwithFTP Clientprotocol.

- We need to put
ftp.company.comforServer,CompanyforUsername,PasswordforPasswordand/CrmforDirectory.


Create the
mappingLoop-->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
CRMinNameand chooseCRM Template.csvforMessage in

- Run the
CRMtest 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 Receivedfor theName, check[X] Successand putadmin@customer.comforAdditional 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'


