0% found this document useful (0 votes)
148 views15 pages

B2B Exiros - Supplier - Technical Doc CXML - v1

B2b de integración para redes de empresas que se comunican y venden entre ellos

Uploaded by

rodrmora79
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
148 views15 pages

B2B Exiros - Supplier - Technical Doc CXML - v1

B2b de integración para redes de empresas que se comunican y venden entre ellos

Uploaded by

rodrmora79
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 15

Electronic Integration B2B

Technical Documentation

Date: 6-Apr-2021
Version: 1.0
Status: Final
Technical Documentatio
Electronic Integration B2B

Version History

Versio
Date Description Author
n
Federico
5/4/2021 1.0 Final version
Chanes

Candelaria
7/6/2023 1.1 updated
Quiroga
Technical Documentatio
Electronic Integration B2B

Content
1 INTRO................................................................................................................................ 4

2 CONTACT DATA............................................................................................................. 4

3 ELECTRONIC DOCUMENTS TO BE INTERCHANGED............................................5

4 PDF DOCUMENT VS CXML FILE................................................................................. 5

5 PUNCH-OUT PO VS CODED SPOT PO.......................................................................6


5.1 PUNCH-OUT PO.........................................................................................................................................6
5.2 CODED SPOT PO.......................................................................................................................................6

6 .CXML EXAMPLE WITH ELEMENTS EXPLANATION............................................7

7 SERVICE STATUS RESPONSE...................................................................................11


Technical Documentation
Electronic Integration B2B

1 Intro
Exiros has a solution to enable electronic integration between our customers, Tenaris and
Ternium, platform and suppliers' infrastructure. This solution enables us to interact Business
Objects regarding to Purchasing process (mainly Purchase Orders)

The objective of this document is to have a brief review of the documents to be interchanged and
their components. For more information you should check the reference guide (link below).

Reference Guide:
http://xml.cxml.org/current/cXMLReferenceGuide.pdf.
The purchase order is sending by using the OrderRequest message (page 107).
As response of the OrderRequest message, you have to send the cXML standard response (page 32).
You can download the cXML DTD fron: http://xml.cxml.org/current/cXML_DTDs.zip

(OrderRequest message structure is into the cxml.dtd.)

-This guide must be used to validate the DTD of the cXML document

11 Jul. 24 4|15
Technical Documentation
Electronic Integration B2B

2 PDF Document vs cXML file


2.1 Release/Spot PO

2.2 Punch-out PO

11 Jul. 24 5|15
Technical Documentation
Electronic Integration B2B

2.3 Extrinsic elements


In both types of PO there is an important set of extrinsic elements in the orderRequestHeader:

“Holding” holding that emitted the PO


“PunchOut” value to specify if it is a Punch-out Po or not
“Incoterm” gives information about the incoterm
3 Punch-out PO vs Coded spot PO
For both types of PO the mapping is similar, however there are some key differences. The main
one is that in punch-out there is a supplier id specified, in release/spot PO the buyer has his own
“BuyerPartID”.

3.1 Punch-out PO

For punch-out PO’s, there is an extrinsic value, named “PunchOut” that is set to TRUE. And there
is an element called “SupplierPartID” that specifies how the supplier identifies an item.

11 Jul. 24 6|15
Technical Documentation
Electronic Integration B2B

3.2 Release/Spot PO

For release/spot PO’s, there is an extrinsic value, named “PunchOut” that is set to FALSE. And
there is an element called “BuyerPartID” that represents an item in buyer system

4 .cXML example with elements explanation

