بسته توسعه نرم افزاری یا اسدیکی آیدیپی برای استفاده در محیط نودجیاس به همراه جاوااسکریپت یا تایپاسکریپت
npm install @aspianet/idpay
sh
npm install @aspianet/idpay
`
## کاربرد
قبل از هر چیز شما نیازمند دریافت کلید API از پنل کاربری خود در آیدی پی هستید تا بتوانید به واسطه آن، SDK موجود را مقداردهی اولیه و راه اندازی کنید. برای مثال، شما می توانید کد زیر را در فایل اصلی اپلیکیشن اکسپرس خود (مانند app.js) ایجاد و با کلید API مقداردهی نمایید تا بتوانید در هر فایل دیگر اپلیکیشن خود بدون استفاده مکرر از این کلید از سایر امکانات SDK استفاده نمایید:
ts
import { idPay } from '@aspianet/idpay';idPay.init( "کلید-API" );
`
ts
import { idPay } from '@aspianet/idpay';const transaction = await idPay.createTransaction( {
order_id: '101',
amount: 10000,
name: 'امید روحانی',
phone: '09380001234',
mail: 'my@site.com',
desc: 'توضیحات پرداخت کننده',
callback: 'https://example.com/callback',
} );
`
همچنین پارامترهای زیر به آدرس callback تعریف شده در مرحله ایجاد تراکنش با توجه به تنظیمات وب سرویس در داشبورد آیدی پی تحت عنوان روش بازگشت پس از پرداخت به دو روش POST (Post form) یا GET (Query String) ارسال می شوند. برای کسب اطلاعات بیشتر اینجا کلیک نمایید.
## تایید تراکنش
بعد از دریافت اطلاعات به سایت پذیرنده و اعتبار سنجی اطلاعات توسط پذیرنده، پذیرنده باید تراکنش را تایید کند تا پرداخت بصورت سیستمی تکمیل شود و از بازگشت پول به پرداخت کننده جلوگیری شود. به این منظور از متود زیر می توانید استفاده نمایید:
ts
import { idPay } from '@aspianet/idpay';const verifiedTransaction = await idPay.verifyTransaction( {
id: 'd2e353189823079e1e4181772cff5292',
order_id: '101',
} );
`
با استفاده از متود زیر میتوانید آخرین وضعیت یک تراکنش را دریافت نمایید.
ts
import { idPay } from '@aspianet/idpay';const info = await idPay.inquireTransaction( {
id: 'd2e353189823079e1e4181772cff5292',
order_id: '101',
} );
`
با استفاده از متود زیر می توانید لیست تراکنش های خود را دریافت کنید.
ts
import { idPay } from '@aspianet/idpay';const result = await idPay.listTransactions( {
page: 0,
page_size: 25,
id: "e22952579725883bbad9f8fa429134bf",
order_id: 101,
amount: 10000,
status: ["100"],
track_id: "27384837",
payment_card_no: "6362145409",
payment_hashed_card_no: "B913D97F01CE42601181135DF3D0F81DA9E98E61BE3E3AB4436E6345D6AB0AEA",
payment_date: {min: 1600005000, max: 1600006000},
settlement_date: {min: 1600005746, max: 1600006000}
} );
`
برای دریافت پیام فارسی وضعیت تراکنش با استفاده از کد دریافتی آن در پاسخ های دریافتی و ... می توانید از متود زیر استفاده نمایید:
ts
import { idPay } from '@aspianet/idpay';const message = idPay.getStatusMsgByCode( 2 );
``