API های وندار بر اساس استاندارد REST ایجاد شده اند.
تمامی API ها بصورت JSON-encoded پاسخ داده خواهند شد.
بوسیله ارسال توکن در هر درخواست، احراز هویت نیز انجام می شود. (ممکن است در برخی از سرویس ها نحوه احراز هویت متفاوت باشد)
API های وندار بر اساس استاندارد REST ایجاد شده اند.
تمامی API ها بصورت JSON-encoded پاسخ داده خواهند شد.
بوسیله ارسال توکن در هر درخواست، احراز هویت نیز انجام می شود. (ممکن است در برخی از سرویس ها نحوه احراز هویت متفاوت باشد)
https://api.vandar.io
دریافت توکن اولیه کسب و کار از طریق داشبورد وندار و تنها با دسترسی مالک یا مدیر کسب و کار امکانپذیر میباشد. جهت دریافت توکن از داشبورد، وارد منوی تنظیمات، بخش توکنها شوید. با زدن دکمه دریافت توکن جدید، یک نام برای توکن ثبت کرده و رمز عبور حساب کاربری خود در وندار را وارد نمایید، در پاسخ توکن و رفرش توکن به شما برگردانده میشود.
در حال حاضر عمر توکنها ۵ روز و عمر رفرش توکن ۱۰ روز میباشد و لازم است قبل از منقضی شدن توکن اقدام به تمدید توکن نموده و توکن و رفرش توکن جدید را جایگزین نمایید.
مقدار رفرش توکن که از پاسخ دریافتی از داشبورد و یا فراخوانی سرویس تمدید توکن دریافت نمودهاید
var request = require('request')
var options = {
method: 'POST',
url: '/v3/refreshtoken',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
refreshtoken: '{refreshtoken}'
})
}
request(options, function (error, response) {
if (error) throw new Error(error)
console.log(response.body)
})
{
"token_type": "Bearer",
"expires_in": 432000,
"access_token": "bPJO9cJLGRqClDadEua7ztoCLC5E***********",
"refresh_token": "def50200c4d2462d2de167da1*******"
}
جهت تست و توسعه سرویسها از کالکشن پستمن وندار استفاده نمایید.
کلیه سرویسهای وندار در کالکشن ارائه شده موجود میباشد، برای تست API ها کافیست نام انگلیسی کسبوکار خود را بجای پارامتر business و اکسس توکن دریافتی از وندار را در پارامتر access_token ارسال نمائید.
نام انگلیسی کسبوکار در داشبورد وندار، بخش تنظیمات،اطلاعات پایه و در فیلد نام انگلیسی برند موجود میباشد.
API های وندار از قواعد REST پیروی میکند.
بطور کلی در رنج 2xx
پاسخ های موفق را دریافت میکنید.
رنج 4xx
زمانی بوجود میآید که اطلاعات اشتباهی از سمت شما به API ها ارسال شده است.
خطاهایی در رنج 5xx
نشان دهنده مشکلاتی از سمت API های وندار بوده که می توانید آن را با پشتیبانی مطرح کنید.
200 - OK | Everything worked as expected. |
400 - Bad Request | The request was unacceptable, often due to missing a required parameter. |
401 - Unauthorized | No valid API key provided. |
402 - Request Failed | The parameters were valid but the request failed. |
403 - Forbidden | The API key doesn't have permissions to perform the request. |
با استفاده از این بخش میتوانید اطلاعات کسبوکار و لیست کاربران کسبوکار خود را مشاهده کنید.
GET /v2/business/:business
GET /v2/business/:business/iam
در این بخش میتوانید سرویسهای دریافت موجودی کیف پول کسب و کار در وندار و همچنین لیست تراکنشها و تسویههای ثبت شده را مشاهده نمایید.
GET /v2/business/:business/balance
GET /v3/business/:business/transaction
برای فروشگاههای اینترنتی که خدمات یا محصولاتی را در وبسـایت خود ارائه میکنند، از درگاه پرداخت وندار استفاده کنید.
POST https://ipg.vandar.io/api/v4/send
GET https://ipg.vandar.io/v4/:token
POST https://ipg.vandar.io/api/v4/transaction
POST https://ipg.vandar.io/api/v4/verify
از سرویس بازگشت وجه میتوانید برای بازگرداندن مبلغ یک تراکنشِ موفقِ درگاه پرداخت، به شماره کارت پرداختکننده استفاده کنید.
POST /v3/business/:business/transaction/:transaction_id/refund
با استفاده از سرویس تسویه میتوانید مبلغ موردنظر از کیف پول کسب و کار خود به مقصد شبای دلخواه (تمامی شباهای سامانه بانکی کشور) واریز نمائید.
POST /v3/business/:business/settlement/store
GET /v2.1/business/:business/settlement
GET /v2.1/business/:business/settlement/:settlement_id
DELETE /v2.1/business/:business/settlement/:transaction_id
GET /v3/business/:business/settlement/banks
با استفاده از سرویس تسویه گروهی میتوانید تسویه های خود به صورت دسته ای (گروهی) یکجا ثبت نمائید.
POST https://batch.vandar.io/api/v2/business/:business/batches-settlement
GET https://batch.vandar.io/api/v2/business/:business/batches
GET https://batch.vandar.io/api/v2/business/:business/batch-settlements/:batch_id
با استفاده از سرویس تسویه در نوبت میتوانید هنگامی که کیف پول شما به اندازه کافی موجودی ندارد، تسویه های خود ثبت نمائید و پس از اینکه کیف پول شما افزایش پیدا کرد این تسویهها به بانک ارسال میشود.
POST /v3/business/:business/settlement/queued
GET /v3/business/:business/settlement/queued
GET /v3/business/:business/settlement/queued/:id
POST /v3/business/:business/settlement/queued/cancel
با استفاده از سرویس آوند، میتوانید حسابهای بانکی خود را بهصورت کارآمد مدیریت کنید. این خدمات شامل دریافت موجودی، مشاهده صورتحسابها، ثبت تسویه از حساب و انجام واریزهای شناسهدار است.
امکان دریافت موجودی حسابها، مشاهده لیست تراکنشها، و ثبت تسویه برای حسابهای شما فراهم است.
GET /v3/business/:business/settlement/account/:iban/last-balance
GET /v3/business/:business/settlement/account/statement
«واریز شناسهدار»، سرویس مکمل سایر روشهای پرداخت است که افراد و سازمانها از آن استفاده میکنند. به کمک این سرویس، میتوانید بدون محدودیت در شبکه بانکی، پرداخت و دریافت وجه داشته باشید. این سرویس به صورت پیشفرض برای همه کسبوکارهای فعال، قابل استفاده بوده و برای هر کسبوکار یک شناسه یکتا منحصر به فرد تخصیص مییابد. با استفاده از «واریز شناسهدار» این امکان وجود دارد که با واریز وجه از همه بانکهایی که در آن حساب دارید، موجودی «کیف پول وندار» خود را افزایش دهید.
GET /v3/business/:business/cash-in/code
GET /v3/business/:business/cash-in/pic/transactions
GET /v3/business/:business/cash-in/suspicious-payment
POST /v3/business/:business/cash-in/suspicious-payment/:id
ابزار «واریز بانکی» یا به اصطلاح ،cash in یکی از بهترین روشهای شارژ کیف پول کسبوکار ها است. کسب و کارهایی که مبالغ زیادی از حساب آنها برداشته میشود، با استفاده از این ویژگی میتوانند مبلغی را از حساب بانک آینده خود به کیف پول خود در وندار اضافه کرده و پس از آن تعیین کنند که چه مقدار وجه از کیف پولشان خارج شود.
GET /v3/business/:business/cash-in/account
POST /v3/business/:business/cash-in/account/deposit
POST /v3/business/:business/cash-in/account/balance
سرویس پرداخت خودکار یا دایرکت دبیت سرویسی است که یک فرد وجوهی را از حساب بانکی شخص دیگری خارج می کند در واقع شما به بانک اجازه می دهید که مبلغی را مستقیما از حسابتان کسر و در قبال آن خدماتی را به شما ارایه دهد. به طور کلی دایرکت دبیت برداشت مستقیم پول برای انجام معاملات مالی در صورت صدور مجوز توسط پرداخت کننده می باشد. این کار بیشتر زمانی انجام می شود که شما بخواهید اشتراک خود را تمدید کنید.
لیست بانکهای فعال دایرکتدبیت برای کسبوکار شما از طریق این سرویس قابل دسترس میباشد. همچنین امکان مدیریت بانکها در داشبورد وندار، بخش پرداخت خودکار فراهم میباشد.
GET /v3/business/:business/subscription/banks/actives
جهت دسترسی به حساب در سرویس پرداخت خودکار، نیاز به ایجاد یک مجوز در بانک وجود دارد. بر اساس این مجوز، کسبوکار شما اجازه برداشت از حساب کاربر را خواهد داشت.
POST /v3/business/:business/subscription/authorization/store
GET https://subscription.vandar.io/authorizations/:token
PATCH /v3/business/:business/subscription/authorization/:authorization_id/verify
GET /v3/business/:business/subscription/authorization/:authorization_id/search
GET /v3/business/:business/subscription/authorization
GET /v3/business/:business/subscription/authorization/:authorization_id/calculation
DELETE /v3/business/:business/subscription/authorization/:authorization_id
در این سرویس میتوانید از حساب کاربران خود یکبار یا به صورت دورهای بر اساس مجوزی که از کاربر گرفتهاید، وجهی را برداشت نمایید.
POST /v3/business/:business/subscription/withdrawal/store
GET /v3/business/:business/subscription/withdrawal/:withdrawal_id
GET /v3/business/:business/subscription/withdrawal/track-id/:track_id
GET /v3/business/:business/subscription/withdrawal
GET /v3/business/:business/subscription/withdrawal?q=:authorization_id
PUT /v3/business/:business/subscription/withdrawal/:withdrawal_id
جهت بازگشت وجه یک تراکنش موفق پرداخت از حساب، میتوانید از این سرویس استفاده نمایید.
POST /v3/business/:business/subscription/refunds
GET /v3/business/:business/subscription/refunds/:refund_id
GET /v3/business/:business/subscription/refunds
در این بخش سرویسهای ثبت مشتری، فیلدهای اختصاصی مشتری، مشاهده لیست مشتریان، ویرایش اطلاعات مشتری، حذف مشتری و مشاهده اطلاعات یک مشتری ارائه میشوند.
GET /v2/business/:business/customers
POST /v2/business/:business/customers
PUT /v2/business/:business/customers/:customer
DELETE /v2/business/:business/customers/:customer
GET /v2/business/:business/customers/:customer
با استفاده از این سرویس میتوانید فیلدهای اختصاصی برای کسب و کار ثبت نمایید.
GET /v2/business/business/customers/fields
POST /v2/business/:business/customers/fields
PUT /v2/business/:business/customers/fields/:field_id
DELETE /v2/business/:business/customers/fields/:field_id
GET /v2/business/:business/customers/fields/:field_id
در این بخش مدیریت کیف پول مشتریان که شامل واریز، برداشت و مشاهده موجودی کیف پول مشتری میباشد، صورت میگیرد.
GET /v2/business/:business/customers/:customer/wallet
POST /v2/business/:business/customers/:customer/wallet/deposit
POST /v2/business/:business/customers/:customer/wallet/withdraw
در این بخش امکان مشاهده موجدی کیف پول مشتری را خواهید داشت.
نام انگلیسی کسب و کار است
پارامتر یکتای مشتری میباشد که میتوانید کدملی، موبایل یا آیدی مشتری که از طریق سرویس مشاهده لیست مشتریان قابل دسترسی میباشد را ارسال کنید.
var request = require('request')
var options = {
method: 'GET',
url: '/v2/business/:business/customers/:customer/wallet',
headers: {
Accept: 'application/json',
Authorization: 'Bearer token',
'Content-Type': 'application/json'
}
}
request(options, function (error, response) {
if (error) throw new Error(error)
console.log(response.body)
})
{
"status": 1,
"balance": 0,
"currency": "RIAL"
}
در صورت نیاز به بالا بردن موجودی کیف پول مشتری میتوانید با استفاده از این سرویس، یک تراکنش واریز به حساب، برای مشتری ثبت نمایید.
نام انگلیسی کسب و کار است
پارامتر یکتای مشتری میباشد که میتوانید کدملی، موبایل یا آیدی مشتری که از طریق سرویس مشاهده لیست مشتریان قابل دسترسی میباشد را ارسال کنید.
مبلغی که میخواهید به کیف پول مشتری اضافه شود
توضیحات مربوط به تراکنش واریزی
شماره پیگیری غیرتکراری
var request = require('request')
var options = {
method: 'POT',
url: '/v2/business/:business/customers/:customer/wallet/deposit',
headers: {
Accept: 'application/json',
Authorization: 'Bearer token',
'Content-Type': 'application/json'
}
body: JSON.stringify({
amount: 10000,
track_id: "iury489-trthiu8-tritr7u8-7685678",
comment: "تست"
})
}
request(options, function (error, response) {
if (error) throw new Error(error)
console.log(response.body)
})
{
"id": "0cf235d0-d48b-11ea-86cd-298ec898a9bd",
"track_id": "123456",
"status": 1,
"message": "واریز با موفقیت انجام شد",
"balance": 1000,
"currency": "RIAL",
"comment": "comment"
}
در صورت نیاز به پایین آرودن موجودی کیف پول مشتری میتوانید با استفاده از این سرویس، یک تراکنش برداشت از کیف پول مشتری ثبت نمایید.
نام انگلیسی کسب و کار است
پارامتر یکتای مشتری میباشد که میتوانید کدملی، موبایل یا آیدی مشتری که از طریق سرویس مشاهده لیست مشتریان قابل دسترسی میباشد را ارسال کنید.
مبلغی که میخواهید به کیف پول مشتری اضافه شود
توضیحات مربوط به تراکنش واریزی
شماره پیگیری غیرتکراری
var request = require('request')
var options = {
method: 'POT',
url: '/v2/business/:business/customers/:customer/wallet/withdraw',
headers: {
Accept: 'application/json',
Authorization: 'Bearer token',
'Content-Type': 'application/json'
}
body: JSON.stringify({
amount: 10000,
track_id: "iury489-trthiu8-tritr7u8-7685678",
comment: "تست"
})
}
request(options, function (error, response) {
if (error) throw new Error(error)
console.log(response.body)
})
{
"id": "0cf235d0-d48b-11ea-86cd-298ec898a9bd",
"track_id": "123456",
"status": 1,
"message": "برداشت با موفقیت انجام شد",
"balance": 1000,
"currency": "RIAL",
"comment": "comment"
}
در این بخش اطلاعات تراکنشهای مشتریان قابل مشاهده میباشد.
POST /v2/business/:business/customers/:customer/transactions
این سرویس جهت احراز هویت طرفحسابهای پذیرندگان وندار ارائه شده است که توسط آن، پذیرندگان میتوانند اطلاعات هویتی مخاطبان خود را مورد سنجش قرار دهند.
POST /v3/business/:business/customers/:customer/authentication/kyc
POST /v3/business/:business/customers/:customer/authentication/shahkar
این سرویس جهت ایجاد شناسه واریز و انتصاب آن به طرفحسابهای پذیرندگان وندار ارائه شده است که توسط آن، پذیرندگان میتوانند به ازای هر مشتری یک شناسه واریز منحصر به فرد ایجاد کنند.
GET /v3/business/:business/customers/:customer/cash-in-code
POST /v3/business/:business/customers/:customer/ibans
GET /v3/business/:business/customers/:customer/ibans
DELETE /v3/business/:business/customers/:customer/ibans
POST /v3/business/:business/customers/:customer/ibans/:iban/inquiry
POST /v3/business/:business/customers/:customer/ibans/:iban/set-default
POST /v3/business/:business/customers/:customer/cards
GET /v3/business/:business/customers/:customer/cards
DELETE /v3/business/:business/customers/:customer/cards/:card
POST /v3/business/:business/customers/:customer/cards/:card/inquiry
POST /v3/business/:business/customers/:customer/cards/:card/set-default
POST /v3/business/:business/customers/:customer/cards/to-iban
این سرویس جهت گزارش گیری از طرفحسابهای پذیرندگان وندار ارائه شده است که توسط آن، پذیرندگان میتوانند گزارش های مربوط به مخاطبان خود را مشاهده کنند.
GET /v2/business/:business/customers/:customer/logs
سرویس های استعلامی
POST /v3/business/:business/customers/inquiry/kyc
POST /v3/business/:business/customers/inquiry/shahkar
POST /v3/business/:business/customers/inquiry/nid
POST /v3/business/:business/customers/inquiry/nid-image
POST /v3/business/:business/customers/inquiry/fida
POST /v3/business/:business/customers/inquiry/postal-code
POST /v3/business/:business/customers/inquiry/company-information
POST /v3/business/:business/customers/inquiry/company-signature
POST /v3/business/:business/customers/inquiry/national-code-iban
POST /v3/business/:business/customers/inquiry/match-mobile-card
POST /v3/business/:business/customers/inquiry/iban
POST /v3/business/:business/customers/inquiry/card
با استفاده از سرویس روند، میتوانید کارتهای بانکی با طرح و لوگوی اختصاصی کسبوکار خود برای کاربران صادر کنید و تمامی عملیات بانکی مانند انتقال وجه، پایا، ساتنا، دریافت موجودی، پیگیری تراکنشها و مشاهده صورتحساب را از طریق API انجام دهید.
قبل از فراخوانی سرویسهای روند، لازم است تنظیمات مربوط به کسبوکار شما تعریف شود.
POST /v1/business/:business/ravand/set-config
برای صدور کارت، باید لیستی از اطلاعاتی مانند استانها، شهرها، کد صنف، تحصیلات و مشاغل را دریافت کنید. با ارسال شناسههای مربوط به این اطلاعات، میتوانید جزئیات اطلاعات کاربران خود را بهروزرسانی کنید.
GET /v1/business/:business/ravand/provinces
GET /v1/business/:business/ravand/cities
GET /v1/business/:business/ravand/guilds
GET /v1/business/:business/ravand/educations
GET /v1/business/:business/ravand/occupations
برای صدور کارت، این سرویس ها باید فراخوانی شوند: ایجاد کارت، بهروزرسانی اطلاعات، آپلود مدارک هویتی، دریافت متن ویدیوی احراز هویت، نهاییسازی درخواست و پیگیری درخواست. با استفاده از این سرویسها میتوانید فرآیند صدور کارت را برای کاربران خود بهطور کامل انجام دهید
POST /v1/business/:business/ravand/provider/:provider/cardholder
PUT /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id
GET /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/video-caption
POST /v1/business/business/ravand/provider/:provider/cardholder/:cardholder_id/upload
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/finalize
GET /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/inquiry
بعد از دریافت کارت فیزیکی، جهت فعالسازی کارت می توانید از این سرویس ها استفاده کنید.
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/card/activate/token
GET /v1/redirect/card/activate/:token
بعد از فعالسازی کارت، جهت تغییر رمز اول کارت می توانید از این سرویس ها استفاده کنید.
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/card/change-pin/token
GET /v1/redirect/card/change-pin/:token
بعد از فعالسازی کارت، در صورت نیاز به مسدود سازی کارت می توانید از این سرویس ها استفاده کنید.
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/card/block/token
GET /v1/redirect/card/block/:token
جهت انجام عملیات کارت می توانید از این سرویس ها استفاده کنید.
GET /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/card/status?card_number=:card_number
بعد از فعالسازی کارت، جهت انجام عملیات بانکی می توانید از این سرویس ها استفاده کنید.
GET /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/accounts-info
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/balance
GET /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/bank-statement
GET /v1/business/:business/ravand/reasons
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/transfer
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/transfer/retry-otp
POST /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/transfer/confirm-otp
GET /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/transfer/inquiry
GET /v1/business/:business/ravand/provider/:provider/cardholder/:cardholder_id/transfer/inquiry/paya-satna