ユーザーマニュアル
ヘルプセンター/ユーザーマニュアル/NetSuite 接続:注文取込と顧客・請求書・製品の同期

NetSuite 接続:注文取込と顧客・請求書・製品の同期

最終更新 2026-11-01

NetSuite で Account ID を確認し、rest_webservices スコープを持つ発行済み OAuth2 アクセストークンを Integration に貼り、テスト・マッピング・有効化。販売注文が入り、顧客・請求書・製品が双方向に同期します。

NetSuite コネクタは SuiteTalk REST Record サービス経由で Oracle NetSuite ERP に接続します。NetSuite から販売注文、顧客、請求書、製品を取り込み、顧客、請求書、製品を NetSuite に返送します。在庫数量の読み取りや送信はできないため、注文と顧客・請求書・製品レコード用に使い、在庫数量の同期には使わないでください。

NetSuite 接続手順:まず Account ID と OAuth2 トークン、次にテスト、Mapping、有効化。

前提条件#

  • NetSuite アカウントと、Setup → Company → Company Information を開いて Account ID を確認できるログイン。
  • REST Web Services 権限を持つロール。使用するトークンには rest_webservices スコープが必要で、そのロールが顧客レコードを読めること(接続テストは顧客 1 件を読みます)。
  • 発行済みの OAuth2 アクセストークン。NetSuite の統合レコード(integration record)経由で、client credentials または認可コードフローにより取得したもの。ウィザードを始める前に完成したトークンを用意してください。
  • 接続するアカウントを把握しておくこと。サンドボックスの Account ID は 1234567_SB1 のように _SB1 サフィックスが付きます。

認証情報の取得#

  1. Account ID の確認:NetSuite で Setup → Company → Company Information を開き、表示される Account ID をそのままコピーします。サンドボックスの場合は _SB1 サフィックスを含めます(例:1234567_SB1)。
  2. OAuth2 アクセストークンの取得:トークンには rest_webservices スコープが必要で、NetSuite の統合レコードから client credentials または認可コードフローで取得します。Integration が NetSuite のログイン画面を開いて代わりに取得することはありません。貼り付けるのは発行済みのトークンです。
  3. トークンの背後にあるロールを確認:REST Web Services 権限と顧客レコードの読み取り権限が必要です。ない場合は接続テストが MISSING_SCOPE(403)で失敗します。
この接続には Client ID / Client Secret のフィールドがなく、Token-Based Authentication(TBA、OAuth 1.0a)には対応していません。TBA 認証情報しかない場合はここでは使えません。先に rest_webservices スコープを持つ OAuth2 アクセストークンに切り替えてください。

Integration への入力#

  1. Integration → コネクタマーケットプレイス → NetSuite → 新規接続を開きます。
  2. account_id——必須。Account ID フィールドに入力します:NetSuite → Setup → Company → Company Information の Account ID を一字一句そのままコピーし、サンドボックスの場合は _SB1 サフィックスも含めます(例:1234567_SB1)。
  3. token——必須。OAuth2 access token フィールドに入力します:rest_webservices スコープを持つ完全な OAuth2 アクセストークンを貼り付けます(値は通常 eyJ で始まります)。Client ID や Client Secret の専用フィールドはありません。トークンは暗号化して保存され、再表示されません。

接続テスト#

接続テストをクリック。account_id が空の場合は MISSING_ACCOUNT_ID で停止し、token が空の場合は MISSING_TOKEN で停止します。どちらの場合もリクエストは送信されません。それ以外の場合は、トークンを Bearer トークンとして 1 回だけ読み取り専用の確認を行います:https://{account_id}.suitetalk.api.netsuite.com/services/rest/record/v1/customer から上限 1 件で顧客リストを読みます(タイムアウト 12 秒)。200 が返ればテスト通過で、結果に account_id が表示されます。401 は INVALID_TOKEN、403 は MISSING_SCOPE として返ります。各ケースの直し方は FAQ を参照してください。その他の失敗は CONNECTION_FAILED として報告されます。

Mapping / テンプレート選択#

