# استعلام تراکنش (Transaction Inquiry)

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

# پارامترهای ارسالی به متد Inquiry

در جدول زیر پارامترهای ارسالی به متد inquiry و توضیحات مربوط به آن‌ها آورده شده است:

نام پارامتر نوع الزامی توضیحات
merchant_id String بله کد Merchant شما که توسط زرین‌پال اختصاص داده شده است.
authority String بله کد یکتای درخواست پرداخت که پس از درخواست پرداخت دریافت می‌شود.

# مقادیر بازگشتی از متد Inquiry

در جدول زیر پارامترهای بازگشتی از متد inquiry توضیح داده شده است:

نام پارامتر نوع توضیحات
code Integer کد وضعیت تراکنش: کد 100 برای تراکنش موفق.
message String پیام وضعیت تراکنش، مانند موفقیت‌آمیز یا عدم موفقیت تراکنش.
status String وضعیت نهایی تراکنش که نشان می‌دهد تراکنش موفق بوده یا لغو شده است.

# نمونه کد Node.js

در ادامه نمونه کدی ارائه شده است که با استفاده از کد authority، وضعیت تراکنش از زرین‌پال استعلام می‌شود:

import { ZarinPal } from 'zarinpal-node-sdk';
const zarinpal = new ZarinPal({
    merchantId: 'your-merchant-id',
    sandbox: true,
});
async function inquireTransaction() {
  try {
    const inquiryResult = await zarinpal.inquiries.inquire({
      authority: 'A000000000000000000000000000000000',
    });
    console.log('Inquiry Result:', inquiryResult);
  } catch (error) {
    console.error('Error during inquiry:', error);
  }
}
inquireTransaction();