كيفية استخدام واجهة برمجة تطبيقات Plaid: دليل المطور 2026

Ashley Innocent

Ashley Innocent

23 أبريل 2026

كيفية استخدام واجهة برمجة تطبيقات Plaid: دليل المطور 2026

Apidog للمؤسسات

النشر على الخوادم المحلية

SSO و RBAC

متوافق مع SOC 2

استكشف Apidog للمؤسسات

تطبيقات التكنولوجيا المالية نادرًا ما تبدأ من الصفر بعد الآن. عندما يربط المستخدم حسابًا جاريًا بتطبيقك، فمن المرجح أن يكون Plaid في المنتصف، حيث يترجم عمليات تسجيل الدخول المصرفية إلى JSON نظيف يمكن لخلفيتك استخدامه. تدعم واجهة برمجة تطبيقات Plaid ربط الحسابات، وفحص الأرصدة، وسجل المعاملات، والتحقق من الهوية لآلاف التطبيقات بما في ذلك Venmo و Robinhood و Chime.

يرشدك هذا الدليل خلال واجهة برمجة تطبيقات Plaid من منظور المطور: كيفية الحصول على المفاتيح، وكيف يعمل تدفق رمز الرابط (Link token) من البداية إلى النهاية، والمنتجات التي يجب أن تعرفها، وماذا تعني الأخطاء الشائعة عندما تتعطل الأمور في الإنتاج. سترى أيضًا كيفية اختبار كل خطوة باستخدام Apidog حتى تتوقف عن التخمين في حمولات الطلبات. إذا كنت تريد المصدر الأصلي للمعلومات، فاجعل وثائق Plaid الرسمية مفتوحة في علامة تبويب ثانية أثناء القراءة.

الخدمات المصرفية المفتوحة هي مجال مزدحم، و Plaid هو خيار واحد من بين عدة خيارات. إذا كنت لا تزال تقارن بين الموردين، فإن ملخصنا لأفضل واجهات برمجة تطبيقات الخدمات المصرفية المفتوحة يعد رفيقًا مفيدًا. لهذا المنشور، افترض أنك اخترت Plaid وأنك جاهز للانطلاق.

زر

TL;DR

ما هو Plaid؟

Plaid هي شركة بنية تحتية للتكنولوجيا المالية مقرها الولايات المتحدة وتقع بين تطبيقك وبنك المستخدم. عندما يدخل المستخدم بيانات اعتماده المصرفية في Plaid Link، يتصل Plaid بالبنك (من خلال واجهات برمجة تطبيقات الخدمات المصرفية المفتوحة الرسمية حيثما توفرت، أو مواقع الويب المصرفية التي تم هندستها عكسيًا حيثما لم تتوفر)، ويسحب البيانات المطلوبة، ويعيد تنسيقها، ويسلمك استجابة JSON متسقة بغض النظر عن البنك الذي جاءت منه.

أنت لا ترى أو تخزن أبدًا بيانات اعتماد المستخدم المصرفية. يحتفظ Plaid بالاتصال، والذي يسميه عنصرًا (Item)، ويمنحك access_token يمثل إذنًا للاستعلام عن هذا العنصر. عنصر واحد (Item) يساوي مجموعة واحدة من بيانات الاعتماد في مؤسسة مالية واحدة، وقد يتضمن حسابات متعددة (جارٍ، توفير، بطاقة ائتمان).

يغطي Plaid الحسابات الجارية والتوفير للمستهلكين، وبطاقات الائتمان، والقروض، وحسابات الاستثمار، وبيانات الرواتب. لا يقوم بتحويل الأموال بمفرده؛ لتحويلات ACH، عادة ما تقرن Plaid Auth بمعالج دفع منفصل. يشرح مقالنا عن أفضل واجهات برمجة تطبيقات دفع ACH كيف يبدو هذا الاقتران عادة.

المصادقة والإعداد

الخطوة 1: إنشاء حساب مطور Plaid

اشترك في plaid.com وتحقق من بريدك الإلكتروني. ستصل إلى لوحة تحكم Plaid مع ثلاث بيئات مجهزة بالفعل:

الخطوة 2: احصل على مفاتيحك

من لوحة التحكم، انتقل إلى إعدادات الفريق (Team Settings) > المفاتيح (Keys). تحتاج إلى قيمتين:

قم بتخزين هذه في متغيرات البيئة. لا تقم أبدًا بتضمينها في git.

الخطوة 3: تثبيت حزمة SDK

توجد حزمة SDK الرسمية لـ Node.js على github.com/plaid/plaid-node.

npm install plaid

الخطوة 4: تهيئة العميل

import { Configuration, PlaidApi, PlaidEnvironments } from 'plaid';

const config = new Configuration({
  basePath: PlaidEnvironments.sandbox,
  baseOptions: {
    headers: {
      'PLAID-CLIENT-ID': process.env.PLAID_CLIENT_ID,
      'PLAID-SECRET': process.env.PLAID_SECRET,
    },
  },
});

const client = new PlaidApi(config);

استبدل PlaidEnvironments.sandbox بـ .development أو .production عندما تنتقل إلى مرحلة أعلى.

نقاط النهاية الأساسية

يتبع كل تكامل لـ Plaid نفس الخطوات الأربع. تقوم بالخطوتين 1 و 3 على جانب الخادم؛ يتعامل Plaid Link مع الخطوة 2 في متصفح المستخدم أو تطبيق الهاتف المحمول.

الخطوة 1: إنشاء link_token

const response = await client.linkTokenCreate({
  user: { client_user_id: 'user_123' },
  client_name: 'Your App',
  products: ['auth', 'transactions'],
  country_codes: ['US'],
  language: 'en',
});

const linkToken = response.data.link_token;

إصدار curl:

curl -X POST https://sandbox.plaid.com/link/token/create \
  -H 'Content-Type: application/json' \
  -d '{
    "client_id": "YOUR_CLIENT_ID",
    "secret": "YOUR_SANDBOX_SECRET",
    "user": { "client_user_id": "user_123" },
    "client_name": "Your App",
    "products": ["auth", "transactions"],
    "country_codes": ["US"],
    "language": "en"
  }'

الخطوة 2: فتح Plaid Link في العميل

أرسل link_token إلى الواجهة الأمامية الخاصة بك وقم بتمريره إلى Plaid Link SDK. يختار المستخدم بنكه، يسجل الدخول، ويعيد Plaid public_token إلى دالة استدعاء onSuccess الخاصة بك.

الخطوة 3: تبادل public_token

const exchange = await client.itemPublicTokenExchange({
  public_token: publicToken,
});

const accessToken = exchange.data.access_token;
const itemId = exchange.data.item_id;

قم بتخزين accessToken على جانب الخادم، وربطه بالمستخدم الخاص بك. هذا الرمز طويل الأمد وهو ما تستخدمه لكل استدعاء مستقبلي.

الخطوة 4: استدعاء نقاط نهاية المنتج

const accounts = await client.accountsGet({ access_token: accessToken });
const balance = await client.accountsBalanceGet({ access_token: accessToken });

نقاط نهاية المنتج التي يجب أن تعرفها

اختبار واجهة برمجة تطبيقات Plaid باستخدام Apidog

اختبار Plaid من البداية إلى النهاية أمر صعب لأن خطوة الرابط (Link) تحدث في المتصفح. لا يزال يتعين عليك إيجاد طريقة موثوقة للوصول إلى نقاط نهاية جانب الخادم بحمولات بيانات صالحة، ومعرفة كيفية ظهور الأخطاء، ومشاركة الطلبات العاملة مع زملائك في الفريق. يتعامل Apidog مع ذلك بشكل أفضل من معظم الأدوات.

استورد مواصفات OpenAPI الخاصة بـ Plaid إلى Apidog وستحصل على كل نقطة نهاية مهيأة مسبقًا بأنواعها، وأمثلة لهياكل البيانات، ورؤوس المصادقة الصحيحة. يمكنك إنشاء مجموعة متغيرات بيئة اختبار (sandbox) (client_id، secret، access_token) والتبديل إلى الإنتاج بنقرة واحدة. تسمح لك الطلبات المتسلسلة بتشغيل linkTokenCreatesandboxPublicTokenCreateitemPublicTokenExchangeaccountsGet في تدفق واحد، حتى تتمكن من التحقق من المصافحة الكاملة بدون متصفح.