NetSuite 標準テンプレートを選択します。販売注文(コネクタが注文ごとに読み取る各注文の明細行を含む)、顧客、請求書、製品(NetSuite の inventory item)を NetSuite と標準伝票の間でマッピングします。有効化前に、マッピングプレビューで重要なフィールドを確認し、各 NetSuite 製品がこちら側の正しい製品に紐付いていることを確認してください。在庫数量はこのマッピングに含まれません。この接続は在庫数量を読み取りも送信もしないため、手持数量フィールドを同期するつもりでマッピングしないでください。

NetSuite 伝票の往復:販売注文を取り込み、顧客・請求書・製品は双方向。在庫数量は流れません。

有効化#

有効化後、設定した頻度で NetSuite から新しい販売注文、顧客、請求書、製品を取得し、顧客・請求書・製品の更新を NetSuite に返送します。在庫数量はこの接続ではどちらの方向にも流れません。最初は Runs / Logs で数件の伝票を確認してから無人運用にし、OAuth2 トークンの期限が切れたら新しく発行されたものに差し替えて再テストしてください。

よくある質問#

テストが MISSING_ACCOUNT_ID または MISSING_TOKEN で止まる

必須フィールド 2 つのうち 1 つが空のため、テストは NetSuite へリクエストを送る前に止まります。

両方のフィールドを入力してください:account_id は NetSuite → Setup → Company → Company Information から、token には完全な OAuth2 アクセストークンを。保存して再テストしてください。

テストが INVALID_TOKEN(401)で失敗する

NetSuite がトークンを拒否しました:無効または期限切れ、貼り付けが不完全、あるいは貼ったものが OAuth2 アクセストークンではなく Token-Based Authentication(TBA)認証情報である可能性があります。

NetSuite の統合レコードから rest_webservices スコープを持つ新しい OAuth2 アクセストークンを取得し、token フィールドに全文を貼り、保存して再テストしてください。TBA 認証情報はこの接続では使えません。

テストが MISSING_SCOPE(403)で失敗する

トークンは NetSuite に届きましたが、テストの動作が許可されていません:rest_webservices スコープが不足しているか、背後のロールに顧客レコードの読み取り権限がありません。テストの確認は顧客を読むものだからです。

NetSuite 管理者に、統合レコードのスコープとロールの顧客権限を確認してもらってください。スコープが変わる場合は新しいトークンを発行し、接続に貼って保存し、再テストしてください。

テストが CONNECTION_FAILED で失敗する

確認は NetSuite に届きましたが、成功でも 401 でも 403 でもない応答が返りました。よくある原因は account_id がトークンの所属アカウントと一致していないことです。確認先アドレスは account_id から組み立てられるため、1 文字違うだけで別の場所に送られます。

NetSuite → Setup → Company → Company Information から account_id を一字一句コピーし直し(サンドボックスの場合は _SB1 サフィックスを含む)、トークンが同じアカウント向けに発行されたものか確認してください。保存して再テストしてください。

Client ID と Client Secret はどこに入力しますか?

この接続のどこにも入力しません。Client ID や Client Secret のフィールドはありません。受け取るのは完成した OAuth2 アクセストークン自体です:client credentials や認可コードによる交換は NetSuite の統合レコード側で行われてトークンが発行され、そのトークンをこちらの token フィールドに貼ります。

そのため、ここにはトークンの更新フローもありません。貼るトークンが完成した認証情報です。有効期限が切れたら、同じ Client ID と Client Secret で NetSuite 側の交換を再実行し、新しいトークンをこの接続に貼って再テストしてください。

この接続で在庫数量を同期できますか?

いいえ。この接続は NetSuite から在庫数量を読むことも、NetSuite に在庫数量を送ることもできません。販売注文、顧客、請求書、製品に使い、在庫数量は現在管理しているシステムで保持してください。

製品レコード自体は双方向に流れます。名称、SKU、その他の製品フィールドは NetSuite と同期します。決して一緒に移動しないのは数量の数字です。同期された製品に手持ち数量は付いてきません。