NetSuite OAuth設定
NetSuite用にCoupaでOAuthアカウントを作成
新しい接続でCoupaインスタンスを設定する方法:
Setup > Integrations > Oauth 2/OpenID Connect Clients に移動し、 Createをクリックします。
付与タイプは、[クライアント証明書]を選択します。
クライアント、ログイン情報、連絡先情報、連絡先メールアドレスの名前を入力します。
次のスコープを選択して、NetSuiteバンドルを有効にします。
core.common.read
core.common.write
core.expense.read
core.expense.write
core.inventory.receiving.read
core.inventory.receiving.write
core.invoice.read
core.invoice.write
core.pay.payments.read
core.pay.payments.write
core.pay.virtual_cards.read
core.pay.virtual_cards.write
core.payables.invoice.read
core.payables.invoice.write
core.purchase_order.read
core.purchase_order.write
core.supplier.read
core.supplier.write
core.payables.order.read
core.payables.order.write
注:スコープは、APIキーに設定された一連の権限のようなものです。 OIDCでAPI権限を実装できるよう、今回APIの特定の機能へのアクセスを提供するいくつかの新しいスコープを作成しました。
スコープとその基礎となるCoupa権限のリストは、
/oauth 2/scopesのスコープ管理ページで確認できますスコープに移動すると、そのスコープに関連付けられている特定のAPI権限が表示されます。[保存]をクリックします。
クライアントを保存すると、定義したAPIスコープへのアクセスを取得するために必要なクライアント識別子とシークレットの値が得られます。 [表示/非表示]をクリックしてシークレットを表示し、コピーします。
APIにアクセスするにはアクセストークンが必要で、有効期限は24時間のみです。そのため、Coupaでは20時間ごとのトークン更新が推奨されています(更新トークンなど)。 この操作は、Netsuiteバンドルでは自動化されています。
Coupa P2P + 経費バンドルの最新バージョンへの更新
NetSuiteにログインし、クライアントのバージョンを確認
上部のツールバーから[ カスタマイズ] > [SuiteBundler] > [バンドルの検索とインストール] > [リスト ]に移動します。
[Coupa P2P + 経費バンドル]を検索します。
注:OAuthのサポートには、7.0.0以上のバンドルバージョンが必要です
設定アイコン()をクリックし、[更新]を選択して、最新のバンドルに 更新します。
バンドルページが開きます。
すでに設定されているスクリプト展開パラメータを上書きしないよう、[環境設定]列のすべての値を[展開を更新しない]に設定します。
[バンドルを更新]を選択します。
ステータスが[保留中]に変わります。 更新が完了するまで待ちます。
更新には数分かかる場合があります。 完了すると緑色のチェックマークが表示されます。
更新に失敗した場合はもう一度お試しください。 NetSuiteリソースがすぐに利用できず、明確な理由なく更新が失敗することがあります。
一般的な注意事項
このプロセスではスクリプト展開のカスタマイズを上書きしたり、インスタンスの認証情報を変更しないでください。
まずサンドボックスにインストールしてから、変更が現在のプロセスに影響を与えないことを確認してください。
リリースノートで行われた変更を確認し、どのスクリプトが影響を受けているのか、またその理由を把握するようにしてください。 これによりテストの対象をより適切に絞り込むことができます。
APIキーの代わりにOAuthを使用するようにNetSuiteを設定
[設定] > [会社] > [一般設定 ]に移動し、 [顧客設定]まで下にスクロールします
[Coupa P2P + 経費バンドル]ヘッダーの下で、前のセクションのOIDCクライアント識別子とクライアントシークレットを入力します。 また、CoupaインスタンスのベースURLを
https ://{your_instance}.coupahost.comの形式で含めます注:上記の3つのフィールドのいずれかが欠落している場合、NetSuiteはOAuthを使用して認証することができません。
既存のCoupaスクリプトからAPIキーを削除するには、 カスタマイズ>スクリプト>スクリプトに移動します
スクリプトページが開きます。
[スクリプトファイル]の下で[すべて]を選択し、[バンドルから]の下で[84306]を選択します。
バンドルで使用されているすべてのCoupa P2Pスクリプトが表示されます。
スクリプトの[デプロイメント]リンクを選択します。
スクリプトデプロイメントページが開きます。
展開で[編集]を選択し、[パラメーター]を選択します。
COUPA APIキーの値を空白にします。 COUPA URLは変更しないでください。
ステップ5に示されている各Coupaスクリプトで同じ操作を繰り返します。
各スクリプトからCoupa APIキーを削除する場合、NetSuiteはキーを使用してCoupaにアクセスできなくなり、OAuthに依存するようになります。
テスト中の各スクリプトのOAuthログの確認
[カスタマイズ] [スクリプト] > [スクリプト]に移動します
スクリプトページが開きます。
[スクリプトファイル]の下で[すべて]を選択し、[バンドルから]の下で[84306]を選択します。
バンドルで使用されているすべてのCoupa P2Pスクリプトが表示されます。
スクリプトの[デプロイメント]リンクを選択します。
スクリプトデプロイメントページが開きます。
展開の[編集]を選択してから[実行ログ]を選択します。
OAuthを使用できるものの未構成のスクリプトには、上記と同様に非推奨通知が追加されています。 OAuthを正しく完全に実装すると通知は表示されなくなります。 その後、代わりにOAuthレスポンスコード200が表示されるようになります。