mercadopago
Node.js/TypeScriptアプリケーション向けのMercado Pago決済統合に対応しています。公式MCPサーバー、Node.js SDK(mercadopago npm)、Checkout Pro、Checkout Bricks、Checkout API、OAuthマーケットプレイスモデル、ウェブフック、マルチテナントアーキテクチャ、決済リンク生成に対応しています。 Mercado Pago決済、MercadoPago API、チェックアウト設定、決済リンク、MPウェブフック、MP OAuth、マーケットプレイス手数料、またはmercadopago npmパッケージを扱う場合に利用してください。以下のキーワードでも発動します:「link de pago」「cobro」「preferencia」「init_point」「sandbox_init_point」「mercadopago SDK」「MP integration」、ラテンアメリカ市場(AR、BR、MX、CO、CL、PE、UY)向けの決済処理、または「mercadopago」からのインポート。ラテンアメリカ市場の文脈で「決済リンク」や「チェックアウト」の言及があれば、このスキルを使用します。
description の原文を見る
Mercado Pago payment integration for Node.js/TypeScript applications. Covers the official MCP Server, Node.js SDK (mercadopago npm), Checkout Pro, Checkout Bricks, Checkout API, OAuth marketplace model, webhooks, multi-tenant architecture, and payment link generation. Use this skill whenever working with Mercado Pago payments, MercadoPago API, checkout preferences, payment links, MP webhooks, MP OAuth, marketplace fees, or the mercadopago npm package. Also triggers on: "link de pago", "cobro", "preferencia", "init_point", "sandbox_init_point", "mercadopago SDK", "MP integration", payment processing for Latin American markets (AR, BR, MX, CO, CL, PE, UY), or any code importing from 'mercadopago'. Even if the user just mentions "payment link" or "checkout" in the context of a Latin American market, use this skill.
SKILL.md 本文
Mercado Pago 統合ガイド
このスキルは、Node.js/TypeScript アプリケーション、特にチャットコマース(WhatsApp/Instagram)とマルチテナント SaaS プラットフォームへの Mercado Pago 統合に必要なすべての機能を提供します。
クイック判定:どのチェックアウトを選ぶか
| チェックアウト | 最適な用途 | 実装難易度 | チャット対応か |
|---|---|---|---|
| Checkout Pro | 支払いリンク、チャットコマース、迅速なセットアップ | 低 | はい - init_point URL を送信 |
| Checkout Bricks | サイトに埋め込む UI コンポーネント | 中 | いいえ - Web ページが必要 |
| Checkout API | フルカスタムチェックアウト、最大限の制御 | 高 | いいえ - フロントエンドが必要 |
チャットベースの販売(WhatsApp/Instagram ボット)では、常に Checkout Pro を使用してください。サーバー側でプリファレンスを作成し、init_point URL を抽出して顧客に送信します。
Node.js SDK セットアップ
npm install mercadopago
# v2.12.0 — TypeScript ネイティブ、クラスベース API
import { MercadoPagoConfig, Preference, Payment } from 'mercadopago';
const client = new MercadoPagoConfig({
accessToken: '<ACCESS_TOKEN>',
options: { timeout: 5000 }
});
利用可能な SDK クラス:MercadoPagoConfig(クライアント)、Preference、Payment、Order、Customer、CustomerCard、CardToken、OAuth、MerchantOrder、PaymentRefund、PaymentMethod、PreApproval、PreApprovalPlan、Invoice、IdentificationType、Point、User。
支払いリンクの作成(Checkout Pro)
const preference = new Preference(client);
const result = await preference.create({
body: {
items: [{
id: 'product-123',
title: 'Blue T-Shirt',
quantity: 1,
unit_price: 2500.00,
currency_id: 'UYU' // または ARS、BRL、MXN、COP、CLP、PEN
}],
external_reference: 'your-order-id',
notification_url: 'https://yoursite.com/webhooks/mp?source_news=webhooks',
back_urls: {
success: 'https://yoursite.com/payment/success',
failure: 'https://yoursite.com/payment/failure',
pending: 'https://yoursite.com/payment/pending'
},
auto_return: 'approved',
expires: true,
date_of_expiration: '2026-03-18T23:59:59.000-03:00',
marketplace_fee: 250.00, // プラットフォーム手数料(マーケットプレイスモデル)
binary_mode: false, // false で pending を許可(現金支払い方法を含む)
}
});
const paymentLink = result.init_point; // 本番環境
const sandboxLink = result.sandbox_init_point; // テスト環境
レスポンスの重要フィールド:id、init_point、sandbox_init_point、collector_id、external_reference。
ウェブフック処理
ウェブフックは支払いステータスの変更を通知します。ペイロードには data.id(支払い ID)のみが含まれます。ウェブフックを受け取った後は、常に支払い詳細全体を取得してください。
HMAC-SHA256 署名検証
import crypto from 'crypto';
function verifyWebhookSignature(
xSignature: string, // x-signature ヘッダーから
xRequestId: string, // x-request-id ヘッダーから
dataId: string, // クエリパラメータ data.id から
secret: string // MP ダッシュボードのウェブフックシークレット
): boolean {
const parts = xSignature.split(',');
let ts = '', hash = '';
for (const part of parts) {
const [key, value] = part.split('=').map(s => s.trim());
if (key === 'ts') ts = value;
if (key === 'v1') hash = value;
}
const manifest = `id:${dataId};request-id:${xRequestId};ts:${ts};`;
const hmac = crypto.createHmac('sha256', secret);
hmac.update(manifest);
const calculated = hmac.digest('hex');
return crypto.timingSafeEqual(Buffer.from(calculated), Buffer.from(hash));
}
ウェブフックのベストプラクティス
- HTTP 200 を即座に返し、非同期で処理する
- べき等性を実装する — MP が重複した通知を送る場合がある
- ペイロードの
idは通知 ID です。支払い ID はdata.idです - ウェブフック後は常に
Payment.get({ id })で支払い詳細全体を取得する - ウェブフック形式のみを取得するため
notification_urlに?source_news=webhooksを追加する(レガシー IPN を除外) - ウェブフック URL は HTTPS で公開アクセス可能である必要があります
支払いステータスのライフサイクル
created -> pending/in_process -> approved(完了)
-> rejected(完了)
-> cancelled(完了)
-> authorized -> captured -> approved(認可+キャプチャフロー)
主要なステータス:pending、approved、in_process、rejected、cancelled、refunded、charged_back。
OAuth マーケットプレイスモデル(マルチテナント)
SaaS プラットフォームで複数のマーチャントを接続し、各自が MP アカウントを持つ場合:
1. 認可 URL を生成
https://auth.mercadopago.com/authorization
?client_id=APP_ID
&response_type=code
&platform_id=mp
&state=RANDOM_CSRF_TOKEN
&redirect_uri=https://yoursite.com/connect/mp/callback
2. コードをトークンと交換(コードは 10 分で失効します!)
const response = await fetch('https://api.mercadopago.com/oauth/token', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
client_id: process.env.MP_CLIENT_ID,
client_secret: process.env.MP_CLIENT_SECRET,
code: authorizationCode,
grant_type: 'authorization_code',
redirect_uri: process.env.MP_REDIRECT_URI,
test_token: false // サンドボックスの場合は true
})
});
// 返却:access_token(180 日)、refresh_token、user_id、public_key
3. 失効前に更新
const response = await fetch('https://api.mercadopago.com/oauth/token', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
client_id: process.env.MP_CLIENT_ID,
client_secret: process.env.MP_CLIENT_SECRET,
grant_type: 'refresh_token',
refresh_token: storedRefreshToken
})
});
マーケットプレイス手数料
- Checkout Pro:プリファレンスの
marketplace_fee— 売り手から差し引かれ、プラットフォームに送付 - Checkout API:支払いの
application_fee - 手数料は現地通貨で、売り手の売掛金から差し引かれます(買い手の合計には追加されません)
MCP サーバー
Mercado Pago を使用した AI 支援開発のための 3 つの MCP サーバーオプションがあります。完全なセットアップの詳細は references/mcp-servers.md を読んでください。
公式(リモート — 開発向け推奨)
{
"mcpServers": {
"mercadopago": {
"command": "npx",
"args": ["-y", "mcp-remote@latest", "https://mcp.mercadopago.com/mcp",
"--header", "Authorization:Bearer <ACCESS_TOKEN>"],
}
}
}
ツール:search-documentation(自然言語で公式 MP ドキュメントを検索)。
コミュニティ(ローカル — 27+ 支払いツール)
{
"mcpServers": {
"mercado-pago": {
"command": "npx",
"args": ["mercado-pago-mcp"],
"env": {
"MERCADOPAGO_ACCESS_TOKEN": "YOUR_TOKEN",
"MERCADOPAGO_ENVIRONMENT": "sandbox"
}
}
}
}
ツール:create_payment、create_payment_link、search_payments、get_payment、refund_payment、create_subscription、create_customer、batch_create_payments、monitor_payment、analyze_fraud、export_to_accounting、simulate_webhook など。
よくある落とし穴
external_reference:常に設定する — MP 支払いと注文を相関させるための唯一の信頼できる方法- プリファレンスの失効:チャットリンクに対して
expires: true+date_of_expirationを設定し、古い支払いを防止する - サンドボックス:テスト認証情報で
sandbox_init_point(init_pointではなく)を使用;MP ダッシュボードからテスト買い手/売り手アカウントを作成 binary_mode: true:approved/rejectedのみ(pendingなし) — 現金支払い方法を除外- 通貨:常に数値(例:
75.76)、文字列ではない - レート制限:プリファレンスの場合は約 100 req/s;HTTP 429 → エクスポーネンシャルバックオフ
- 国別認可 URL:AR:
auth.mercadopago.com.ar、BR:auth.mercadopago.com.brなど。API ベースは共通:api.mercadopago.com
国別支払い方法
| 国 | 通貨 | 主要方法 |
|---|---|---|
| アルゼンチン(MLA) | ARS | カード、Rapipago、Pago Facil、MP Wallet |
| ブラジル(MLB) | BRL | カード、Pix、Boleto、MP Wallet |
| メキシコ(MLM) | MXN | カード、OXXO、SPEI |
| コロンビア(MCO) | COP | カード、PSE、Efecty、Baloto |
| チリ(MLC) | CLP | カード、Servipag、Webpay |
| ペルー(MPE) | PEN | カード、PagoEfectivo |
| ウルグアイ(MLU) | UYU | カード、Abitab、RedPagos |
詳細リファレンス
データベーススキーマ、マルチテナントプリファレンス作成、支払いステータスの詳細、拒否理由コード、完全なウェブフックトピックリストを含む詳細なパターンについては、references/api-patterns.md を読んでください。
MCP サーバーのセットアップ、トラブルシューティング、ツールリストについては、references/mcp-servers.md を読んでください。
公式ドキュメントリンク
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- majiayu000
- ライセンス
- MIT
- 最終更新
- 2026/5/4
Source: https://github.com/majiayu000/claude-skill-registry / ライセンス: MIT
関連スキル
seo-maps
ローカルSEO向けのマップインテリジェンス機能です。ジオグリッドのランク追跡、APIを通じたGBPプロフィール監査、Google・Tripadvisor・Trustpilotなど複数プラットフォームのレビュー分析、Google・Bing・Apple・OSM間のNAP(名前・住所・電話番号)検証、競合他社の半径マッピング、APIデータからのLocalBusinessスキーマ生成が可能です。3段階の機能レベルで対応でき、無料版(Overpass + Geoapify)、DataForSEO(フル機能)、DataForSEO + Google(最大カバレッジ)から選択できます。「maps」「geo-grid」「rank tracking」「GBP audit」「review velocity」「competitor radius」「maps analysis」「local rank tracking」「Share of Local Voice」「SoLV」などのキーワードで利用できます。
seo-content-brief
セクションごとの文字数、競合スコアリング、キーワード密度ガイダンス、ページタイプテンプレートを含む競争力のあるSEOコンテンツブリーフを生成します。新規ページのブリーフと既存ページの改善ブリーフの両方に対応しています。ユーザーが「コンテンツブリーフ」「ブリーフを作成」「コンテンツアウトライン」「ブログブリーフ」「サービスページブリーフ」「ブリーフ〜」「ライティングブリーフ」「コンテンツプラン」「アウトライン〜」などと言った場合に使用します。
rakuten-seo
楽天市場の商品名・キャッチコピーをSEO最適化するスキル。「楽天SEO」「商品名最適化」「楽天の商品名」「キャッチコピー」「楽天のタイトル」「商品名を直して」「楽天検索対策」など、楽天市場の商品名やキャッチコピーの作成・改善・チェックに関するリクエストで必ずこのスキルを使う。既存の商品名の改善も、ゼロからの作成も対応。あらゆるジャンル(食品・ファッション・化粧品・家電・サプリ・インテリア・ベビー・ペット・業務用など)に対応。 【ALSEL独自スキル】株式会社ALSEL が、19年・5,000社超の EC 支援で得たノウハウをもとに開発したオリジナルスキルです。
amazon-seo-jp
Amazon.co.jp商品ページのSEO分析・最適化・自動採点スキル v2.0。 COSMO/Rufus/A10アルゴリズムに基づく採点。セラーセントラル出品レポート(.xlsm)を入力すると、 商品タイトル・箇条書き・検索キーワード・商品説明文を100点満点で採点し、 4項目すべての改善案を日本語で出力する。 トリガー: 「Amazon SEO」「商品ページ採点」「Amazon最適化」 「リスティング改善」「Amazon商品名」「箇条書き改善」 「COSMO対応」「Rufus最適化」「Amazon タイトル」 【ALSEL独自スキル】株式会社ALSEL が、19年・5,000社超の EC 支援で得たノウハウをもとに開発したオリジナルスキルです。
rakuten-bulk-control-csv
楽天RMSの一括登録/一括除外/一括更新用CSV(コントロールカラム,商品管理番号 の2列フォーマット)を作成するスキル。商品DL CSV・商品管理画面のコピペ・Excel・PDFなどから商品管理番号を抽出し、Shift-JIS+LF改行で出力する。「一括除外リスト作って」「楽天の除外CSV」「コントロールカラムnで」「2800円以下の商品をdで」「在庫0の商品を一括削除」「商品管理番号抜いてshift-jsで」「このフォーマットで」など、楽天RMSの商品一括処理用CSVを作るタスクで必ずこのスキルを使う。コントロールカラム値(n=新規/d=削除/u=更新)と抽出条件(全件・価格・在庫・販売状態など)をユーザー指示に応じて柔軟に切り替える。 【ALSEL独自スキル】株式会社ALSEL が、19年・5,000社超の EC 支援で得たノウハウをもとに開発したオリジナルスキルです。
amazon-a-plus-content-brief
Amazon A+コンテンツの構成・モジュール選定・画像指示・比較表・FAQを設計するスキル。「A+コンテンツ作って」「Aプラス構成」「ブランドストーリー」「比較表つきA+」「A+モジュール選定」「Amazonのページに画像入れたい」「A+のヘッダー画像」「A+コンテンツマネージャー」など、Amazon A+コンテンツの企画・設計・改善のリクエストで必ずこのスキルを使う。ベーシック17モジュール/Premium追加機能/画像サイズ規定/文字数目安/審査リジェクト要因を踏まえて、デザイナーに渡せるブリーフ形式で出力。あらゆるジャンル(家電・コスメ・食品・アパレル・日用品・ベビー・ペット等)に対応。※ブランドストア(マルチページ)の設計は別スキル `amazon-brand-store-planner`、タイトル・bullet改善は `amazon-title-bullet-rewriter-jp`、メイン画像のチェックは `amazon-main-image-checker`。 【ALSEL独自スキル】株式会社ALSEL が、19年・5,000社超の EC 支援で得たノウハウをもとに開発したオリジナルスキルです。