パンチアウトカタログ

パンチアウトカタログはcXMLを使用し、顧客のCoupaインスタンスとサプライヤーのeコマースウェブサイトとの間に直接リンクを作成します。

概要

パンチアウトすると、Coupaユーザーはサプライヤーのeコマースウェブサイトへのリンクをたどり、そこで通常通り買い物をします。 ユーザーがチェックアウトすると、Coupaカートで選択したアイテムと共にCoupaに戻ります。 ユーザーは、サプライヤーのウェブサイトからアイテム、コスト、および詳細を使用して、Coupaで申請書を送信できます。

バイヤーのメリット

  • セットアップとメンテナンスの手間が少ない
  • 販売者が提供するすべてのアイテムは購入可能です
  • ノートパソコンや名刺などのアイテムの簡単な設定/カスタマイズ

サプライヤーのメリット

  • カタログアイテムの即時変更
  • さまざまな顧客のカタログを維持する必要はありません
注:

パンチアウトの実装を計画している場合は、Coupa cXMLサプライヤーアンケートに記入し、顧客に提供する必要があります。

仕組み

Coupaユーザーを認識するには、パンチアウトを設定する必要があります。 また、Coupaで設定し、顧客と契約を結ぶ必要があります。 顧客が設定を開始する前に、次の情報を顧客に提供する必要があります。

表 1.
アイテム説明
会社のロゴロゴはパンチアウトへのリンクとして機能します。 オンラインショップセクションのCoupaホーム画面に表示されます。 画像は150 x 50ピクセルのJPGまたはPNGである必要があります。
パンチアウトURLCoupaで発注書を受け取るために必要な完全なルーティングURL。
顧客ドメインとID通常はDUNSまたはNetworkIDです。
サプライヤーのドメインとID通常はDUNSまたはNetworkIDです。
共有シークレットサプライヤーとのバイヤーを検証するパスワード。 これは必須の認証情報です。

パンチアウト情報を提供すると、顧客はCoupaでパンチアウトを設定できます。

注:

通常、サプライヤーは2つの情報セットを提供します。1つはテスト用、もう1つは生産用です。

基本的なパンチアウトシーケンスは次のとおりです。

  1. Coupaユーザーがサプライヤーのパンチアウトリンクをクリックすると、CoupaはバイヤーのID ( From、Sender、SharedSecret )を含むPunchoutSetupRequest cXMLドキュメントを送信します。
  2. パンチアウトはユーザーを認証し、ランディングページURLを含むPunchoutSetupResponse cXMLドキュメントを返します。
  3. ユーザーがチェックアウトすると、パンチアウトは、ユーザーがショッピングカートに追加したアイテムを含むPunchoutOrderMessage cXMLドキュメントをCoupaに送信します。
  4. Coupaは、注文メッセージに含まれる情報から申請書を作成します。

サポートされているcXML

表 2.
cXMLドキュメント説明
PunchOutSetupRequest

次の要素を含めます。

  • パンチアウトURL
  • To/Sender/Fromドメインとアイデンティティ
  • 共有シークレット
  • 会社のロゴ

作成と検査のみをサポートしています。

PunchOutSetupResponsePunchOutSetupRequestを受け取ったら、cXMLをCoupaに返信します このドキュメントには、ランディングページのURLが含まれています。
PunchOutOrderMessageCXMLを <BrowserFormPost> in PunchoutSetupRequestに戻します
表 3.
cXML用語定義
<BuyerCookie>ユーザーがサプライヤーのパンチアウトサイトに初めてパンチアウトすると、Coupaは各ユーザーとサプライヤーのパンチアウトサイトの組み合わせに固有の BuyerCookieID を作成します。 この値は変更されません。 BuyerCookieID は、ユーザーがサプライヤーのパンチアウトサイトをチェックアウトし、 PunchOutOrderMessageでCoupaに戻ると、 BuyerCookieID PunchOutSetupRequestの一部として送信されたものと一致することを検証するために使用されます。 このフィールドは発注書に渡されません(別名: OrderRequest)。
<cXML Payload ID>

ペイロードID は、Coupaが送信するcXMLドキュメントを一意に識別します。 PunchoutSetupRequest のパンチアウト時に生成され、 OrderRequestで発注書を送信すると生成されます。

サプライヤーは、ショッピングカートアイテムを含む PunchOutOrderMessage をCoupaに返すときに payloadID を参照する必要はありません。

サプライヤーは、 StatusUpdateRequest をCoupaに返すときに payloadID を参照して、 OrderRequest または PurchaseOrderの受領を確認する必要があります。

ペイロードID は最大180文字にすることができます。

<SupplierPartAuxiliaryID>

