Table of Contents | ||
---|---|---|
|
- Onetrail TPN™ Seller PDE: Product
...
- Data Delivery
- Introduction
Onetrail TPN™ connected Sellers can upload their Product Data using
three CSV formatted files: Generic Product, Generic Stock and Customer
Price file. The combination of these three files enables Onetrail to
generate and deliver the required output files to your customers
(hereinafter called Customer or Customers) containing those products
that you want to make available to them (where you have indicated a
Customer specific price) as well as to correctly send changes and
related product stock availability.
Remark: Stock files may be processed on an hourly basis if possible.
- Process
- Choreography
!Onetrail\_PRD\_ChoreografieV2.jpg(Onetrail_PRD_ChoreografieV2.jpg
"Onetrail_PRD_ChoreografieV2.jpg")
Onetrail requires three file types:
- Product file
This file should contain ALL products that you want to make available
through Onetrail TPN™ to your customers. The file is to be delivered on
a daily basis as early as possible but no later than 4:00am.
Onetrail usage: Based on this file Onetrail updates the Onetrail TPN™
Product Data Management (PDM) database that contains all products from
all suppliers with a unique reference to the vendor part number.
Onetrail matches your new products with the unique vendor part number
within Onetrail TPN™ PDM, applies changes or deletions and adds a unique
classification based on the UNSPSC standard. Apart from this, brands are
mapped to a uniform brand code. The stock information in this file is
used to perform a daily update of the stock position within Onetrail
TPN™ PDM. This will consequently be updated with the (hourly) Generic
Stock file.
Remarks:
- All price information in this file is ignored
- Empty fields are not allowed
- A full file is expected every time
- Stock file
This file should contain ALL products with accurate stock availability
that you want to make available through Onetrail TPN™ to your Customers.
This file is to be delivered on an hourly basis.
Onetrail usage: Onetrail processes this file to update stock
availability for your products in Onetrail TPN™ PDM. Onetrail generates
an output of stock information to the (ERP) system of the Customer. This
information is used as an indication when selling/buying products.
Remarks:
- Apart from the (hourly) stock updates Onetrail allows Customers to
perform a Real time Price and Availability check from within their
(ERP) system which results in a real-time request to your
environment (if available). It is common practice for Onetrail TPN™
connected Customers to perform such checks before sending a purchase
order so errors can be avoided.
- Customer Price file
Onetrail expects a separate Customer Price file per Customer you wish to
trade with through Onetrail TPN™. This file is to be delivered on a
daily basis as early as possible but no later than 4:00am. This file
should contain the products with their net prices to be made available
to a specific Customer.
Onetrail usage: Onetrail processes this file, combines it with the
product data available within PDM data, and delivers the output to the
Customer’s (ERP) system.
Customer files may contain only the changes or be send as a full file
with prices only for those products available to the specific Customer.
Products without a price (empty price field) will not be delivered to
the Customer, a “0” (zero) price is regarded an actual amount.
Remarks:
- For support and demo purposes Onetrail requires one additional
Customers file for Onetrail itself (Onetrail account). This file
normally contains all products with default prices (i.e. highest
price).
- Delivery Schedule
Please set up a schedule and inform Onetrail when your files will be
delivered to the Onetrail FTP server. Below you will find examples of
the schedules Onetrail requires. Keep in mind that Onetrail needs to
process and subsequently deliver the files to the Customers system
before start of business (8:00am). Therefore Onetrail requires the files
no later than 4:00am. The Generic Stock file may obviously be delivered
every hour during business hours.
- Example delivery schedules
*Generic Product File:*
Always a full file with all products.
Day | Frequency / Time | Remarks |
:--- | :------------------------------- | :------------------------------------ |
SUN: | Once a day / 2.00am | |
MON: | Once a day / 2.00am | |
TUE: | Once a day / 2.00am | |
WED: | Once a day / 2.00am | |
THU: | Once a day / 2.00am | |
FRI: | Once a day / 2.00am | |
SAT: | No file (* Once a day / 2.00am) | * Only if Saturday is a business day |
*Generic Stock File:*
Always a full file with all products.
Day | Frequency / Time | Remarks |
:--- | :------------------------------ | :------ |
SUN: | No file | |
MON: | Hourly between 08.30am – 6.00pm | |
TUE: | Hourly between 08.30am – 6.00pm | |
WED: | Hourly between 08.30am – 6.00pm | |
THU: | Hourly between 08.30am – 6.00pm | |
FRI: | Hourly between 08.30am – 6.00pm | |
SAT: | Hourly between 08.30am – 6.00pm |
*Customer Price File:*
Day | Frequency / Time | Remarks | Full/mutation |
:--- | :------------------------------- | :------- | :------------------------------------ |
SUN: | Once a day / 2.00am | Full | |
MON: | Once a day / 2.00am | Mutation | |
TUE: | Once a day / 2.00am | Mutation | |
WED: | Once a day / 2.00am | Mutation | |
THU: | Once a day / 2.00am | Mutation | |
FRI: | Once a day / 2.00am | Mutation | |
SAT: | No file (* Once a day / 2.00am) | Mutation | * Only if Saturday is a business day |
- Syntax
The table below shows an overview of the field definitions per file type
(Product, Stock, (Customer Price) and their status (Mandatory (M),
Optional (O) or Not Applicable (N/A)).
<table>
<thead>
<tr class="header">
<th style="text-align: left;"><p>Fieldname</p></th>
<th style="text-align: left;"><p>Description</p></th>
<th style="text-align: left;"><p>Product</p></th>
<th style="text-align: left;"><p>Stock</p></th>
<th style="text-align: left;"><p>Price</p></th>
<th style="text-align: left;"><p>Example</p></th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td style="text-align: left;"><p>Stock Keeping Unit (SKU)</p></td>
<td style="text-align: left;"><p>Supplier (your) Product Number</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>78GK3LL12</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Price</p></td>
<td style="text-align: left;"><p>Net Purchase Price, excl. VAT</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>650,00</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Currency</p></td>
<td style="text-align: left;"><p>ISO Code EUR / USD / GBP etc.</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>M*</p></td>
<td style="text-align: left;"><p>EUR</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Special Price</p></td>
<td style="text-align: left;"><p>Net Purchase Price, excl. VAT (i.e. Promotional price)</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>625,38</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Manufacturer Product Identifier</p></td>
<td style="text-align: left;"><p>Vendor Product Number</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>C4151A</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Brand</p></td>
<td style="text-align: left;"><p>Brand name or Code</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>HP or 654</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Stock</p></td>
<td style="text-align: left;"><p>Stock Position</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>54</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Product EAN (GTIN)</p></td>
<td style="text-align: left;"><p>EAN Product Number (GTIN)</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>8714123456789</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Short Description</p></td>
<td style="text-align: left;"><p>Short Description of the Product</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>Wonderful product</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Long Description</p></td>
<td style="text-align: left;"><p>Long Description of the Product</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>This is the most wonderful product there is.</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Classification (i.e.UNSPSC)</p></td>
<td style="text-align: left;"><p>Product group (Text or Code)</p></td>
<td style="text-align: left;"><p>M</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>i.e. “Server” or “45AW5”</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>VAT</p></td>
<td style="text-align: left;"><p>Tax Level of the Product i.e. High, Low, Null</p></td>
<td style="text-align: left;"><p>M*</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>High</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Status</p></td>
<td style="text-align: left;"><p>New, Modify, Delete, Equal</p></td>
<td style="text-align: left;"><p>O*</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>O*</p></td>
<td style="text-align: left;"><p>N</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Key Assortment</p></td>
<td style="text-align: left;"><p>Code Representing Deliverability of the Products within the Key Assortment</p>
<p>i.e. A= Within 24hrs., B= 48hrs etc.</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>B</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Signal Code</p></td>
<td style="text-align: left;"><p>Code Representing delivery time of Stock Position i.e. 48h</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>48h</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>On Order</p></td>
<td style="text-align: left;"><p>Number of Units on Order at Vendor</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A<br />
</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>500</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Data Available On Order Stock</p></td>
<td style="text-align: left;"><p>Excepted Availability Date Ordered Units at Vendor</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>20071231</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Recommend Price</p></td>
<td style="text-align: left;"><p>i.e. Gross Price</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>874,00</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>URL</p></td>
<td style="text-align: left;"><p>URL to Product and/or Picture on Website</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>http://www.seller.com/picture.jpg</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Serial Keeping</p></td>
<td style="text-align: left;"><p>Product Serial Numbers will be Scanned Yes/No</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>Y</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>Intrastat number</p></td>
<td style="text-align: left;"><p>Intrastat Reference Number</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>12244</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>UOM</p></td>
<td style="text-align: left;"><p>Unit Of Measurement Code i.e. Piece, Blister</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>Blister</p></td>
</tr>
<tr class="odd">
<td style="text-align: left;"><p>UOM Quantity</p></td>
<td style="text-align: left;"><p>Unit Of Measurement Quantity, Number of Units in UOM</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>12</p></td>
</tr>
<tr class="even">
<td style="text-align: left;"><p>Minimum Order Quantity</p></td>
<td style="text-align: left;"><p>i.e. 1, 5, 12</p></td>
<td style="text-align: left;"><p>O</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>N/A</p></td>
<td style="text-align: left;"><p>1</p></td>
</tr>
</tbody>
</table>
- Price – "Currency" field: The Currency field is not necessarily
mandatory if Currency is well communicated by the Seller. For
example, if the Currency is Euro only, Onetrail can set Euro as a
default value. - Product and Price – "Status" field: In most cases Onetrail
determines the status. The status needs to be delivered when Sellers
also deliver mutation files to Onetrail TPN™. - Product File – "VAT" field: The VAT field is necessarily mandatory
if VAT is i.e. always HIGH, then Onetrail can set VAT as a default
value.
- Format
The format for the three files is Comma Separated Values. Onetrail's
definition of CSV: Each record is put on 1 line with a CR/LF or LF as
line separator. Each field is separated by a separator. This separator
cannot be used inside the data, therefor Onetrail suggests to use "|" as
a separator.
- Communication
All files can be stored on the Onetrail FTP server. To enable
connectivity to the Onetrail FTP server, Onetrail requires your external
“STATIC” IP address. Onetrail will provide you the necessary login
settings.
- FTP server
Please refer to FTP Server(FTP "wikilink") for
more details.
- File naming convention
File Type | File Name | Example |
:-------- | :--------------------------------------- | :------------------------------------- |
Product | <Seller name>.8714253023809.product.csv | test_seller.8714253023809.product.csv |
Stock | <Seller name>.8714253023809.stock.csv | test_seller.8714253023809.stock.csv |
Price | <Seller name>.<Buyer GLN Code>.price.csv | test_seller.8714231442455.price.csv |
- Replace “<Seller name>” with either
:*your company name (abbreviated)
or
:*the GLN address code of your company (If you don’t already have GLN
address codes, Onetrail will assign GLN address codes to your Company).
- Replace “\<Buyer GLN Code\>” with the GLN code of that specific
Customer. This code is supplied to you by Onetrail.
<!-- end list -->
- The Customer Price file name for Onetrail support and demo purposes
will be for example: test_seller.8714231442455.price.csv where
“8714231442455” is the Onetrail specific Customer GLN address
code.
=Onetrail TPN™ Seller PDE: Stock Data Delivery=
==Introduction==
In Onetrail TPN™ it is possible to deliver stock data. In this section you will find information about the Stock Data Delivery process.
==Stock file==
This file should contain ALL products with accurate stock availability that you want to make available through Onetrail TPN™ to your Customers. This file is to be delivered on an hourly basis.
Onetrail usage: Onetrail processes this file to update stock availability for your products in Onetrail TPN™ PDM. Onetrail generates an output of stock information to the (ERP) system of the Customer. This information is used as an indication when selling/buying products.
''Remarks:''
- Apart from the (hourly) stock updates Onetrail allows Customers to perform a Real time Price and Availability check from within their (ERP) system which results in a real-time request to your environment (if available). It is common practice for Onetrail TPN™ connected Customers to perform such checks before sending a purchase order so errors can be avoided.