<OrderRequest>
<OrderRequestHeader orderID="3702341576" orderDate="2021-04-01T00:00:00-03:00" type="new"
agreementID="6700271441" orderType="release" orderVersion="1" agreementPayloadID="NA">
<Total>
<Money currency="MXN">228.57</Money>
</Total>
<BillTo>
<Address isoCountryCode="MX" addressID="TM01">
<Name xml:lang="ES"><![CDATA[TERNIUM MEXICO SA DE CV]]></Name>
<PostalAddress name="TERNIUM MEXICO SA DE CV">
<Street><![CDATA[AV UNIVERSIDAD 992]]></Street>
<City><![CDATA[San Nicolás de los Garza]]></City>
<State><![CDATA[NL]]></State>
<PostalCode>66450</PostalCode>
<Country isoCountryCode="MX"/>
</PostalAddress>
</Address>

11 Jul. 24 7|15
Technical Documentation
Electronic Integration B2B

</BillTo>
<LegalEntity>
<IdReference identifier="TM01" domain="CompanyCode">
<Description xml:lang="ES">
<ShortName><![CDATA[TERNIUM MEXICO SA DE CV]]></ShortName>
</Description>
</IdReference>
</LegalEntity>
<PaymentTerm payInNumberOfDays="NR45"/>
<Contact role="buyer">
<Name xml:lang="ES"><![CDATA[MARISOL MALDONADO]]></Name>
<Email name="default"><![CDATA[MMALDONADO@tenaris.com]]></Email>
</Contact>
<Comments xml:lang="ES"/>
<Extrinsic name="Holding"><![CDATA[SAPTER]]></Extrinsic>
<Extrinsic name="PunchOut"><![CDATA[false]]></Extrinsic>
<Extrinsic name="Incoterm"><![CDATA[UN]]></Extrinsic>
<Extrinsic name="Incoterm2"><![CDATA[PLANTA SOLICITANTE]]></Extrinsic>
</OrderRequestHeader>
<ItemOut quantity="57" lineNumber="00001" agreementItemNumber="00036" requestedDeliveryDate="2021-
04-16T00:00:00-03:00">
<ItemID>
<SupplierPartID>71031617</SupplierPartID>
<BuyerPartID>71031617</BuyerPartID>
</ItemID>
<ItemDetail>
<UnitPrice>
<Money currency="MXN">4.01</Money>
</UnitPrice>
<Description xml:lang="ES">
<ShortName><![CDATA[COPLE NEGRO 1/2" 150 LBS. ROSCADO.]]></ShortName>
</Description>
<UnitOfMeasure>PC</UnitOfMeasure>
<Classification domain="MaterialGroup">MHID190</Classification>
<ManufacturerName xml:lang="ES"/>
</ItemDetail>
<SupplierID domain="TaxID">TVI840724-GSA</SupplierID>
<ShipTo>
<Address isoCountryCode="MX" addressID="HP01">
<Name xml:lang="ES"><![CDATA[TERNIUM MEXICO, S.A. DE C.V. - Planta Largos Puebla]]></Name>
<PostalAddress name="P001">
<DeliverTo><![CDATA[TERNIUM MEXICO, S.A. DE C.V.]]></DeliverTo>
<DeliverTo><![CDATA[STORE: P001 - Central]]></DeliverTo>
<Street><![CDATA[Autopista México-Puebla Km.108]]></Street>
<City><![CDATA[San Miguel Xoxtla]]></City>
<State><![CDATA[PUE]]></State>
<PostalCode>72620</PostalCode>
<Country isoCountryCode="MX"/>
</PostalAddress>
<Email/>
<Phone name="default">
<TelephoneNumber>
<CountryCode isoCountryCode="MX"/>
<AreaOrCityCode/>
<Number>222 3723600</Number>
</TelephoneNumber>
</Phone>

11 Jul. 24 8|15
Technical Documentation
Electronic Integration B2B

</Address>
</ShipTo>
<Contact role="requester">
<Name xml:lang="ES"/>
<PostalAddress name="HP01">
<Street><![CDATA[Autopista México-Puebla Km.108]]></Street>
<City><![CDATA[San Miguel Xoxtla]]></City>
<State><![CDATA[PUE]]></State>
<PostalCode>72620</PostalCode>
<Country isoCountryCode="MX"/>
</PostalAddress>
<IdReference identifier="NA" domain="Recipient"/>
</Contact>
<Comments xml:lang="ES"><![CDATA[Cupla; TIPO: ROSCADA; DIAMETRO NOMINAL: 1/2 "; DIAMETRO NOMINAL
ROSCA: 1/2 "; TIPO DE ROSCA: NPT 1/2 " - 14; PRESION MAXIMA DE TRABAJO: 150 psi; MATERIAL: ASTM A197;
DIMENSIONES S/NORMA: ANSI B16.3; NORMA/ESPECIFICACION/DIBUJO: N/A ]]></Comments>
<MasterAgreementIDInfo agreementID="6700271441"/>
</ItemOut>
</OrderRequest>
</Request></cXML>

Attribute Description

orderID (required) The identifier for this order. Analogous to the


purchase order number.

orderDate (required) The date and time this order was placed, in ISO
8601 format.

type The type of the requisition request. Possible values:


● new (default) ● update ● delete

agreementID Used only if orderType is release to indicate the


buyer’s identifier for associated master agreement
or blanket purchase order.

orderType Type of order. Possible values: Regular (spot


order): Regular purchase order. Release—Release
against an existing master agreement, contract, or
a blanket purchase order.

orderVersion Specifies the order version number of change


orders, starting with “1” for the original order.

agreementPayloadID Used only if orderType is release to indicate the


cXML document payload ID for the associated
master agreement or blanket purchase order.

Total Contains the total cost for the items in the order,
excluding any tax and shipping

currency Attribute, must be a three-letter ISO 4217 currency


code

BillTo BillTo address for the order

11 Jul. 24 9|15
Technical Documentation
Electronic Integration B2B

isoCountryCode The ISO 3166 2-letter country code for the country
containing this location.

addressID Item used to specify the code of the shipto address

Name The Name element is for localized display purposes,


allowing different names to be provided per locale.

State Contains the state or country subdivision identifier

LegalEntity Identifies legal entity that emits the PO in the


external system. For example, issued by DS1 –
Siderca

IdReference Defines an ID reference. The identifier/domain pair


should be unique within each trading partner
relationship (a buying organization and a
supplier).

identifier (required) The unique identifier of the IdReference within the


domain.

Description (required) Describes the item in a textual form.

PaymentTerm Defines the payment term in orders and invoices

Information to follow up on an order. This element


identifies a person and provides a list of ways to
reach that person or entity. The only required
Contact element is the Name of the contact.
The petitioner information is sent, in a structured
format, in the DeliverTo elements.
<Contact role="requester">

Comments Contains comments associated with this object. The


long description of the material is sent

Extrinsic Contains any additional information related to the


order

ItemOut Describes the individual items (in ItemID,


ItemDetail, SpendDetail, and Distribution).

The number of items desired. Fractions are allowed


for some units of measure. The value might have
quantity (required)
already been checked by the supplier during a
PunchOut session. This value should never be
negative.

Position of the item within an order. This ordinal


value increases once per ItemOut in a “new”
lineNumber
OrderRequest. Clients should always specify this
attribute in an OrderRequest, although it might not
be useful in other ItemOut contexts.

11 Jul. 24 10|15
Technical Documentation
Electronic Integration B2B

agreementItemNumber The buyer’s master agreement identifier for the line


item

requestedDeliveryDate The date item was requested for delivery, which


allows item-level delivery dates in the
OrderRequest. It must be in ISO 8601 format.

ItemID Provides unique identification of an item

SupplierPartID (required) SupplierPartID is how the supplier identifies an


item. It is only specified for punch-out PO. For
release/spot PO, it is not used

If SupplierPartID does not uniquely identify the


item, the supplier should use
SupplierPartAuxiliaryID
SupplierPartAuxiliaryID to specify an “auxiliary”
key that identifies the part uniquely when
combined with the SupplierID and SupplierPartID.

BuyerPartID How the buyer/client identifies an item (non-


catalog item)

ItemDetail contains descriptive information about a line item


that procurement applications present to users

UnitPrice Price per unit of the item.

UnitOfMeasure The line item's unit of measure

SupplierID ID of the supplier

ShipTo address for the order. The ShipTo address


can also appear at the item level. On default
ShipTo
configuration we use it as an item, but if required,
we can send it as a header

DeliverTo Element used to specify the name of the person to


receive the goods, their location (building, city,
office, mailstop).

CountryCode Contains the International ITU dial code for the


country code

MasterAgreementIDInfo MasterAgreementIDInfo contains the ID of the


master agreement from which the release is
derived.

11 Jul. 24 11|15
Technical Documentation
Electronic Integration B2B

5 Service Status Response


5.1 Response

This transaction determines whether a particular service is currently available. When an HTTP
GET is sent to a service location, the service responds with a valid, dynamically generated cXML
Response document. A service can be any HTTP URL at which cXML Request documents are
received.
For example, an HTTP GET sent to https://service.ariba.com/service/transaction/cxml.asp
yields the following response:

<?xml version="1.0" encoding="UTF-8" ?>


<!DOCTYPE cXML "http://xml.cXML.org/schemas/cXML/1.2.014/cXML.dtd">
<cXML timestamp="2001-01-08T10:47:01-08:00" payloadID="978979621537--
4882920031100014936@206.251.25.169">
<Response>
<Status code="200" text="OK">Ping Response Message</Status>
</Response>
</cXML>

Attribute Description
code (required) The status code of the request. For example, 200
represents a successful request.

text (required) The text of the status. This text aids user readability
in logs and is a canonical string for the error in
English.

payloadID (required) A unique number with respect to space and time,


used for logging purposes to identify documents
that might have been lost or had problems. This
value should not change for retry attempts.

The following table describes the cXML status code ranges:

Range Meaning
2xx Success

4xx Permanent error. Client should not retry. The error


prevents the request from being accepted

5xx Transient error. Typically, a transport error. Client


should retry. The recommended number of retries is
10, with a frequency of one hour. At a minimum a six
hour retry window is recommended. For high priority

11 Jul. 24 12|15
Technical Documentation
Electronic Integration B2B

requests, such as rush orders, you might want to


increase the retry frequency.

The following table includes possible cXML status codes:


https://punchoutcommerce.com/tools/cxml-test-responses

Status Text Meaning


200 OK The server was able to execute the request or deliver it to the final
recipient and document format correct
400 Bad Request Document format incorrect
401 Unauthorized Credentials provided in the Request (the Sender element) were not
recognized by the server.
403 Forbidden The user has insufficient privileges to execute this Request
500 Internal Server Technical, not data transformation errors
Error

6 Treatment of errors
When we get a 4xx error, our platform (Exiros workplace), cannot resend the PO. It will be
resent manually by email.
When we get a 5xx error, our platform will retry 3 times. In case it is not successful, the PO will
be resent manually by email.

7 Communication

1) We will always use POST method. We do not support SOAP or REST services.

2) The productive URL must be HTTPS or have any method of authentication.

Authentication methods: Our platform supports basic authentication or SharedSecret (token)


located on the header of the cXML.

 Basic Authentication:

11 Jul. 24 13|15
Technical Documentation
Electronic Integration B2B

 Token/SharedSecret:

3) The content type we will be sending: text/xml; charset="UTF-8".

4) The XML will be sent in the body

5) We will be expecting a cXML response with HTTP status code 200.

<?xml version="1.0"?>

<!DOCTYPE cXML SYSTEM "http://xml.cXML.org/schemas/cXML/1.2.044/cXML.dtd">

11 Jul. 24 14|15
Technical Documentation
Electronic Integration B2B

<cXML payloadID="2021-10-13-07-52-18-7626-HEISA" xml:lang="en" timestamp="2021-10-


13T07:52:18.7626030-05:00">

<Response>

<Status code="200" text="OK"/>

</Response>

</cXML>

11 Jul. 24 15|15

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy