ComposioHQ/NetSuite-Automation

NetSuite自動化:Oracle NetSuite ERPで顧客管理、受注、請求書、在庫、レコードをSuiteQLクエリで操作します。

NetSuite-Automation とは?

このスキルは、Oracle NetSuite ERPの業務自動化を実現します。顧客や受注の作成、SuiteQLクエリの実行、外部IDによるレコードのアップサート、レコードメタデータの調査など、包括的なビジネス管理機能を提供します。Rube MCPサーバーを介してComposioのNetSuiteツールキットに接続し、AIエージェントがNetSuiteのCRUD操作を直接実行できるようにします。主なユースケースとしては、顧客情報の同期、受注の自動作成、在庫管理、請求書処理などが挙げられます。このスキルはClaude Code、Cursor、CodexなどのAIエージェントプラットフォームで使用でき、エラーハンドリングや実行計画のガイダンスも含まれているため、信頼性の高いNetSuite自動化を実現します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ComposioHQ/awesome-codex-skills/tree/main/composio-skills/netsuite-automation

Installed? Explore more 生産性&コラボレーション skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

NetSuite自動化

Oracle NetSuite ERPの業務を自動化します。顧客や受注の作成、SuiteQLクエリの実行、外部IDによるレコードのアップサート、レコードメタデータの調査など、包括的なビジネス管理を実現します。

ツールキットドキュメント: composio.dev/toolkits/netsuite


セットアップ

このスキルを使用するには、https://rube.app/mcp に接続された Rube MCPサーバー が必要です。

ツールを実行する前に、netsuite ツールキットのアクティブな接続が存在することを確認してください。接続がない場合は、RUBE_MANAGE_CONNECTIONS 経由で接続を開始してください。


コアワークフロー

1. 受注の作成

品目参照、数量、価格を含む明細行を持つ顧客注文を作成します。

ツール: NETSUITE_CREATE_SALES_ORDER

主要パラメータ:

  • entity (必須) -- 顧客参照: {"id": "<内部ID>"}
  • item (必須) -- items 配列を含むコンテナ。各項目:
    • item (必須) -- 品目参照: {"id": "<内部ID>"}
    • quantity (必須) -- 注文数量 (0以上)
    • rate -- 単価 (品目に既定価格がある場合は省略可)
    • amount -- 明細行合計金額 (rateの代替)
    • taxcode -- 税コード参照: {"id": "<内部ID>"} (SuiteTaxが有効な場合は必須)
    • description -- 明細行のメモ
  • tranDate -- 取引日 (YYYY-MM-DD 形式)
  • memo -- ヘッダーメモ
  • orderStatus -- "A" (承認待ち) または "B" (フルフィルメント待ち)
  • otherrefnum -- 外部参照または発注番号

例:

ツール: NETSUITE_CREATE_SALES_ORDER
引数:
  entity: {"id": "1234"}
  item: {
    "items": [
      {"item": {"id": "56"}, "quantity": 10, "rate": 25.00},
      {"item": {"id": "78"}, "quantity": 5, "rate": 50.00}
    ]
  }
  tranDate: "2026-02-11"
  memo: "Q1大口注文"
  orderStatus: "B"

2. SuiteQLクエリの実行

サーバーサイドのページングを使用して、NetSuiteデータに対してアドホックなSQLクエリを実行します。

ツール: NETSUITE_RUN_SUITEQL_QUERY

主要パラメータ:

  • q (必須) -- SuiteQLのSELECT文
  • limit -- 1ページあたりの行数 (デフォルトは変動)
  • offset -- 最初の行の0ベースインデックス (limit の倍数である必要あり)

例:

ツール: NETSUITE_RUN_SUITEQL_QUERY
引数:
  q: "SELECT id, companyname, email FROM customer WHERE isinactive = 'F' ORDER BY companyname"
  limit: 100
  offset: 0
ツール: NETSUITE_RUN_SUITEQL_QUERY
引数:
  q: "SELECT id, entitystatus, total FROM transaction WHERE type = 'SalesOrd' AND trandate >= '2026-01-01'"
  limit: 50

3. 顧客の作成と管理

子会社の割り当てと連絡先情報を含む新しい顧客レコードを作成します。

ツール:

  • NETSUITE_CREATE_CUSTOMER -- 新規顧客の作成
  • NETSUITE_GET_CUSTOMER -- 内部IDによる顧客の取得
  • NETSUITE_UPDATE_CUSTOMER -- 既存顧客の更新 (PATCHセマンティクス)

NETSUITE_CREATE_CUSTOMER の主要パラメータ:

  • body (必須) -- 顧客データを含むJSONオブジェクト。必須フィールド:
    • subsidiary -- id (子会社の内部ID) を含むオブジェクト
    • companyName (法人の場合) または firstName + lastName (個人の場合)
    • 省略可: email, phone, isPerson (個人の場合は "T" に設定), comments
  • replace -- 完全に置き換えるサブリスト名のカンマ区切り (例: "contacts,addressbook")

例:

ツール: NETSUITE_CREATE_CUSTOMER
引数:
  body: {
    "companyName": "Acme Corp",
    "subsidiary": {"id": "1"},
    "email": "[email protected]",
    "phone": "555-0100"
  }

4. 外部IDによるレコードのアップサート

外部識別子を使用してレコードを冪等に作成または更新します。同期ワークフローに不可欠です。

ツール: NETSUITE_UPSERT_RECORD_BY_EXTERNAL_ID

主要パラメータ:

  • record_type (必須) -- レコードタイプ名 (例: "customer", "salesorder", "customrecord_myrec")
  • external_id (必須) -- 外部IDの値 (英数字、アンダースコア、ハイフンのみ)
  • body (必須) -- レコードスキーマに一致するJSONオブジェクト。作成時は必須フィールドを含めること

例:

ツール: NETSUITE_UPSERT_RECORD_BY_EXTERNAL_ID
引数:
  record_type: "customer"
  external_id: "CRM-CUST-42"
  body: {
    "companyName": "Acme Corp",
    "subsidiary": {"id": "1"},
    "email": "[email protected]"
  }

警告: 冪等性は外部IDの一貫した使用に依存します。不一致が発生すると、更新ではなく新しいレコードが作成されます。


5. レコードメタデータの調査

レコードを作成または更新する前に、使用可能なフィールド、データ型、制約、要件を確認します。

ツール: NETSUITE_GET_RECORD_METADATA

主要パラメータ:

  • record_type (必須) -- 例: "customer", "salesorder", "invoice", "vendor", "employee", "item"
  • accept -- "application/schema+json" (デフォルト、JSON Schema) または "application/swagger+json" (OpenAPI 3.0)

例:

ツール: NETSUITE_GET_RECORD_METADATA
引数:
  record_type: "salesorder"

6. レコードの一覧表示とフィルタリング

オプションのフィルタリングとページングを使用して複数のレコードを取得します。

ツール: NETSUITE_LIST_RECORDS

主要パラメータ:

  • recordType (必須) -- 例: "customer", "salesorder"
  • q -- N/query演算子を使用したフィルター式 (例: "email START_WITH \"barbara\"")
  • limit -- 1ページあたりの最大レコード数 (1〜1000、デフォルト1000)
  • offset -- 0ベースインデックス (limit で割り切れる必要あり)

補助ツール:

  • NETSUITE_FILTER_RECORD_COLLECTION -- 代替フィルタリング (SuiteQLの補助)
  • NETSUITE_GET_RECORD_SELECTED_FIELDS -- 特定のフィールドのみを取得 (ペイロード削減)

推奨実行計画

  1. レコードスキーマの調査: NETSUITE_GET_RECORD_METADATA を使用して必須フィールドを確認
  2. 既存レコードの検索: NETSUITE_RUN_SUITEQL_QUERY を使用して重複を回避
  3. 顧客の検索: SuiteQLでメールアドレスから顧客を検索。見つかった場合は NETSUITE_GET_CUSTOMER で詳細を取得
  4. 必要に応じて顧客を作成: NETSUITE_CREATE_CUSTOMER を使用 (subsidiary を設定すること)
  5. 品目の内部IDを検証: NETSUITE_LIST_RECORDS または SuiteQL を使用
  6. 受注の作成: 検証済みの参照を使用して NETSUITE_CREATE_SALES_ORDER を実行
  7. 必要に応じて外部IDでアップサート: 同期ワークフローには NETSUITE_UPSERT_RECORD_BY_EXTERNAL_ID を使用
  8. 結果の確認: NETSUITE_GET_RECORD_SELECTED_FIELDS を使用して価格/合計を確認

既知の問題点

問題点詳細
無効な品目IDNETSUITE_CREATE_SALES_ORDER は、品目の内部IDが無効な場合に USER_ERROR をスローします。事前に NETSUITE_LIST_RECORDS または NETSUITE_RUN_SUITEQL_QUERY で検証してください。
必須フィールドの欠落NETSUITE_CREATE_CUSTOMER は、必須フィールド(例: subsidiary)がない場合に400を返します。事前に NETSUITE_GET_RECORD_METADATA で必ず確認してください。
SuiteQLフィールド名アカウントによるクエリの違いにより、結果が空になる場合があります。結果がおかしい場合は、NETSUITE_GET_RECORD_METADATA でフィールド名を確認してください。
フィルター式の制限NETSUITE_FILTER_RECORD_COLLECTION は、サポートされていないフィルター構文で失敗する可能性があります。SuiteQLの補助として扱ってください。
外部IDの冪等性NETSUITE_UPSERT_RECORD_BY_EXTERNAL_ID は外部IDの一貫した使用に依存します。不一致が発生すると、更新ではなく重複レコードが作成されます。
SuiteTaxの明細行SuiteTaxが有効なアカウントでは、すべての明細行に taxcode が必要です。省略すると作成に失敗します。

クイックリファレンス

ツールスラッグ説明
NETSUITE_CREATE_SALES_ORDER明細行付きの新しい受注を作成
NETSUITE_RUN_SUITEQL_QUERYページング付きでアドホックなSuiteQLクエリを実行
NETSUITE_CREATE_CUSTOMER新しい顧客レコードを作成
NETSUITE_GET_CUSTOMER内部IDで顧客を取得
NETSUITE_UPDATE_CUSTOMER既存の顧客を更新 (PATCH)
NETSUITE_UPSERT_RECORD_BY_EXTERNAL_ID外部IDでレコードを作成または更新
NETSUITE_GET_RECORD_METADATAレコードスキーマとフィールド定義を調査
NETSUITE_LIST_RECORDSフィルタリングとページングでレコードを一覧表示
NETSUITE_FILTER_RECORD_COLLECTION代替レコードフィルタリング
NETSUITE_GET_RECORD_SELECTED_FIELDSレコードから特定のフィールドを取得

Powered by Composio

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

ComposioHQ/-21risk-automation

Automate 21risk tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/-2chat-automation

Automate 2chat tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/ably-automation

Automate Ably tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abstract-automation

Automate Abstract tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abuselpdb-automation

Automate Abuselpdb tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abyssale-automation

Automate Abyssale tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accelo-automation

Automate Accelo tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accredible-certificates-automation

Automate Accredible Certificates tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/acculynx-automation

Automate Acculynx tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/active-campaign-automation

Automate ActiveCampaign tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/addresszen-automation

Automate Addresszen tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adobe-automation

Automate Adobe tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adrapid-automation

Automate Adrapid tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adyntel-automation

Automate Adyntel tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aeroleads-automation

Automate Aeroleads tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aero-workflow-automation

Automate Aero Workflow tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinda-automation

Automate Affinda tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinity-automation

Automate Affinity tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agencyzoom-automation

Automate Agencyzoom tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agent-deep-links

Build, validate, and troubleshoot deep links for Codex, Cursor, VS Code, Visual Studio, and similar tools. Use when users ask for clickable links (especially in Slack) that open threads, files, folders, or app settings.

関連スキル