これは、 PunchOutOrderMessage からCoupaへのラインアイテムレベルのオプションタグです。

サプライヤーは SupplierPartAuxiliaryID に任意の値を渡すことができ、Coupaは OrderRequest で同じ値をサプライヤーに渡します。

SupplierPartAuxiliaryID は最大765文字です。

パンチアウト設定要求のサンプル

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd"> <cXML xml:lang="en-US" payloadID="1591126611.9325364@stg1302app4.int.coupahost.com" timestamp="2020-06-02T14:36:51-05:00"> <Header> <From> <Credential domain="DUNS"> <Identity>COUPA 1</Identity> </Credential> </From> <To> <Credential domain="DUNS"> <Identity>079928354</Identity> </Credential> </To> <Sender> <Credential domain="DUNS"> <Identity>COUPA 1</Identity> <SharedSecret>ALD</SharedSecret> </Credential> <UserAgent>Coupa Procurement 1.0</UserAgent> </Sender> </Header> <Request> <PunchOutSetupRequest operation="create"> <BuyerCookie>99 ea 3 c 4 c 8 cf 9 f 6 dc 905 a 6 b 6772 da 0 d 1</BuyerCookie> <Extrinsic name="FirstName">Mary Anne</Extrinsic> <Extrinsic name="LastName">Krzeminski</Extrinsic> <Extrinsic name="UniqueName">maryanne.krzeminski@coupa.com</Extrinsic> <Extrinsic name="UserEmail">maryanne.krzeminski@coupa.com</Extrinsic> <Extrinsic name="User">maryanne.krzeminski@coupa.com</Extrinsic> <Extrinsic name="BusinessUnit">COUPA</Extrinsic> <BrowserFormPost> <URL>https://mwilczek-demo.coupacloud.com/punchout/checkout?id=2</URL> </BrowserFormPost> <Contact role="endUser"> <Name xml:lang="en-US">maryanne.krzeminski@coupa.com</Name> <Email>maryanne.krzeminski@coupa.com</Email> </Contact> <SupplierSetup> <URL>https://uttest.free.beeceptor.com</URL> </SupplierSetup> </PunchOutSetupRequest> </Request> </cXML>

パンチアウト設定応答のサンプル

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.1.010/cXML.dtd"> <cXML version="1.1.007" xml:lang="en-US" payloadID="200303450803006749@b2b.euro.com" timestamp="2020-06-02T14:36:53-05:00"> <Response> <Status code="200" text="OK" /> <PunchOutSetupResponse> <StartPage> <URL>https://mygreatpunchoutsite.com/punchoutLogin.asp</URL> </StartPage> </PunchOutSetupResponse> </Response> </cXML>

パンチアウトオーダーメッセージのサンプル

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.2.014/cXML.dtd"> <cXML payloadID="9949494@cxml.Comergent.com" xml:lang="en-US" timestamp="--T+00:00" version="1.2.0.14"> <Header> <From> <Credential domain="NetworkID"> <Identity /> </Credential> </From> <To> <Credential domain="NetworkId"> <Identity>user@coupa.com</Identity> </Credential> </To> <Sender> <Credential domain="NetworkID"> <Identity /> </Credential> <UserAgent /> </Sender> </Header> <Message deploymentMode="production"> <PunchOutOrderMessage> <BuyerCookie>f 5 d 75 ddbc 9 e 75 b 6346 b 36 ee 5 c 28 c 5 e 8 b</BuyerCookie> <PunchOutOrderMessageHeader operationAllowed="edit" quoteStatus="final"> <Total> <Money currency="USD">271.88</Money> </Total> <Shipping> <Money currency="USD">0.00</Money> <Description xml:lang="en-US">不明</Description> </Shipping> <Tax> <Money currency="USD">21.88</Money> <Description xml:lang="en-US">不明</Description> </Tax> </PunchOutOrderMessageHeader> <ItemIn quantity="1"> <ItemID> <SupplierPartID>AM 2692</SupplierPartID> <SupplierPartAuxiliaryID>A_B : 5008937 A_B :</SupplierPartAuxiliaryID> </ItemID> <ItemDetail> <UnitPrice> <Money currency="USD">250.00</Money> </UnitPrice> <Description xml:lang="en-US">ANTI - RNase (15 -30 U/ul)</Description> <UnitOfMeasure>EA</UnitOfMeasure> <Classification domain="UNSPSC">41106104</Classification> <ManufacturerPartID>AM 2692</ManufacturerPartID> <ManufacturerName xml:lang="en">Acme Inc.</ManufacturerName> <ManufacturerName /> <LeadTime>0</LeadTime> </ItemDetail> </ItemIn> </PunchOutOrderMessage> </Message> </cXML>