راهنمای کارفرما به‌روزرسانی ۱۴۰۵/۰۵/۲۳ ۱۴ دقیقه

تدوین و انتشار توسط

چک‌لیست اتصال دو نرم‌افزار با API؛ قبل از سفارش چه چیزهایی مشخص شود؟

داشتن آدرس API به معنی آماده‌بودن اتصال نیست. پیش از برآورد باید مالک داده، جهت تبادل، قواعد نگاشت، محدودیت فراخوانی، رفتار هنگام قطعی و مسئول رفع مغایرت مشخص شوند؛ وگرنه اتصال ظاهراً موفق می‌تواند اطلاعات ناقص یا تکراری بسازد.

تصویر راهنمای چک‌لیست اتصال دو نرم‌افزار با API؛ قبل از سفارش چه چیزهایی مشخص شود؟

پاسخ کوتاه

پیش از سفارش اتصال API، مستندات و محیط آزمایش، روش احراز هویت، موجودیت‌ها و فیلدها، جهت و زمان تبادل، شناسه یکتای رکورد، رفتار Retry، جلوگیری از ثبت تکراری، مدیریت خطا، گزارش مغایرت و مالک پشتیبانی هر دو سامانه را مشخص کنید. برآورد معتبر بدون دسترسی به مستندات و نمونه داده معمولاً ممکن نیست.

ابتدا مشخص کنید منبع اصلی حقیقت برای هر نوع داده کدام سامانه است.
هر Retry باید طوری طراحی شود که سفارش، پرداخت یا سند را دوباره ثبت نکند.
پایان توسعه اتصال، شروع نیاز به مانیتورینگ و رسیدگی به مغایرت‌هاست.

اول مسئله کسب‌وکار و مرز اتصال را بنویسید

عبارت «اتصال CRM به حسابداری» برای تخمین کافی نیست. باید رویداد آغازکننده، اطلاعات ورودی، نتیجه مورد انتظار و مالک تصمیم مشخص شوند. برای مثال: «پس از قطعی‌شدن فاکتور در CRM، مشتری و سند فروش در حسابداری ایجاد و شماره سند به CRM بازگردانده شود.»

دامنه

پرسش کلیدی
کدام جریان‌ها متصل می‌شوند؟
نمونه پاسخ
ایجاد مشتری و فاکتور؛ نه دریافت و پرداخت

منبع حقیقت

پرسش کلیدی
نسخه معتبر هر داده کجاست؟
نمونه پاسخ
اطلاعات مشتری در CRM، مانده در حسابداری

جهت

پرسش کلیدی
تبادل یک‌طرفه است یا دوطرفه؟
نمونه پاسخ
فاکتور رفت و شماره سند برگشت

زمان

پرسش کلیدی
لحظه‌ای، دوره‌ای یا دستی؟
نمونه پاسخ
صف لحظه‌ای با امکان ارسال مجدد دستی

مالک خطا

پرسش کلیدی
چه کسی مغایرت را پیگیری می‌کند؟
نمونه پاسخ
کارشناس مالی با داشبورد خطا

آمادگی API هر دو سامانه را ارزیابی کنید

نسخه مستندات، URL محیط Sandbox، نمونه Request و Response، روش دریافت دسترسی و محدودیت Rate باید پیش از برآورد بررسی شوند. اگر فقط یک فایل ناقص یا دسترسی Production وجود دارد، برای مرحله کشف فنی و نمونه‌سازی زمان جدا در نظر بگیرید.

  • مستندات نسخه‌دار ترجیحاً در قالب OpenAPI یا نمونه معادل
  • محیط Sandbox و حساب آزمایشی با داده غیرحساس
  • روش Authentication، عمر Token و فرایند تمدید یا چرخش کلید
  • محدودیت تعداد درخواست، Timeout و اندازه Payload
  • Webhooks، ترتیب رویدادها و روش تأیید دریافت
  • سیاست تغییر نسخه و زمان اعلام Deprecation

نگاشت داده و شناسه‌ها را قبل از کدنویسی ببندید

دو سامانه معمولاً نام، نوع و قواعد اعتبارسنجی یکسانی ندارند. جدول نگاشت باید فیلد مبدأ، مقصد، تبدیل، اجباری‌بودن، مقدار پیش‌فرض و رفتار در داده نامعتبر را نشان دهد. کد مشتری یا شماره ملی نیز همیشه به‌تنهایی شناسه مناسب یکپارچه‌سازی نیست.

customerId

فیلد مقصد
external_reference
قاعده تبدیل
ذخیره شناسه پایدار سامانه مبدأ
رفتار خطا
توقف همان رکورد و ثبت خطا

mobile

فیلد مقصد
phone
قاعده تبدیل
یکسان‌سازی کد کشور و ارقام
رفتار خطا
رد مقدار نامعتبر

status

فیلد مقصد
document_state
قاعده تبدیل
نگاشت جدول وضعیت مصوب
رفتار خطا
ارسال به صف بررسی دستی

updatedAt

فیلد مقصد
last_sync_at
قاعده تبدیل
ذخیره UTC و نمایش محلی
رفتار خطا
هشدار ترتیب زمانی ناسازگار