يعتبر خادم Apidog الوهمي مفيدًا عندما يحتاج فريق الواجهة الأمامية إلى استجابات /accounts/get قبل اكتمال تكامل الواجهة الخلفية الخاصة بك. إذا كنت تنتقل من أداة أخرى، فإن دليلنا حول اختبار واجهة برمجة التطبيقات بدون Postman في عام 2026 يغطي عملية الترحيل بالتفصيل. قم بتنزيل Apidog ووجهه إلى مواصفات Plaid للبدء.

الأخطاء الشائعة وحدود المعدل

تأتي أخطاء Plaid مصحوبة بـ error_type، وerror_code، وerror_message قابلة للقراءة. تعامل مع هذه الأربعة في بيئة الإنتاج:

Webhooks

مرر عنوان URL لـ webhook عند إنشاء link_token وسيقوم Plaid بإرسال التحديثات إليه عبر POST. الثلاثة التي لا يمكنك تجاهلها هي SYNC_UPDATES_AVAILABLE (معاملات جديدة)، وITEM: LOGIN_REQUIRED (المصادقة المطلوبة)، وITEM: ERROR (فشل دائم). تحقق من توقيع JWT على كل webhook قبل اتخاذ أي إجراء بشأنه.

حدود المعدل

يفرض Plaid حدودًا للمعدل لكل عنصر (Item) ولكل نقطة نهاية. على سبيل المثال، يبلغ الحد الأقصى لـ /accounts/balance/get حوالي 5 استدعاءات في الدقيقة لكل عنصر في الإنتاج. تنطبق أيضًا حدود مجمعة على مستوى العميل على نقاط النهاية ذات الاستخدام الكثيف. القاعدة العملية: استقصاء الـ webhooks، وتخزين الأرصدة مؤقتًا لبضع دقائق، وعدم استدعاء Plaid أبدًا من مسار طلب يواجه المستخدم.

تسعير Plaid

يستخدم Plaid تسعيرًا متدرجًا يدفع لكل استدعاء واجهة برمجة تطبيقات في الإنتاج. التقدير التقريبي:

يتفاوض Plaid على تسعير مخصص فوق أحجام معينة، لذا فإن بطاقة الأسعار العامة هي نقطة بداية. تحقق من صفحة منتجات Plaid للحصول على الأرقام الحالية.

الأسئلة الشائعة

كم تدوم صلاحية access_token؟إلى أجل غير مسمى، حتى يلغي المستخدم الوصول أو يلغي البنك الجلسة. قم بتخزينه مشفرًا ولا تجعله ينتهي صلاحيته من جانبك.

هل يمكنني استخدام Plaid للتحقق من الهوية وحده؟يمكنك استخدام Plaid Identity، ولكن إذا كانت حاجتك الأساسية هي KYC فقد يكون من الأفضل لك استخدام منتج تحقق مخصص. نغطي المقايضات في دليلنا حول كيفية استخدام واجهة برمجة تطبيقات Stripe Identity.

هل يدعم Plaid دولًا خارج الولايات المتحدة؟نعم. يغطي Plaid الولايات المتحدة وكندا والمملكة المتحدة ومعظم دول الاتحاد الأوروبي. يختلف دعم البلدان حسب المنتج؛ تحقق من معلمة رموز البلدان في استدعاء /link/token/create.

ماذا يحدث إذا قام المستخدم بتغيير كلمة مرور حسابه المصرفي؟ينتقل العنصر (Item) إلى حالة ITEM_LOGIN_REQUIRED وتتلقى webhook. قم بتشغيل Plaid Link في وضع التحديث وسيعيد المستخدم المصادقة دون فقدان access_token الخاص به.

هل يمكنني اختبار تدفق الرابط (Link flow) بدون متصفح حقيقي؟نعم. تتجاوز نقطة النهاية /sandbox/public_token/create الرابط بالكامل وتُرجع public_token يمكنك تبادله. استخدمها لاختبارات التكامل التلقائية.

كيف أتعامل مع Plaid في بيئة التطوير المحلية؟احتفظ بـ secret لبيئة الاختبار (sandbox) في ملف .env الخاص بك وقم بربط بيئة التطوير الخاصة بك بـ PlaidEnvironments.sandbox. استخدم النفق (tunneling) (مثل ngrok، Cloudflare Tunnel) لاستقبال الـ webhooks محليًا.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات