SPS Commerce 接続:EDI 注文を取り込み、ASN と請求を送信
SPS の開設ドキュメントから API Base URL をコピーし、SPS アカウント開設時にペアで発行された Client ID と Client Secret を取得して、3 つすべてを Integration に入力、テスト、各取引先の Mapping、有効化を行います。850 注文が入り、856 / 810 ドキュメントが出ていきます。
SPS Commerce コネクタは SPS Commerce(RSX / API)経由で小売取引先と EDI ドキュメントを交換します。850 購買注文などの受信ドキュメントが取引先から入って注文になり、856 出荷通知や 810 請求書などの送信ドキュメントが同じ取引先に返ります。ストア接続ではなく、ストア認可もありません。すべて取引先ごと・ドキュメントタイプごとに整理されるため、各取引先を個別に設定し確認します。
前提条件#
- API アクセス付きで開設済みの SPS Commerce アカウント。認証情報と API Base URL はその開設時に発行されるもので、Integration 内で作成するものではありません。
- SPS の開設ドキュメント。お客様のアカウント用の API Base URL が記載され、API アクセス用に発行された Client ID と Client Secret が含まれます。次の 2 つの手順で使うので、手元に用意してください。
- SPS Commerce 経由でドキュメントを交換する取引先が少なくとも 1 社あり、その取引先と交換するドキュメントタイプが明確であること。例えば 850 購買注文が入り、856 と 810 が出ていきます。この接続が取引先を作成するわけではありません。
- 最初の接続では、まず 1 社・1 種類のドキュメントで設定を検証してください。本番の取引先ドキュメントで新しい Mapping を試さないでください。
認証情報の取得#
- SPS の開設ドキュメントで API Base URL を見つけ、書かれているとおり正確にコピーしてください。OAuth トークンのエンドポイントを含む、接続が使うすべてのエンドポイントはこのベースアドレスからの相対指定です。一部が欠けたり余分だったりすると動作しません。
- 同じ開設資料で Client ID と Client Secret を見つけてください。これらは SPS アカウントが API アクセス付きで開設されたときにペアで発行されたものです。ペアで一緒に保管し、別のアカウントの認証情報と混ぜないでください。
- これらの認証情報を自分で生成するセルフサービスのページはありません。Client Secret を紛失した場合や受け取っていない場合は、SPS アカウント開設を担当した窓口に連絡し、再発行を依頼してください。別の場所で代わりを作ろうとしないでください。
- 次の手順のために 3 つの値を一緒に保管してください。API Base URL、Client ID、Client Secret です。後の手順のテストには 3 つすべてが必要で、1 つでも欠けると不足として報告されます。
Integration への入力#
- Integration → コネクタマーケットプレイス → SPS Commerce → 新規接続。
- API Base URL(base_url)— 必須:SPS の開設ドキュメントに記載された API ベースアドレスをそのまま貼り付けてください。この項目を空欄にしたり、SPS の一般的な Web アドレスで代用したりしないでください。接続はこのベースアドレスと通信し、これがないとテストは認証情報を試す前に停止します。
- Client ID(client_id)— 必須:SPS アカウント開設時にお客様のアカウント用に発行された Client ID を貼り付けてください。Client Secret をこの項目に貼らないよう注意してください。2 つの値はペアで、それぞれ専用の項目に入力します。
- Client Secret(client_secret)— 必須:Client ID とペアで発行された Client Secret を貼り付けてください。暗号化して保存され、保存後は再表示されません。慎重に貼り付け、自分の控えは開設資料に保管してください。
接続テスト#
「接続テスト」をクリックしてください。テストはまず API Base URL、Client ID、Client Secret の 3 つがそろっているか確認し、次にそれらを使って SPS と OAuth トークン交換を行います。SPS にトークンを要求し、返ってくることを確認します。テストでは EDI ドキュメントは一切取得しません。そのため、合格はベースアドレスと認証情報のペアが使えることだけを証明します。取引先やドキュメント Mapping が設定済みという意味ではありません。それは次の手順です。
Mapping / テンプレート選択#
SPS Commerce の Mapping は取引先ごと・ドキュメントタイプごとに行います。すべての取引先をカバーする単一の Mapping はありません。同じドキュメントタイプでも、小売取引先ごとに必要な項目やルールが異なる場合があるためです。取引先ごとに、交換するドキュメントタイプのテンプレートを選び、Mapping を並べて確認してください。受信する 850 購買注文では、注文番号、明細行、数量、配送先情報が標準注文に入ります。856 出荷通知や 810 請求書などの送信ドキュメントでは、出荷と請求の詳細が取引先の期待する形式にマッピングし直されます。ある取引先が通常のドキュメントにない項目を求める場合は、全員の Mapping を変えるのではなく、その取引先の Mapping に追加してください。有効化前に、取引予定の各取引先をすべて確認してください。Mapping が完了していない取引先は、接続テストが合格してもドキュメントを交換しません。
有効化#
有効化後、Integration は Mapping 済みの各取引先と SPS Commerce 経由でドキュメントを交換します。850 購買注文などの受信ドキュメントを取り込んで注文にし、856 出荷通知や 810 請求書などの送信ドキュメントを、履行と請求の進捗に合わせて返送します。Mapping が完了していない取引先は、接続が有効になっただけでは交換を開始しません。無人で任せる前に、各取引先の最初のドキュメントを Runs / Logs で確認してください。
よくある質問#
テストが停止し、API Base URL が不足していると表示される
base_url 項目が空欄になっています。SPS 接続には 2 つではなく 3 つの値が必要なため、この項目は見落としやすいです。ベースアドレスがないと接続先が分からず、テストは認証情報を確認する前に停止します。
SPS の開設ドキュメントから API Base URL を書かれているとおりにコピーし、API Base URL 項目に貼り付けて保存し、テストを再実行してください。ドキュメントのアドレスが不完全に見える場合は、残りを推測せず、SPS のアカウント開設窓口に確認してください。
テストがトークン交換で失敗する——認証が通らない
入力した値に対して SPS がトークンを返しませんでした。平たく言えば、ベースアドレス、Client ID、Client Secret の 3 つが一致していません。ベースアドレスのコピー間違い、Client ID と Client Secret の入力項目の取り違え、控えを作った後に Secret が再発行された、またはペアが別の SPS アカウントのものである可能性があります。
SPS の開設ドキュメントから 3 つの値をコピーし直し、Client ID が Client ID 項目に、Client Secret が Client Secret 項目に入っていることを確認して、再度テストしてください。それでも失敗する場合は、SPS アカウント開設を担当した窓口に連絡し、ベースアドレスの確認と、必要に応じて Secret の再発行を依頼してください。自分でリセットできるセルフサービスのページはありません。
テストは合格するが、850 注文が入ってこない
これは通常、接続が壊れているという意味ではありません。テストはトークンを交換するだけで、ドキュメントは一切取得しないため、合格しても注文については何も分かりません。注文が入ってこないのは、取引先の Mapping が完了していない、その取引先と 850 ドキュメントタイプが有効な設定に含まれていない、または取引先がまだ新しい注文を送っていない場合です。
その取引先と 850 ドキュメントタイプの Mapping を完了し、接続が有効化されていることを確認して、その取引先について Runs / Logs を確認してください。すべて設定済みで取引先が注文送信を確認した場合は、取引先の送信時刻を使って Runs / Logs でそのドキュメントを探してください。
送信する 856 / 810 ドキュメントが取引先に拒否される
接続とトークンは正常です。ドキュメント自体がその取引先の期待と一致していないことが問題です。小売取引先ごとに 856 や 810 ドキュメントに独自の項目やルールを要求する場合があるため、ある取引先で機能する Mapping でも、別の取引先が必須とする項目が欠けていたり、その取引先が受け付けない形式で値が入っていたりすることがあります。
拒否されたドキュメントをその取引先の要件と項目ごとに比較し、その取引先の Mapping だけに項目を追加または修正して、まず 1 件再送して確認してから残りを流してください。1 社の拒否を直すために、全取引先共有の Mapping を変更しないでください。