Retry، Idempotency و بازیابی خطا را طراحی کنید

قطعی شبکه و پاسخ‌های موقت بخشی طبیعی از سیستم توزیع‌شده‌اند. Retry محدود با فاصله افزایشی می‌تواند خطای موقت را پوشش دهد، اما برای عملیات تغییردهنده مانند ثبت پرداخت باید Idempotency Key یا شناسه یکتا وجود داشته باشد تا تکرار درخواست، عملیات را دوباره انجام ندهد.

پس از پایان تلاش‌ها، رکورد نباید ناپدید شود. وضعیت، دلیل خطا، زمان تلاش بعدی و امکان ارسال مجدد کنترل‌شده باید در صف خطا یا داشبورد عملیاتی ثبت شود.

  • تفکیک خطای موقت از خطای دائمی یا اعتبارسنجی
  • حداکثر تعداد Retry و Backoff مشخص
  • Idempotency Key برای عملیات دارای اثر جانبی
  • Correlation ID مشترک در لاگ دو سامانه
  • Dead-letter یا صف بررسی برای خطاهای تکرارشونده
  • عملیات Reconcile برای کشف رکوردهای جاافتاده یا متفاوت

امنیت اتصال API فقط نگهداری یک کلید نیست

مجوز باید برای هر شیء و عملیات کنترل شود، نه صرفاً در لحظه ورود. داده خروجی نیز باید به حداقل موردنیاز محدود باشد. مصرف منابع، ورودی سامانه ثالث، نسخه‌های فراموش‌شده API و لاگ‌نشدن رخدادها از ریسک‌های شناخته‌شده یکپارچه‌سازی‌اند.

  • HTTPS و اعتبارسنجی گواهی در تمام مسیر
  • دسترسی حداقلی، Token کوتاه‌عمر و چرخش Secret
  • کنترل سطح دسترسی شیء و عملیات در هر Endpoint
  • اعتبارسنجی Schema و محدودکردن Payload و نرخ درخواست
  • حذف داده حساس از Log و پیام خطا
  • ثبت Audit برای تغییرات مهم و فراخوانی‌های مدیریتی

معیار پذیرش و مسئولیت پشتیبانی اتصال

آزمون موفقیت فقط دریافت کد ۲۰۰ نیست. مسیرهای تکرار، Timeout، Token منقضی، داده نامعتبر، پاسخ ناقص و قطعی هر سامانه را بررسی کنید. معیار پذیرش باید تعداد و صحت رکورد، زمان همگام‌سازی و روش گزارش خطا را پوشش دهد.

  • آزمون قرارداد داده و فیلدهای اجباری
  • آزمون ثبت تکراری و ارسال رویداد با ترتیب متفاوت
  • آزمون قطعی، Timeout، Rate Limit و انقضای Token
  • مقایسه تعداد و مبلغ رکوردها در گزارش Reconciliation
  • Alert برای توقف جریان یا افزایش خطا
  • تعیین مسئول هر سامانه، ساعات پاسخ و مسیر Escalation

پرسش‌های متداول

آیا وجود API یعنی اتصال ساده و کم‌هزینه است؟

خیر. کیفیت مستندات، Sandbox، قواعد داده، امنیت، جهت همگام‌سازی و سناریوهای خطا روی زمان و هزینه اثر مستقیم دارند.

Webhook بهتر است یا دریافت دوره‌ای اطلاعات؟

Webhook برای رویداد نزدیک به لحظه مناسب است، اما باید اعتبارسنجی، Retry و کشف رویداد ازدست‌رفته داشته باشد. دریافت دوره‌ای ساده‌تر است ولی تأخیر و بار بیشتری ایجاد می‌کند. انتخاب به نیاز کسب‌وکار بستگی دارد.

اگر نرم‌افزار فعلی API نداشته باشد چه می‌شود؟

ابتدا امکان Export استاندارد، افزونه رسمی یا لایه واسط بررسی می‌شود. اتصال مستقیم به دیتابیس یا RPA ممکن است در بعضی شرایط ممکن باشد، اما ریسک امنیت و نگهداری آن باید جدا ارزیابی شود.

چه کسی باید خطاهای اتصال را پشتیبانی کند؟

در قرارداد باید برای هر سمت مالک فنی، مسئول کسب‌وکار و مسیر Escalation مشخص باشد. بدون این توافق، هر اختلال ممکن است بین دو تأمین‌کننده معطل بماند.

برای ادامه مسیر، صفحه خدمت مرتبط، نمونه‌کار و راهنماهای مکمل را ببینید.

منابع و مبنای تدوین

این راهنما با استفاده از مستندات فنی و منابع تخصصی زیر تدوین شده است. تصمیم نهایی هر پروژه باید با داده‌ها، قرارداد و شرایط واقعی همان سازمان تطبیق داده شود.

قبل از قیمت‌گذاری اتصال، دو سمت API را بررسی کنید

نام سامانه‌ها، مستندات موجود، داده‌های قابل تبادل و نتیجه مورد انتظار را بفرستید تا امکان و ریسک یکپارچه‌سازی بررسی شود.

درخواست بررسی اتصال سامانه‌ها