Navigation
curl php

مقدمه

این راهنما نحوه اتصال برنامه نویسان به API‌های جیبی‌مو را توضیح می‌دهد.

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

وب سرویس‌های پایه

اعتبار‌سنجی

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


curl -X POST https://api.jibimo.com/v2/auth/token\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d'{
"username": "jibimo",
"password": "************",
"secret_key": "4LjCy8************",
"scopes": ["iban-inquiry"]
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/auth/token', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/auth/token

ساختار ورودی

عنوان نوع اجباری توضیحات
username string بله نام کاربری درخواست کننده
password string رمزعبور رمز‌عبور درخواست کننده
secret_key string بله کلید امنیتی
scopes [string] خیر برای مشخص شدن سطح دسترسی

نکته : شما می‌توانید secret_key را با ورود به پنل خود و در قسمت وب‌سرویس‌ها دریافت کنید.

نکته : مقدار scopes در توضیحات API هر قسمت وجود دارد.

خروجی کد وضعیت 200

{
"token_type": "Bearer",
"expires_in": 1800,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9",
"refresh_token": "def502008c9703c9cd4b1b564111eb3dca340fc2f6e995aef4d005a8"
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
401 عدم اعتبار‌سنجی
403 عدم دسترسی

ساختار خروجی

عنوان نوع توضیحات
token_type string نوع توکن بازگشتی
expires_in number زمان انقضای توکن
access_token string توکن
refresh_token string توکن بازیابی

بازیابی توکن

از طریق ارسال پارامتر‌های زیر به صورت POST به آدرس مشخص شده می‌توانید توکن اعتبار‌سنجی خود را بازیابی کنید.


curl -X POST https://api.jibimo.com/v2/auth/token/refresh\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d'{
"refresh_token": "def502005c9708c9cd4b1b564111eb3dca340fc2"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/auth/token/refresh', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/auth/token/refresh

ساختار ورودی

عنوان نوع اجباری توضیحات
refresh_token string بله توکن بازیابی

در خروجی عملیات اعتبار‌سنجی برای شما refresh_token هم برگردانده می‌شود که از طریق ارسال این مقدار می‌توانید عملیات بازیابی توکن را انجام دهید و توکن جدیدی دریافت کنید.

خروجی کد وضعیت 200

{
"token_type": "Bearer",
"expires_in": 3600,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9",
"refresh_token": "def502008c9703c9cd4b1b564111eb3dca340fc2f6e995aef4d005a8"
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق

ساختار خروجی

عنوان نوع توضیحات
token_type string نوع توکن بازگشتی
expires_in number زمان انقضای توکن
access_token string توکن
refresh_token string توکن بازیابی

وضعیت موجودی

با فراخوانی آدرس زیر به صورت GET و ارسال توکن دریافتی در Header درخواست به عنوان Authorization می‌توانید موجودی حساب خود را دریافت کنید.


curl -X GET https://api.jibimo.com/balance \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/api/business/balance', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/api/business/balance

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
401 عدم اعتبار‌سنجی

ساختار خروجی

عنوان نوع توضیحات
balance string موجودی
reserved string موجودی رزرو شده

درگاه پرداخت

خدمات درگاه پرداخت ذینفعان مختلفی را درگیر می‌کند. از یک سو تجربه پیاده‌سازی توسط برنامه‌نویسان، از سوی دیگر تجربه کسب‌وکار پس از عملیاتی شدن درگاه بسیار حائز اهمیت است.

درگاه پرداخت جیبی‌مو به گونه‌ای طراحی شده است که برنامه نویسان در سریع‌ترین زمان ممکن قادر به پیاده‌سازی آن باشند و برای تمام شرایط پاسخ مناسب دریافت کنند.

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

وب سرویس‌ها به صورت Restful هستند.

اعتبار‌سنجی

جهت استفاده از این وب سرویس باید مراحل زیر را طی کنید:

۱- ثبت‌نام از طریق لینک app.jibimo.com

۲- ثبت کسب‌وکار و انتظار جهت تائید کارشناسان

۳- ورود به پنل کسب‌وکار و ایجاد توکن

بعد از دریافت توکن می‌توانید برای فراخوانی API از آن استفاده کنید.

برای ارسال تمام درخواست‌ها باید توکن دریافتی را مانند مثال زیر در هدر X-API-KEY ارسال نمایید:

X-API-KEY: a7049f02-****-****-****-********53a4

درخواست تراکنش

در مرحله اول شما باید پارامترهای زیر را با متد POST به آدرسی که مشخص شده است ارسال کنید.


curl -X POST https://api.jibimo.com/v2/ipg/request \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'X-API-KEY: a7049f02-****-****-****-********53a4'\
-d '{
"amount": 10000,
"mobile_number": "+989000000000",
"return_url": "https://yourdomain.ir",
"redirect_method": "POST or GET",
"check_national_code": true,
"authorized_card_numbers":["6219861054552518","5041721097177903"],
"order_number": "12345678",
"full_name": "صبرا احمدی",
"customer_pays_wage": true
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-KEY' => 'a7049f02-****-****-****-********53a4',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/ipg/request', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/ipg/request

جهت انجام تراکنش با مبالغ تا سقف ۵ میلیارد ریال (۵۰۰ میلیون تومان) برای کسب‌و‌کارهای بیمه و بازارهای سرمایه علاوه بر پارامترهای ورودی موجود در جدول زیر، باید پارامترهای دیگری که در جدول پایین‌تر قرار دارد ارسال شود. جهت مشاهده‌ی جدول مربوطه بر روی این قسمت کلیک کنید.

ساختار ورودی

عنوان نوع اجباری توضیحات
amount number بله مبلغ تراکنش به ریال

برای کسب‌و‌کارهای معمولی:
حداقل ۱۰٫۰۰۰ ریال
حداکثر ۱٫۰۰۰٫۰۰۰٫۰۰۰ ریال

برای کسب‌وکارهای بیمه و بازارهای سرمایه:
حداقل ۱۰٫۰۰۰ ریال
حداکثر ۵٫۰۰۰٫۰۰۰٫۰۰۰ ریال
mobile_number string خیر شماره موبایل مشتری جهت واکشی اطلاعات کارت - در صورتی که کارتی برای این شماره موبایل در دیتابیس شرکت پرداخت الکترونیک ذخیره شده باشد لیست کارت‌ها در درگاه بانکی نمایش داده می‌شود تا در صورت نیاز کاربر با انتخاب آن دیگر نیازی به وارد کردن اطلاعات کارت نداشته باشد. نکته : حتماً از شماره موبایل خریدار استفاده کنید و به هیچ وجه از یک شماره موبایل ثابت در تمام پرداخت‌ها استفاده نکنید.
return_url string بله آدرس صفحه‌ای از سایت شما برای بازگشت کاربر از درگاه بعد از تکمیل پرداخت و یا انصراف از آن
redirect_method string خیر این فیلد مقدار های (GET / POST) را دریافت کرده و پس از عملیات درگاه پرداخت با متدی که کاربر (GET or POST) ارسال کرده است به return_url ریدایرکت میشود. حالت پیش فرض این فیلد GET است.
description string خیر توضیحات
check_national_code boolean خیر در صورتی که نیاز دارید که کد ملی دارنده کارت با کد ملی مربوط به صاحب شماره موبایل مطابقت داده شود و در صورت عدم تطابق، تراکنش انجام نگردد مقدار این فیلد را true ارسال نمایید. در صورتی که این فیلد true ارسال شود، شماره موبایل هم اجباری خواهد شد.
authorized_card_numbers array خیر در صورتی که نیاز دارید تراکنش کاربر فقط با شماره کارت‌های مشخصی امکان پذیر باشد و در غیر این صورت تراکنش انجام نگردد, این شماره کارت‌ها به صورت آرایه‌ای از طریق این فیلد ارسال گردد.
order_number integer خیر در صورت نیاز می‌توانید شماره سفارش/فاکتور را در اطلاعات تراکنش برای جیبی‌مو ارسال بفرمایید و در گزارش‌های خروجی درگاه مشاهده نمایید.
full_name string خیر در صورتی که نیاز دارید نام و نام خانوادگی پرداخت کننده وجه به درگاه پرداخت را در اطلاعات تراکنش در گزارشات نمایش داده شود می‌توانید آن را ارسال بفرمایید.
customer_pays_wage boolean خیر این فیلد برای امکان تعیین کارمزد سمت مشتری از طریق وب سرویس درگاه می‌باشد. با ست کردن این پارامتر مبلغ کارمزدی که مشتری باید پرداخت کند به مبلغ تراکنش اضافه میگردد.

ساختار ورودی برای تراکنش‌های تا سقف ۵ میلیارد ریال (۵۰۰ میلیون تومان)

پارامترهای زیر باید همراه با پارامتر‌های موجود در جدول بالا ارسال شوند.

عنوان نوع اجباری توضیحات
personality_type number بله نوع شخصیت. یک عدد یک رقمی از 0 تا 2 ارسال شود.

اشخاص حقیقی: 0
اشخاص حقوقی: 1
اتباع خارجی: 2
national_id number بله شناسه هویتی دارنده کارت.

در این فیلد برای اشخاص حقیقی کد ملی ۱۰ رقمی، برای اشخاص حقوقی ایرانی، شناسه ملی اشخاص حقوقی ۱۱ رقمی، و برای اتباع خارجی، شناسه فراگیر اتباع خارجی ۱۰ تا ۱۶ رقمی قرار می‌گیرد.
third_party_code number بله این پارامتر از سمت شاپرک به کسب‌وکار داده می‌شود.
init_vector string بله این پارامتر که گاها با اسم (IV) شناخته می‌شود، برای رمزنگاری شناسه ملی برای احراز هویت اشخاص توسط شاپرک منحصرا برای کسب و کار شما ایجاد می‌شود و می‌بایست از شاپرک دریافت شود.
secret_key string بله این پارامتر نیز همانند پارامتر بالا، برای رمزنگاری شناسه ملی برای احراز هویت اشخاص توسط شاپرک منحصرا برای کسب و کار شما ایجاد می‌شود و می‌بایست از شاپرک دریافت شود.

خروجی کد وضعیت 200

{
"trx": "transaction_code",
"link": "https://api.jibimo.com/v2/ipg/redirect/MjM1ODM1"
}

خروجی کد وضعیت 424

{
"errors": {
"token": "خطا در پرداخت, چند ثانیه دیگر تلاش کنید"
}
}

وضعیت پاسخ

کد وضعیت (http status code) توضیحات
200 عملیات موفق
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
trx string شناسه تراکنش که برای پیگیری و عملیات verify استفاده خواهد شد
link string لینک هدایت کاربر به درگاه بانک
amount number مبلغ نهایی تراکنش
original_amount number مبلغ اصلی تراکنش. در صورتی که پرداخت کارمزد تراکنش به عهده مشتری شما باشد(تعیین از طریق پشتیبانی), این مبلغ با کارمزد مشتری جمع شده و به بانک ارسال میشود بنابراین مبلغ نهایی تراکنش (amount) در جیبی‌مو و در بانک برابر original_amount به اضافه کارمزد مشتری (wage) خواهد بود. در غیر این صورت این مبلغ همان مبلغ تهایی تراکنش (amount) می‌باشد.
wage number مبلغ کارمزد که مشتری شما اضافه بر مبلغ تراکنش بر پرداخت می‌کند. (این پارامتر زمانی ارسال می‌شود که پرداخت کارمزد توسط مشتری شما باشد)

بازگشت به سایت پذیرنده

بعد از اتمام عملیات پرداخت، درصورتیکه پرداخت با موفقیت انجام شده باشد، پرداخت کننده به آدرسی که پذیرنده در return_url مشخص کرده بود به همراه پارامتر‌هایی که در زیر مشخص شده است منتقل می‌شود.

پارامتر‌های ارسالی با متد GET

عنوان نوع توضیحات
status number وضعیت (۱ موفق و ۰ ناموفق)
state_code number کد وضعیت
trx number شناسه تراکنشی که در مرحله اول دریافت کرده‌اید
amount number مبلغ با کارمزد
original_amount number مبلغ بدون کارمزد
order_number integer شماره سفارش/فاکتور
full_name string نام و نام خانوادگی پرداخت کننده وجه به درگاه پرداخت

پارامتر‌های ارسالی با متد POST

عنوان نوع توضیحات
status number وضعیت (۱ موفق و ۰ ناموفق)
state_code number کد وضعیت
trx number شناسه تراکنشی که در مرحله اول دریافت کرده‌اید
amount number مبلغ با کارمزد
original_amount number مبلغ بدون کارمزد
order_number integer شماره سفارش/فاکتور
full_name string نام و نام خانوادگی پرداخت کننده وجه به درگاه پرداخت

تائید تراکنش

پس از خرید موفقِ مشتری و بازگشت وی به سایت شما (return_url)، به مدت ۳۰ دقیقه فرصت دارید تراکنش انجام شده را verify کنید و به اتمام برسانید. در غیر این این صورت پس از گذشت این زمان تراکنش رد می‌شود و مبلغ به حساب خریدار عودت داده می‌شود.

برای اینکار شما باید پارامترهای زیر را با متد POST به آدرسی که مشخص شده است ارسال کنید.


curl -X POST https://api.jibimo.com/v2/ipg/verify \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'X-API-KEY: a7049f02-****-****-****-********53a4'\
-d'{
"trx": "MjM1ODMw"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-KEY' => 'a7049f02-****-****-****-********53a4',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/ipg/verify', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/ipg/verify

ساختار ورودی

عنوان نوع اجباری توضیحات
trx string بله شناسه تراکنشی که در مرحله اول دریافت کرده‌اید

خروجی کد وضعیت 200

{
"status": 1,
"state_code": 100,
"amount": 10000,
"mobile_number": "+989000000000",
"card_number": "621986******3238",
"card_hash": "6BA39385AF1599EB4BFADA1DC3B7A9976DB7B248E93CC4D89237650D472D8391",
"date": "2021-03-12 20:57:19",
"card_owner": "محمد محمدی",
"tracking_id": "MjM1ODMw",
"trace_number": "19145931111",
"order_number": "12345678",
"full_name": "صبرا احمدی",
"rrn": "21954138038",
"res_num": "1682436604343284453"

خروجی کد وضعیت 424

{
"status": 0,
"state_code": -6,
"amount": 10000,
"mobile_number": "+989000000000",
"card_number": null,
"card_hash": null,
"date": null,
"card_owner": "محمد محمدی",
"tracking_id": "MjM1ODMw",
"rrn": "null",
"res_num: "null"
}

وضعیت پاسخ

کد وضعیت(http status code) توضیحات
200 عملیات موفق
424 خطای بانک (چند ثانیه بعد مجددا تلاش کنید)

ساختار خروجی

عنوان نوع توضیحات
status number وضعیت (۱ موفق و ۰ ناموفق)
state_code number کد وضعیت
amount number مبلغ نهایی تراکنش
original_amount number مبلغ اصلی تراکنش. در صورتی که پرداخت کارمزد تراکنش به عهده مشتری شما باشد(تعیین از طریق پشتیبانی), این مبلغ با کارمزد مشتری جمع شده و به بانک ارسال میشود بنابراین مبلغ نهایی تراکنش (amount) در جیبی‌مو و در بانک برابر original_amount به اضافه کارمزد مشتری (wage) خواهد بود. در غیر این صورت این مبلغ همان مبلغ تهایی تراکنش (amount) می‌باشد.
wage number کارمزد مشتری شما, فقط زمانی ارسال می‌شود که پرداخت کارمزد بر عهده مشتری باشد.
mobile_number string شماره موبایل وارد شده زمان ساخت تراکنش
card_number string شماره کارت mask شده (۶ رقم از شماره کارت به * تبدیل می‌شود)
card_hash string شماره کارت هش شده با الگوریتم SHA-256
date string زمان انجام تراکنش
card_owner string نام مالک
tracking_id string شناسه تراکنش
trace_number string شماره پیگیری
verified_at string زمان verify تراکنش
order_number integer شماره سفارش/فاکتور
full_name string نام و نام خانوادگی پرداخت کننده وجه به درگاه پرداخت
rrn integer شماره مرجع
res_num integer شناسه خرید

مقادیر کد وضعیت (state_code)

کد توضیحات
0 کاربر هنوز وارد درگاه نشده
3- کاربر در درگاه بانکی روی انصراف کلیک کرده است
4- خطا در انجام تراکنش از سمت بانک (مجددا تلاش کنید)
6- خطا در انجام عملیات تایید از سمت بانک (چند ثانیه بعد مجددا تلاش کنید)
7- مدت زمان verify تراکنش منقضی شده است(پول به حساب بانکی کاربر عودت خواهد شد)
99 پول از حساب کاربر برداشت شده و منتظر verify شدن است
100 تراکنش با موفقیت تایید شد
101 تراکنش قبلاً تایید شده است

استعلام وضعیت تراکنش

با ارسال پارامتر‌های زیر به صورت GET می‌توانید آخرین وضعیت یک تراکنش را دریافت نمایید.


curl -X GET https://api.jibimo.com/v2/ipg/trx/{trx} \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'X-API-KEY: a7049f02-****-****-****-********53a4'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-KEY' => 'a7049f02-****-****-****-********53a4',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/v2/ipg/trx/{trx}', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/ipg/trx/{trx}

ساختار ورودی

عنوان نوع اجباری توضیحات
trx number بله شناسه تراکنش

خروجی کد وضعیت 200

{
"status": 1,
"state_code": 100,
"amount": 10000,
"mobile_number": "+989000000000",
"card_number": "621986******3238",
"card_hash": "6BA39385AF1599EB4BFADA1DC3B7A9976DB7B248E93CC4D89237650D472D8391",
"date": "2021-03-12 20:57:19",
"card_owner": "محمد محمدی",
"tracking_id": "MjM1ODMw",
"trace_number": "19145931111",
"rrn": "21954138038",
"res_num: "1682436604343284453"
}

خروجی کد وضعیت 424

{
"status": 0,
"state_code": -6,
"amount": 10000,
"mobile_number": "+989000000000",
"card_number": null,
"card_hash": null,
"date": null,
"card_owner": "محمد محمدی",
"tracking_id": "MjM1ODMw",
rrn: null,
res_num: null
}

وضعیت پاسخ

کد وضعیت (http status code) توضیحات
200 عملیات موفق
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
status number وضعیت (۱ موفق و ۰ ناموفق)
state_code number کد وضعیت
amount number مبلغ نهایی تراکنش
original_amount number مبلغ اصلی تراکنش. در صورتی که پرداخت کارمزد تراکنش به عهده مشتری شما باشد(تعیین از طریق پشتیبانی), این مبلغ با کارمزد مشتری جمع شده و به بانک ارسال میشود بنابراین مبلغ نهایی تراکنش (amount) در جیبی‌مو و در بانک برابر original_amount به اضافه کارمزد مشتری (wage) خواهد بود. در غیر این صورت این مبلغ همان مبلغ تهایی تراکنش (amount) می‌باشد.
wage number مبلغ کارمزد که مشتری شما اضافه بر مبلغ تراکنش بر پرداخت می‌کند. (این پارامتر زمانی ارسال می‌شود که پرداخت کارمزد توسط مشتری شما باشد)
mobile_number string شماره موبایل وارد شده زمان ساخت تراکنش
card_number string شماره کارت mask شده (۶ رقم از شماره کارت به * تبدیل می‌شود)
card_hash string شماره کارت هش شده با الگوریتم SHA-256
date string زمان انجام تراکنش
card_owner string نام مالک
tracking_id string شناسه تراکنش
trace_number string شماره پیگیری
rrn integer شماره مرجع
res_num integer شناسه خرید

لیست تراکنش‌ها

با ارسال پارامتر‌های زیر به صورت GET می‌توانید لیست تراکنش‌ها را دریافت نمایید.


curl -X GET https://api.jibimo.com/v2/trx/list?status=Accepted\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'X-API-KEY: a7049f02-****-****-****-********53a4'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-KEY' => 'a7049f02-****-****-****-********53a4',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/v2/trx/list?status=Accepted', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/trx/list

ساختار ورودی

عنوان نوع اجباری توضیحات
status string خیر وضعیت تراکنش
from_date string خیر تاریخ شروع به صورت میلادی با فرمت 12:00:00 10-06-2020
to_date string خیر تاریخ پایان به صورت میلادی با فرمت 12:00:00 20-06-2020
page number خیر شماره صفحه

خروجی کد وضعیت 200

{
"data": [
{
"type": "خرید",
"trace_number": 1650383628260401463,
"tracking_id": "MjM1ODMw",
"card_owner": "محمد محمدی",
"payer": "+98918*******",
"amount": 10000,
"status": "Accepted",
"card_number": "621986******1221",
"oredr_number": 12345678,
"full_name": یزدان مشرفی,
"rrn": "21954138038",
"res_num": "1682436604343284453",
"created_at": "2021-07-05 18:14:54",
"updated_at": "2021-07-05 18:14:54"
}
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق

ساختار خروجی

عنوان نوع توضیحات
type string نوع تراکنش
trace_number number شناسه پیگیری
tracking_id string شناسه تراکنش
card_owner string نام صاحب کارت
payer string شماره موبایل پرداخت‌کننده
amount number مبلغ
status string وضعیت تراکنش
card_number string شماره کارت
created_at string زمان ایجاد
updated_at string زمان تغییر
order_number integer شماره سفارش/فاکتور
full_name string نام و نام خانوادگی پرداخت کننده وجه به درگاه پرداخت
rrn integer شماره مرجع
res_num integer شناسه خرید

مقادیر وضعیت تراکنش (status)

عنوان توضیحات
Accepted پذیرفته شده
Rejected رد شده
Pending در انتظار تعیین وضعیت

گزارش سرجمع تراکنش‌ها

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


curl -X GET https://api.jibimo.com/v2/trx/summary?status=Accepted\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'X-API-KEY: a7049f02-****-****-****-********53a4'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-KEY' => 'a7049f02-****-****-****-********53a4',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/v2/trx/summary?status=Accepted', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

>

https://api.jibimo.com/v2/trx/summary

ساختار ورودی

عنوان نوع اجباری توضیحات
status string خیر وضعیت تراکنش
from_date string خیر تاریخ شروع به صورت میلادی با فرمت 10-06-2020
to_date string خیر تاریخ پایان به صورت میلادی با فرمت 20-06-2020

خروجی کد وضعیت 200

{
"total_amount": "70000",
"total_count": 10
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق

ساختار خروجی

عنوان نوع توضیحات
total_amount string مجموع مبالغ تراکنش‌ها
total_count number مجموع تعداد تراکنش‌ها

احراز هویت دیجیتال

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

وب سرویس‌ها به صورت Restful هستند.

اعتبار‌سنجی

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


curl -X POST https://api.jibimo.com/v2/auth/token\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d'{
"username": "jibimo",
"password": "************",
"secret_key": "4LjCy8************",
"scopes": ["iban-inquiry"]
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/auth/token', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/auth/token

ساختار ورودی

عنوان نوع اجباری توضیحات
username string بله نام کاربری درخواست کننده
password string رمزعبور رمز‌عبور درخواست کننده
secret_key string بله کلید امنیتی
scopes [string] خیر برای مشخص شدن سطح دسترسی

نکته : شما می‌توانید secret_key را با ورود به پنل خود و در قسمت وب‌سرویس‌ها دریافت کنید.

نکته : مقدار scopes در توضیحات API هر قسمت وجود دارد.

خروجی کد وضعیت 200

{
"token_type": "Bearer",
"expires_in": 1800,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9",
"refresh_token": "def502008c9703c9cd4b1b564111eb3dca340fc2f6e995aef4d005a8"
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
401 عدم اعتبار‌سنجی
403 عدم دسترسی

ساختار خروجی

عنوان نوع توضیحات
token_type string نوع توکن بازگشتی
expires_in number زمان انقضای توکن
access_token string توکن
refresh_token string توکن بازیابی

بازیابی توکن

از طریق ارسال پارامتر‌های زیر به صورت POST به آدرس مشخص شده می‌توانید توکن اعتبار‌سنجی خود را بازیابی کنید.


curl -X POST https://api.jibimo.com/v2/auth/token/refresh\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d'{
"refresh_token": "def502005c9708c9cd4b1b564111eb3dca340fc2"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/auth/token/refresh', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/auth/token/refresh

ساختار ورودی

عنوان نوع اجباری توضیحات
refresh_token string بله توکن بازیابی

در خروجی عملیات اعتبار‌سنجی برای شما refresh_token هم برگردانده می‌شود که از طریق ارسال این مقدار می‌توانید عملیات بازیابی توکن را انجام دهید و توکن جدیدی دریافت کنید.

خروجی کد وضعیت 200

{
"token_type": "Bearer",
"expires_in": 3600,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9",
"refresh_token": "def502008c9703c9cd4b1b564111eb3dca340fc2f6e995aef4d005a8"
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق

ساختار خروجی

عنوان نوع توضیحات
token_type string نوع توکن بازگشتی
expires_in number زمان انقضای توکن
access_token string توکن
refresh_token string توکن بازیابی

استعلام شماره شبا

با ارسال پارامتر‌های زیر به صورت POST می‌توانید عملیات استعلام یک شماره شبا را انجام دهید.


curl -X POST https://api.jibimo.com/v2/iban-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: */*' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"iban": "IR330170000000200150094006"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/iban-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/iban-inquiry

scope: iban-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
iban string بله شماره شبا

خروجی کد وضعیت 200

{
"owners": [
{
"firstName": "محمد",
"lastName": "محمدی"
}
],
"account_number": "838-***-******-*",
"account_status": "ACTIVE",
"account_comment": "سپرده سرمايه گذاري کوتاه مدت",
"bank": {
"name": "سامان",
"logo": "https://api.jibimo.com/storage//bank/13/logo/saman.png"
}
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"شبا نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"بانک پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
owners [object] اطلاعات صاحبان حساب
account_number string شماره حساب
account_status string وضعیت حساب
account_comment string توضیحات
bank object اطلاعات بانک

ساختار خروجی owners

عنوان نوع توضیحات
firstName string نام
lastName string نام خانوادگی
nationalIdentifier string کد ملی صاحب حساب
customerType string نوع مشتری

نکته : با توجه به اینکه ممکن است استعلام توسط بانک‌های مختلف صورت بگیرد اطلاعات قسمت owners می‌تواند شامل موارد کد ملی صاحب حساب و نوع مشتری نباشد.

ساختار خروجی bank

عنوان نوع توضیحات
name string نام
logo string لوگو

مقادیر وضعیت حساب (account_status)

کد وضعیت توضیحات
ACTIVE حساب فعال است
KHATA خطا
RAKED حساب غیر فعال است
MASDOD_BA_GHABELIAT_VARIZ مسدود با قابلیت واریز
MASDOD_BEDONE_GHABELIAT_VARIZ مسدود بدون قابلیت واریز
OTHER حالات دیگر

استعلام شماره شبا و تطبیق هویت

در این قسمت با ارسال پارامتر‌های زیر به صورت POST می‌توانید وضعیت تطابق شماره شبا استعلام شده با اطلاعات ورودی را بررسی کنید.


curl -X POST https://api.jibimo.com/v2/iban-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: */*' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"iban": "IR33017000****************",
"first_name": "محمد",
"last_name": "محمدی"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/iban-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/iban-inquiry

scope: iban-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
iban string بله شماره شبا
first_name string بله نام
last_name string بله نام خانوادگی

خروجی کد وضعیت 200

{
"owners": [
{
"firstName": "محمد",
"lastName": "محمدی"
}
],
"account_number": "838-***-******-*",
"account_status": "ACTIVE",
"account_comment": "سپرده سرمايه گذاري کوتاه مدت",
"bank": {
"name": "سامان",
"logo": "https://api.jibimo.com/storage//bank/13/logo/saman.png"
},
"matching": {
"first_name": 100,
"last_name": 100,
"full_name": 100,
"status": "match"
}
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"شبا نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"بانک پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
owners [object] اطلاعات صاحبان حساب
account_number string شماره حساب
account_status string وضعیت حساب
account_comment string توضیحات
bank object اطلاعات بانک
matching object تطابق

ساختار خروجی owners

عنوان نوع توضیحات
firstName string نام
lastName string نام خانوادگی
nationalIdentifier string کد ملی صاحب حساب
customerType string نوع مشتری

نکته : با توجه به اینکه ممکن است استعلام توسط بانک‌های مختلف صورت بگیرد اطلاعات قسمت owners می‌تواند شامل موارد کد ملی صاحب حساب و نوع مشتری نباشد.

ساختار خروجی bank

عنوان نوع توضیحات
name string نام
logo string لوگو

ساختار خروجی matching

عنوان نوع توضیحات
first_name number درصد تطابق نام
last_name number درصد تطابق نام خانوادگی
full_name number درصد تطابق نام و نام خانوادگی
status string وضعیت تطابق

مقادیر وضعیت تطابق (status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

استعلام شماره حساب

با ارسال پارامتر‌های زیر به صورت POST می‌توانید عملیات استعلام یک شماره حساب را انجام دهید.


curl -X POST https://api.jibimo.com/v2/account-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: */*' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"account_number": "200*********",
"bank_code": "017"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/account-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/account-inquiry

scope: account-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
account_number string بله شماره حساب
bank_code string بله کد بانک (لیست کد بانک‌ها)

خروجی کد وضعیت 200

{
"iban": "IR33017000****************",
"owners": [
{
"firstName": "محمد",
"lastName": "محمدی"
}
],
"account_number": "838-***-******-*",
"account_status": "ACTIVE",
"account_comment": "سپرده سرمايه گذاري کوتاه مدت",
"bank": {
"name": "سامان",
"logo": "https://api.jibimo.com/storage//bank/13/logo/saman.png"
}
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"شبا نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"بانک پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
iban string شماره شبا
owners [object] اطلاعات صاحبان حساب
account_number string شماره حساب
account_status string وضعیت حساب
account_comment string توضیحات
bank object اطلاعات بانک

ساختار خروجی owners

عنوان نوع توضیحات
firstName string نام
lastName string نام خانوادگی
nationalIdentifier string کد ملی صاحب حساب
customerType string نوع مشتری

نکته : با توجه به اینکه ممکن است استعلام توسط بانک‌های مختلف صورت بگیرد اطلاعات قسمت owners می‌تواند شامل موارد کد ملی صاحب حساب و نوع مشتری نباشد.

ساختار خروجی bank

عنوان نوع توضیحات
name string نام
logo string لوگو

مقادیر وضعیت حساب (account_status)

وضعیت توضیحات
ACTIVE حساب فعال است
KHATA خطا
RAKED حساب غیر فعال است
MASDOD_BA_GHABELIAT_VARIZ مسدود با قابلیت واریز
MASDOD_BEDONE_GHABELIAT_VARIZ مسدود بدون قابلیت واریز
OTHER حالات دیگر

استعلام شماره حساب و تطبیق هویت

در این قسمت با ارسال پارامتر‌های زیر به صورت POST می‌توانید وضعیت تطابق شماره حساب استعلام شده با اطلاعات ورودی را بررسی کنید.


curl -X POST https://api.jibimo.com/v2/account-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: */*' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"account_number": "200*********",
"bank_code": "017",
"first_name": "محمد",
"last_name": "محمدی"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => '*/*',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/account-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/account-inquiry

scope: account-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
account_number string بله شماره حساب
bank_code string بله کد بانک (لیست کد بانک‌ها)
first_name string بله نام
last_name string بله نام خانوادگی

خروجی کد وضعیت 200

{
"iban": "IR33017000****************",
"owners": [
{
"firstName": "محمد",
"lastName": "محمدی"
}
],
"account_number": "838-***-******-*",
"account_status": "ACTIVE",
"account_comment": "سپرده سرمايه گذاري کوتاه مدت",
"bank": {
"name": "سامان",
"logo": "https://api.jibimo.com/storage//bank/13/logo/saman.png"
},
"matching": {
"first_name": 100,
"last_name": 100,
"full_name": 100,
"status": "match"
}
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"شبا نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"بانک پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
iban string شماره شبا
owners [object] اطلاعات صاحبان حساب
account_number string شماره حساب
account_status string وضعیت حساب
account_comment string توضیحات
bank object اطلاعات بانک
matching object تطابق

ساختار خروجی owners

عنوان نوع توضیحات
firstName string نام
lastName string نام خانوادگی
nationalIdentifier string کد ملی صاحب حساب
customerType string نوع مشتری

نکته : با توجه به اینکه ممکن است استعلام توسط بانک‌های مختلف صورت بگیرد اطلاعات قسمت owners می‌تواند شامل موارد کد ملی صاحب حساب و نوع مشتری نباشد.

ساختار خروجی bank

عنوان نوع توضیحات
name string نام
logo string لوگو

ساختار خروجی matching

عنوان نوع توضیحات
first_name number درصد تطابق نام
last_name number درصد تطابق نام خانوادگی
full_name number درصد تطابق نام و نام خانوادگی
status string وضعیت تطابق

مقادیر وضعیت تطابق (status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

استعلام شماره کارت

با ارسال پارامتر‌های زیر به صورت POST می‌توانید عملیات استعلام یک شماره کارت را انجام دهید.


curl -X POST https://api.jibimo.com/v2/card-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"card_number": 6104************
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/card-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/card-inquiry

scope: card-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
card_number number بله شماره کارت

خروجی کد وضعیت 200

{
"iban": "IR33017000****************",
"account_number": "838-***-******-*",
"owner": [
"firstName": "محمد",
"lastName": "محمدی"
],
"bank": {
"name": "سامان",
"logo": "https://api.jibimo.com/storage//bank/13/logo/saman.png"
}
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"شماره کارت نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"بانک پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
iban string شماره شبا
owner array اطلاعات صاحب حساب
account_number string شماره حساب
bank object اطلاعات بانک

نکته: در مواردی ممکن است شماره شبا مقدار null داشته باشد. برای اطلاع از بانک هایی که در خروجی شماره شبا را پشتیبانی می‌کنند اینجا کلیک کنید.

ساختار خروجی owner

عنوان نوع توضیحات
firstName string نام
lastName string نام خانوادگی

ساختار خروجی bank

عنوان نوع توضیحات
name string نام
logo string لوگو

استعلام شماره کارت و تطبیق هویت

در این قسمت با ارسال پارامتر‌های زیر به صورت POST می‌توانید وضعیت تطابق شماره کارت استعلام شده با اطلاعات ورودی را بررسی کنید.


curl -X POST https://api.jibimo.com/v2/card-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"card_number": 6104************,
"first_name": "محمد",
"last_name": "محمدی"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/card-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/card-inquiry

scope: card-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
card_number number بله شماره کارت
first_name string بله نام
last_name string بله نام خانوادگی

خروجی کد وضعیت 200

{
"owner": [
"firstName": "محمد",
"lastName": "محمدی"
],
"matching": {
"first_name": 100,
"last_name": 100,
"full_name": 100,
"status": "match"
}
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"شماره کارت نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"بانک پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای بانک

ساختار خروجی

عنوان نوع توضیحات
owner array اطلاعات صاحب حساب
matching object تطابق

ساختار خروجی owner

عنوان نوع توضیحات
firstName string نام
lastName string نام خانوادگی

ساختار خروجی matching

عنوان نوع توضیحات
first_name number درصد تطابق نام
last_name number درصد تطابق نام خانوادگی
full_name number درصد تطابق نام و نام خانوادگی
status string وضعیت تطابق

مقادیر وضعیت تطابق (status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

احراز هویت کد ملی

با ارسال پارامتر‌های زیر به صورت POST می‌توانید عملیات احراز هویت کد ملی را انجام دهید.


curl -X POST https://api.jibimo.com/v2/national-code-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"national_code": 265*******:
"birth_date": 1367-01-02,
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/national-code-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/national-code-inquiry

scope: national-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
national_code number بله کد ملی
birth_date string بله تاریخ تولد

خروجی کد وضعیت 200

{
"national_code": "265*******",
"owner": [
"firstName": "مجید",
"lastName": "آشوری"
]
"fatherName": محمدرضا,
"birthDate": "1367-01-02",
"alive": "true",
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"کد ملی نامعتبر است."
]
}
{
"success": false,
"errors": [
"تاریخ تولد نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"سرویس دهنده پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای سرویس دهنده

ساختار خروجی

عنوان نوع توضیحات
national_code number کد ملی
owner array اطلاعات هویتی
fatherName string نام پدر
birthDate string تاریخ تولد
alive boolean آیا در قید حیات است

ساختار خروجی owner

عنوان نوع توضیحات
firstName string نام
lastName string نام خانوادگی

احراز هویت کد ملی و تطبیق هویت

در این قسمت با ارسال پارامتر‌های زیر به صورت POST می‌توانید وضعیت احراز هویت کد ملی استعلام شده با اطلاعات ورودی را بررسی کنید.


curl -X POST https://api.jibimo.com/v2/national-code-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d '{
"national_code": 265*******,
"birth_date": 1367-01-02,
"first_name": "مجید",
"last_name": "آشوری"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/national-code-inquiry', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/national-code-inquiry

scope: national-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
national_code number بله کد ملی
birth_date string بله تاریخ تولد
first_name string بله نام
last_name string بله نام خانوادگی

خروجی کد وضعیت 200

{
"matching": {

"owner": [
"firstName": "مجید",
"lastName": "آشوری"
]
"first_name": 100,
"last_name": 100,
"full_name": 100,
"status": "match"
}
}

خروجی کد وضعیت 400

{
"success": false,
"errors": [
"کد ملی نامعتبر است."
]
}
{
"success": false,
"errors": [
"تاریخ تولد نامعتبر است."
]
}

خروجی کد وضعیت 424

{
"success": false,
"errors": [
"سرویس دهنده پاسخگو نیست."
]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
400 ورودی نامعتبر
403 خطای دسترسی
404 آدرس نامعتبر
424 خطای سرویس دهنده

ساختار خروجی

عنوان نوع توضیحات
owner array اطلاعات هویتی
first_name number درصد تطابق نام
last_name number درصد تطابق نام خانوادگی
full_name number درصد تطابق نام و نام خانوادگی
status string وضعیت تطابق

مقادیر وضعیت تطابق (status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

تطابق کد ملی و شماره موبایل

برای اینکار شما باید پارامترهای زیر را با متد POST به آدرسی که مشخص شده است ارسال کنید.


curl -X POST https://api.jibimo.com/v2/mobile-matching-inquiry \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'\
-d'{
"phone_number": "+989000000000",
"identification_no": "0311******",
"identification_type": 0
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'X-API-KEY' => 'a7049f02-****-****-****-********53a4',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/ipg/verify', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/mobile-matching-inquiry

ساختار ورودی

عنوان نوع اجباری توضیحات
phone_number string بله شماره موبایل برای شناسه مورد استعلام
identification_no string بله شناسه برای شماره موبایل مورد استعلام
identification_type integer بله نوع استعلام (0: کدملی، 5: شناسه ملی)

خروجی کد وضعیت 200

{
"is_match": true,
"message": null,
}

خروجی کد وضعیت 424

{
"is_match": null,
"message": "مشکلی سمت سرویس دهنده بوجود آمده.",
}

خروجی کد وضعیت 422

{
"message": "The given data was invalid."
"errors": {
"phone_number": [
"فرمت شماره موبایل اشتباه‌ است"
]
},
}

وضعیت پاسخ

کد وضعیت(http status code) توضیحات
200 عملیات موفق
424 عملیات ناموفق
422 معتبر نبودن داده‌های ورودی

ساختار خروجی

عنوان نوع توضیحات
is_match boolean وضعیت (true منطبق و false عدم تطابق)
message string پیام خطا درصورت عدم موفقیت

پرداخت گروهی

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

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

2- پس از ارسال تراکنش‌ها به بانک لحظه به لحظه از وضعیت تراکنش با خبر می‌شوید.

3- امکان ارسال رسید آنلاین به مشتری را خواهید داشت.

4- در صورت قطعی شدن واریزی به حساب مشتری یا عودت وجه توسط بانک بلافاصله با خبر خواهید شد.

5- امکان ارتباط با مشتری و تغییر حساب‌ها را خواهید داشت تا در صورت اصلاح توسط مشتری، مجدداً برای پرداخت اقدام کنید.

6- گزارشات مدیریتی و همچنین با جزئیات دقیق، امکان نظارت و کنترل روی وضعیت لحظه‌ای تمام تراکنش‌ها را در اختیار بخش مالی قرار خواهد داد.

7- سطوح دسترسی برای مدیران، پشتیبانان وجود دارد.

وب سرویس‌ها به صورت Restful هستند.

اعتبار‌سنجی

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


curl -X POST https://api.jibimo.com/v2/auth/token\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d'{
"username": "jibimo",
"password": "************",
"secret_key": "4LjCy8************",
"scopes": ["iban-inquiry"]
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/auth/token', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/auth/token

ساختار ورودی

عنوان نوع اجباری توضیحات
username string بله نام کاربری درخواست کننده
password string رمزعبور رمز‌عبور درخواست کننده
secret_key string بله کلید امنیتی
scopes [string] خیر برای مشخص شدن سطح دسترسی

نکته : شما می‌توانید secret_key را با ورود به پنل خود و در قسمت وب‌سرویس‌ها دریافت کنید.

نکته : مقدار scopes در توضیحات API هر قسمت وجود دارد.

خروجی کد وضعیت 200

{
"token_type": "Bearer",
"expires_in": 1800,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9",
"refresh_token": "def502008c9703c9cd4b1b564111eb3dca340fc2f6e995aef4d005a8"
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
401 عدم اعتبار‌سنجی
403 عدم دسترسی

ساختار خروجی

عنوان نوع توضیحات
token_type string نوع توکن بازگشتی
expires_in number زمان انقضای توکن
access_token string توکن
refresh_token string توکن بازیابی

بازیابی توکن

از طریق ارسال پارامتر‌های زیر به صورت POST به آدرس مشخص شده می‌توانید توکن اعتبار‌سنجی خود را بازیابی کنید.


curl -X POST https://api.jibimo.com/v2/auth/token/refresh\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d'{
"refresh_token": "def502005c9708c9cd4b1b564111eb3dca340fc2"
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/auth/token/refresh', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/auth/token/refresh

ساختار ورودی

عنوان نوع اجباری توضیحات
refresh_token string بله توکن بازیابی

در خروجی عملیات اعتبار‌سنجی برای شما refresh_token هم برگردانده می‌شود که از طریق ارسال این مقدار می‌توانید عملیات بازیابی توکن را انجام دهید و توکن جدیدی دریافت کنید.

خروجی کد وضعیت 200

{
"token_type": "Bearer",
"expires_in": 3600,
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9",
"refresh_token": "def502008c9703c9cd4b1b564111eb3dca340fc2f6e995aef4d005a8"
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق

ساختار خروجی

عنوان نوع توضیحات
token_type string نوع توکن بازگشتی
expires_in number زمان انقضای توکن
access_token string توکن
refresh_token string توکن بازیابی

ایجاد دسته

با ارسال پارامتر‌های زیر به صورت POST می‌توانید عملیات ایجاد دسته را انجام دهید.


curl -X POST https://api.jibimo.com/v2/batch-pay/create \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'\
-d'{
"title": "pardakh 13 aban",
"matching": true,
"conversion": true,
"validation": "active_account",
"pay_after_validation": true
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/batch-pay/create', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/batch-pay/create

ساختار ورودی

عنوان نوع اجباری توضیحات
title string بله نام دسته
unique_key string خیر کلید یکتای دسته | حداکثر ۳۶ کاراکتر
matching boolean بله اگر مقدار true داشته باشد عملیات تطبیق هویت انجام می‌شود
conversion boolean بله اگر مقدار true داشته باشد عملیات تبدیل حساب به شبا انجام می‌شود
validation string خیر حالت پرداخت (مشخص می‌کند که پرداخت‌ها با چه شرطی انجام شود)
pay_after_validation boolean بله به صورت پیش فرض true است اگر مقدار false داشته باشد پس از بررسی عملیات پرداخت را انجام نمی‌دهد

مقادیر حالت پرداخت (validation)

عنوان توضیحات
active_account در صورت افزودن آیتم به این دسته عملیات استعلام حساب انجام می‌شود و در صورتی که حساب موردی نداشته باشد پرداخت انجام خواهد شد
active_full_matched در صورت افزودن آیتم به این دسته عملیات استعلام حساب انجام می‌شود و در صورتی که مشخصات فرد با اطلاعات ورودی کاملا یکی باشد عملیات پرداخت انجام خواهد شد
active_partial_matched در صورت افزودن آیتم به این دسته عملیات استعلام حساب انجام می‌شود و در صورتی که مشخصات فرد با اطلاعات ورودی کاملا یکی هم نباشد عملیات پرداخت انجام خواهد شد

نکته : در صورتی که نوع بیزینس از نوع امضاداری باشد مقدار pay_after_validation نمی‌تواند true باشد در این حالت امکان پرداخت پس از اعتبارسنجی وجود ندارد.

نکته : در صورتی که pay_after_validation برابر true باشد مقدار validation اجباری است.

نکته : در صورتی که pay_after_validation برابر false باشد مقدار validation باید null باشد.

نکته : در حالت active_partial_matched تطابق 90 درصد به بالا پرداخت خواهد شد که در اینصورت عملیات دارای ریسک است.

نکته : در صورتی که pay_after_validation برابر false باشد آیتم ها به دسته اضافه می‌شوند ولی عملیات پرداخت انجام نمی‌شود. در این حالت می توانید پس از ورود به پنل کاربری در بخش پرداخت گروهی از دکمه تاریخچه به تاریخچه پرداخت ها بروید و با انتخاب گروهی که ساخته‌اید آن دسته وارد بخش آماده سازی و پرداخت شود و با زدن دکمه پرداخت همه آیتم‌های مدنظر برای پرداخت ارسال شوند.

خروجی کد وضعیت 200

{
"batch_id": 1233,
"title": "pardakht 13 aban"
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
403 عدم دسترسی

ساختار خروجی

عنوان توضیحات
batch_id شناسه دسته ایجاد شده
title عنوان دسته

افزودن آیتم به دسته

با ارسال پارامتر‌های زیر به صورت POST می‌توانید عملیات افزودن آیتم جدید به دسته را انجام دهید.

نکته : در آدرس بالا batch همان فیلد batch_id (شناسه دسته ایجاد شده) است که در خروجی مرحله قبل (ایجاد دسته) دریافت کرده‌اید.


curl -X POST https://api.jibimo.com/v2/batch-pay/{batch}/items/create\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'\
-d '{
"data": [
{
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"row": 3,
"name": "محمد",
"family": "محمدی",
"amount": 12000,
"iban": "IR33017000****************",
"account": "838-***-******-*",
"bank_code": "2503",
"mobile": "091212458978",
"national_code": "0311******",
"description": "string",
"optional": "string"
}
]
}'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('POST','https://api.jibimo.com/v2/batch-pay/{batch}/items/create', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/batch-pay/{batch}/items/create

نمونه‌ای از پارامتر ارسالی

{
"data": [
{
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"row": 3,
"name": "محمد",
"family": "محمدی",
"amount": 12000,
"iban": "IR33017000****************",
"account": "838-***-******-*",
"bank_code": "2503",
"mobile": "091212458978",
"national_code": "0311******",
"description": "string",
"optional": "string"
}
]
}

ساختار ورودی

عنوان نوع اجباری توضیحات
uuid string بله شناسه منحصر به فرد
row number بله شماره ردیف (به منظور مدیریت بهتر در پنل و گزارشات خروجی)
name string بله نام
family string بله نام خانوادگی
amount number بله مبلغ
iban string بله شماره شبا
account string خیر (در صورتی که iban داده نشود اجباریست.) شماره حساب
bank_code string خیر (در صورتی که iban داده نشود اجباریست.) کد بانک یا نام بانک
mobile string خیر شماره موبایل
national_code string خیر کد ملی
description string خیر توضیحات
optional string خیر توضیحات

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

نکته : وجود یکی از موارد نام و یا نام خانوادگی اجباری است.

نکته : وجود یکی از موارد شماره شبا و یا شماره حساب به همراه کد بانک اجباری است.

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

خروجی کد وضعیت 200 (در صورت هشدار)

{
"warnings": [
"در ردیف ۱ شماره موبایل نامعتبر است"
],
"items": [
[
"id": 1,
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"row": 3,
"iban": "530560900180000201838001",
"account_status": "active",
"account_number": null,
"inquiry_status": "in-progress",
"pay_status": "wait",
"sign_status": "pending",
"amount": 100000,
"owner_name": "mohammad mohammadi",
"inquired_name": "mohammad mohammadi",
"matching_status": "match",
"bank_code": "017",
"optional": "test",
"tracking_number": "123456789",
"send_date": "test",
"error": null,
"batch": [
"id": 12 ,
"title": "pardakht"
],
"transaction_ids": [ "0": 4565 ],
"adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] ]
]
}

خروجی کد وضعیت 200 (بدون هشدار)

{
"warnings": [
],
"items": [
[
"id": 1,
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"row": 3,
"iban": "530560900180000201838001",
"account_status": "active",
"account_number": null,
"inquiry_status": "in-progress",
"pay_status": "wait",
"sign_status": "pending",
"amount": 100000,
"owner_name": "mohammad mohammadi",
"inquired_name": "mohammad mohammadi",
"matching_status": "match",
"bank_code": "017",
"optional": "test",
"tracking_number": "123456789",
"send_date": "test",
"error": null,
"batch": [
"id": 12 ,
"title": "pardakht"
],
"transaction_ids": [ "0": 4565 ],
"adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] ]
]
]
}

خروجی کد وضعیت 422

{
"errors": {
"invalid": [
"در ردیف ۱ مبلغ نباید کمتر از 1000 ریال باشد",
"در ردیف 2 نام یا نام خانوادگی باید پر باشد"
]
},
"data": []
}

وضعیت پاسخ

عنوان توضیحات
200 عملیات موفق
403 عدم دسترسی
422 معتبر نبودن داده‌های ورودی

ساختار خروجی

عنوان نوع توضیحات
warnings array هشدارها
uuid string شناسه منحصر به فرد
id integer(int64) شناسه آیتم
row number شماره ردیف
iban string شماره شبا
account_status string وضعیت حساب
account_number string شماره حساب
inquiry_status string وضعیت استعلام
pay_status string وضعیت پرداخت
sign_status string وضعیت امضا
amount number مبلغ
owner_name string نام مالک
inquired_name string نام استعلام شده
matching_status string وضعیت تطابق
bank_code string کد بانک (لیست کد بانک‌ها)
optional string سایر موارد
tracking_number number شماره پیگیری بانک
send_date string تاریخ درخواست
error string خطا
batch object مشخصات دسته
transaction_ids array شناسه تراکنس های ایجاد شده
adjustment_transaction_ids array شناسه تراکنش های اصلاحیه به همراه تراکنش های اصلی آن

نکته : فیلد وضعیت امضا (sign_status) در صورتی که نوع بیزینس از نوع امضاداری باشد در خروجی نشان داده می‌شود.

ساختار خروجی batch

عنوان نوع توضیحات
id string شناسه دسته
title string عنوان

مقادیر وضعیت حساب (account_status)

عنوان توضیحات
active فعال
inactive غیر فعال

مقادیر وضعیت پرداخت (pay_status)

عنوان توضیحات
wait در انتظار
success موفق
rejected رد شده
reversed برگشت داده شده
paying در حال پرداخت
not_sent ارسال نشده

مقادیر وضعیت امضا (sign_status)

عنوان توضیحات
pending در انتظار امضا
not_requested ارسال نشده برای امضا
signed امضا شده
rejected رد شده

مقادیر وضعیت استعلام (inquiry_status)

عنوان توضیحات
wait در انتظار
in-progress در حال انجام
finish انجام شده
fail ناموفق
cancel رد شده
invalid نامعتبر
stop متوقف شده

مقادیر وضعیت تطابق (matching_status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

لیست آیتم‌های دسته

با ارسال پارامتر‌های زیر به صورت GET می‌توانید لیست آیتم‌های یک دسته را دریافت کنید.

نکته : در آدرس بالا batch همان فیلد batch_id (شناسه دسته ایجاد شده) است که در خروجی مرحله قبل (ایجاد دسته) دریافت کرده‌اید.


curl -X GET https://api.jibimo.com/v2/batch-pay/{batch}/items/list?page=1&per_page=10\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/v2/batch-pay/{batch}/items/list?page=1&per_page=10', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/batch-pay/{batch}/items/list

ساختار ورودی

عنوان نوع اجباری توضیحات
page number خیر شماره صفحه
per_page number خیر تعداد در صفحه

خروجی کد وضعیت 200

{
"data": [
{
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"id": 3,
"creator": {
"username": "test",
},
"row": 4,
"iban": "7605********************",
"account_status": "active",
"account_number": "23********",
"inquiry_status": "wait",
"pay_status": "fail",
"sign_status": "pending",
"amount": 1000,
"owner_name": "mohammad mohammadi",
"inquired_name": "mohammad mohammadi",
"matching_status": "match",
"bank_code": "017",
"optional": "متن تستی",
"tracking_number": 1600149278002625,
"send_date": "2021-02-02 12:00:00",
"error": null,
"batch": {
"id": 1,
"title": "pardakht 13 aban",
"transaction_ids": [ "0": 4565 ],
"adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] ]
},
}
],
"links": {
"first": "https://api.jibimo.com/v2/batch-pay/{batch}/items/list?page=1",
"last": "https://api.jibimo.com/v2/batch-pay/{batch}/items/list?page=4",
"prev": "https://api.jibimo.com/v2/batch-pay/{batch}/items/list?page=1",
"next": "https://api.jibimo.com/v2/batch-pay/{batch}/items/list?page=3"
},
"meta": {
"current_page": 2,
"from": 10,
"last_page": 4,
"path": "https://api.jibimo.com/v2/batch-pay/{batch}/items/list",
"per_page": "5",
"to": 10,
"total": 12
}
}

وضعیت پاسخ

عنوان توضیحات
200 عملیات موفق
403 عدم دسترسی
404 آدرس نامعتبر

ساختار خروجی

عنوان نوع توضیحات
uuid string شناسه منحصر به فرد
id integer(int64) شناسه آیتم
creator object اطلاعات ایجاد‌کننده
row number شماره ردیف
iban string شماره شبا
account_status string وضعیت حساب
account_number string شماره حساب
inquiry_status string وضعیت استعلام
pay_status string وضعیت پرداخت
sign_status string وضعیت امضا
amount number مبلغ
owner_name string نام مالک
inquired_name string نام استعلام شده
matching_status string وضعیت تطابق
bank_code string کد بانک (لیست کد بانک‌ها)
optional string سایر موارد
tracking_number number شماره پیگیری بانک
send_date string تاریخ درخواست
error string خطا
batch object مشخصات دسته
transaction_ids array شناسه تراکنس های ایجاد شده
adjustment_transaction_ids array شناسه تراکنش های اصلاحیه به همراه تراکنش های اصلی آن

نکته : فیلد وضعیت امضا (sign_status) در صورتی که نوع بیزینس از نوع امضاداری باشد در خروجی نشان داده می‌شود.

ساختار خروجی creator

عنوان نوع توضیحات
username string نام کاربری

ساختار خروجی batch

عنوان نوع توضیحات
id string شناسه دسته
title string عنوان

مقادیر وضعیت حساب (account_status)

عنوان توضیحات
active فعال
inactive غیر فعال

مقادیر وضعیت پرداخت (pay_status)

عنوان توضیحات
wait در انتظار
success موفق
rejected رد شده
reversed برگشت داده شده
paying در حال پرداخت
not_sent ارسال نشده

مقادیر وضعیت امضا (sign_status)

عنوان توضیحات
pending در انتظار امضا
not_requested ارسال نشده برای امضا
signed امضا شده
rejected رد شده

مقادیر وضعیت استعلام (inquiry_status)

عنوان توضیحات
wait در انتظار
in-progress در حال انجام
finish انجام شده
fail ناموفق
cancel رد شده
invalid نامعتبر
stop متوقف شده

مقادیر وضعیت تطابق (matching_status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

لیست دسته‌ها

با ارسال پارامتر‌های زیر به صورت GET می‌توانید لیست دسته‌ها را دریافت کنید.


curl -X GET https://api.jibimo.com/v2/batch-pay/batches/list?page=1&per_page=10&created_from=2021-08-10&created_to=2021-08-15\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/v2/batch-pay/batches/list?page=1&per_page=10&created_at=["2021-08-10","2021-08-15"]', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/batch-pay/batches/list

ساختار وردی

عنوان نوع اجباری توضیحات
created_from string خیر تاریخ شروع
created_to string خیر تاریخ پایان
creator string خیر نام‌کاربری
page number خیر شماره صفحه
per_page number خیر تعداد در صفحه

خروجی کد وضعیت 200

{
"data": [
{
"id": 3,
"creator": {
"username": "test",
},
"title": "pardakht 13 aban",
"validation": "none",
"pay_after_validation": true,
"created_at": 2020-07-28 12:00:00,
"updated_at": 2021-08-20 12:00:00,
"progress": 0,
"states": {
"ready": false,
"inquiring": false,
"paid": false,
"canceled": false,
"pre_paying": false,
"paying": false
},
"file": {
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"url": "https://api.jibimo.com/batxh-pay/file/download/eaeb-9f010-4c90",
"name": "batch-pay.xls",
},
"count": {
"all": 20,
"sent": 10,
},
"amount": {
"all": 500000000,
"sent": 10000000,
}
}
],
"links": {
"first": "https://api.jibimo.com/v2/batch-pay/batches/list?page=1",
"last": "https://api.jibimo.com/v2/batch-pay/batches/list?page=4",
"prev": "https://api.jibimo.com/v2/batch-pay/batches/list?page=1",
"next": "https://api.jibimo.com/v2/batch-pay/batches/list?page=3"
},
"meta": {
"current_page": 2,
"from": 10,
"last_page": 4,
"path": "https://api.jibimo.com/v2/batch-pay/batches/list",
"per_page": "5",
"to": 10,
"total": 12
}
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
403 عدم دسترسی

ساختار خروجی

عنوان نوع توضیحات
id integer(int64) شناسه دسته
creator object اطلاعات ایجاد‌کننده
title string عنوان
validation string وضعیت پرداخت
pay_after_validation boolean پرداخت بعد از بررسی وضعیت
created_at string تاریخ ایجاد
updated_at boolean تاریخ به‌روزرسانی
progress string تعداد موارد در حال بررسی
states object وضعیت آیتم‌ها
file object اطلاعات فایل
count object تعداد آیتم‌ها
amount object مبلغ آیتم‌ها

ساختار خروجی creator

عنوان نوع توضیحات
username string نام کاربری

ساختار خروجی states

عنوان نوع توضیحات
ready boolean آماده اجرا
inquiring boolean در حال استعلام
paid boolean پرداخت شده
canceled boolean کنسل شده
pre_paying boolean قبل از پرداخت
paying boolean در حال پرداخت

ساختار خروجی file

عنوان نوع توضیحات
uuid string شناسه منحصر به فرد
url string آدرس
name string نام

ساختار خروجی count

عنوان نوع توضیحات
all number تعداد کل
sent number تعداد ارسال شده

ساختار خروجی amount

عنوان نوع توضیحات
all number مبلغ کل
sent number مجموع مبلغ موارد ارسال شده

مقادیر وضعیت پرداخت (validation)

عنوان توضیحات
none در صورت افزودن آیتم به این دسته نیازی به بررسی وجود ندارد و آماده پرداخت است
active_account در صورت افزودن آیتم به این دسته عملیات استعلام حساب انجام می‌شود و در صورتی که حساب موردی نداشته باشد پرداخت انجام خواهد شد
active_full_matched در صورت افزودن آیتم به این دسته عملیات استعلام حساب انجام می‌شود و در صورتی که مشخصات فرد با اطلاعات ورودی کاملا یکی باشد عملیات پرداخت انجام خواهد شد
active_partial_matched در صورت افزودن آیتم به این دسته عملیات استعلام حساب انجام می‌شود و در صورتی که مشخصات فرد با اطلاعات ورودی کاملا یکی هم نباشد عملیات پرداخت انجام خواهد شد

وضعیت یک آیتم

با ارسال پارامتر‌های زیر به صورت GET می‌توانید وضعیت یک آیتم را بررسی کنید.


curl -X GET https://api.jibimo.com/v2/batch-pay/item/report?item_id=2\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/v2/batch-pay/item/report?item_id=2', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/batch-pay/item/report

ساختار ورودی

عنوان نوع اجباری توضیحات
item_id number خیر شناسه آیتم
item_uuid string خیر شناسه منحصر به فرد آیتم

نکته : وجود یکی از موارد item_id و یا item_uuid اجباری است.

نکته : در صورت نیاز item_id را با فراخوانی وب سرویس لیست آیتم های دسته می‌توانید به دست آورید.

خروجی کد وضعیت 200

{
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"id": 3,
"creator": {
"username": "test",
},
"row": 4,
"iban": "7605********************",
"account_status": "active",
"account_number": "23********",
"inquiry_status": "wait",
"pay_status": "fail",
"sign_status": "pending",
"amount": 1000,
"owner_name": "mohammad mohammadi",
"inquired_name": "mohammad mohammadi",
"matching_status": "match",
"bank_code": "017",
"optional": "متن تستی",
"tracking_number": 1600149278002625,
"description": "توضیحات",
"national_code": "0311******",
"mobile": "09121124458",
"sent_date": "2021-10-12015:00:00",
"error": null,
"batch": {
"id": 1,
"title": "pardakht 13 aban",
},
"transaction_ids": [ "0": 4565 ],
"adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] ]
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
403 عدم دسترسی
404 آدرس نامعتبر

ساختار خروجی

عنوان نوع توضیحات
uuid string شناسه منحصر به فرد
id integer(int64) شناسه آیتم
creator object اطلاعات ایجاد‌کننده
row number شماره ردیف
iban string شماره شبا
account_status string وضعیت حساب
account_number string شماره حساب
inquiry_status string وضعیت استعلام
pay_status string وضعیت پرداخت
sign_status string وضعیت امضا
amount number مبلغ
owner_name string نام مالک
inquired_name string نام استعلام شده
matching_status string وضعیت تطابق
bank_code string کد بانک (لیست کد بانک‌ها)
optional string سایر موارد
tracking_number number شماره پیگیری
description string توضیحات
national_code string کدملی
mobile string شماره موبایل
send_date string تاریخ ارسال
error string خطا
batch object مشخصات دسته
transaction_ids array شناسه تراکنس های ایجاد شده
adjustment_transaction_ids array شناسه تراکنش های اصلاحیه به همراه تراکنش های اصلی آن

نکته : فیلد وضعیت امضا (sign_status) در صورتی که نوع بیزینس از نوع امضاداری باشد در خروجی نشان داده می‌شود.

ساختار خروجی creator

عنوان نوع توضیحات
username string نام کاربری

ساختار خروجی batch

عنوان نوع توضیحات
id string شناسه
title string عنوان

مقادیر وضعیت حساب (account_status)

عنوان توضیحات
active فعال
inactive غیر فعال

مقادیر وضعیت پرداخت (pay_status)

عنوان توضیحات
wait در انتظار
success موفق
rejected رد شده
reversed برگشت داده شده
paying در حال پرداخت
not_sent ارسال نشده

مقادیر وضعیت امضا (sign_status)

عنوان توضیحات
pending در انتظار امضا
not_requested ارسال نشده برای امضا
signed امضا شده
rejected رد شده

مقادیر وضعیت استعلام (inquiry_status)

عنوان توضیحات
wait در انتظار
in-progress در حال انجام
finish انجام شده
fail ناموفق
cancel رد شده
invalid نامعتبر
stop متوقف شده

مقادیر وضعیت تطابق (matching_status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

لیست آیتم‌ها

با ارسال پارامتر‌های زیر به صورت GET می‌توانید عملیات گزارش گیری از کل آیتم‌ها را انجام دهید.


curl -X GET https://api.jibimo.com/v2/batch-pay/all/report\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
<?php

require 'vendor/autoload.php';

$headers = array(
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
$response = $client->request('GET','https://api.jibimo.com/v2/batch-pay/all/report', array(
'headers' => $headers,
'json' => $request_body,
)
);
print_r($response->getBody()->getContents());
}
catch (\GuzzleHttp\Exception\BadResponseException $e) {
// handle exception or api errors.
print_r($e->getMessage());
}

https://api.jibimo.com/v2/batch-pay/all/report

ساختار ورودی

عنوان نوع اجباری توضیحات
uuid string خیر شناسه منحصر به فرد
row number خیر شماره ردیف
iban string خیر شماره شبا
mobile string خیر شماره موبایل
national_code string خیر کد ملی
account_number string خیر شماره حساب
account_status string خیر وضعیت حساب
pay_status string خیر وضعیت پرداخت
owner_name string خیر نام مالک
id number خیر شناسه
created_at array خیر مقدار اول تاریخ شروع و مقدار دوم تاریخ پایان
creator string خیر نام‌کاربری
page number خیر شماره صفحه
per_page number خیر تعداد در صفحه

نکته : مقادیر بالا برای فیلتر کردن می‌باشد.

خروجی کد وضعیت 200

{
"data": [
{
"uuid": "d8167dd3-86bd-433e-8dc1-037f846f394d",
"id": 3,
"row": 4,
"iban": "7605********************",
"account_status": "active",
"account_number": "23********",
"inquiry_status": "wait",
"pay_status": "fail",
"amount": 1000,
"owner_name": "mohammad mohammadi",
"inquired_name": "mohammad mohammadi",
"matching_status": "match",
"bank_code": "017",
"optional": "متن تستی",
"tracking_number": 1600149278002625,
"send_date": "2021-02-02 12:00:00",
"error": null,
"batch": {
"id": 1,
"title": "pardakht 13 aban",
"matching": true,
"conversion": true,
},
"transaction_ids": [ "0": 4565 ],
"adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] ]
}
],
"links": {
"first": "https://api.jibimo.com/v2/batch-pay/all/report?page=1",
"last": "https://api.jibimo.com/v2/batch-pay/all/report?page=4",
"prev": "https://api.jibimo.com/v2/batch-pay/all/report?page=1",
"next": "https://api.jibimo.com/v2/batch-pay/all/report?page=3"
},
"meta": {
"current_page": 2,
"from": 10,
"last_page": 4,
"path": "https://api.jibimo.com/v2/batch-pay/all/report",
"per_page": "5",
"to": 10,
"total": 12
}
}

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
403 خطای دسترسی

ساختار خروجی

عنوان نوع توضیحات
uuid string شناسه منحصر به فرد
id integer(int64) شناسه آیتم
row number شماره ردیف
iban string شماره شبا
account_status string وضعیت حساب
account_number string شماره حساب
inquiry_status string وضعیت استعلام
pay_status string وضعیت پرداخت
sign_status string وضعیت امضا
amount number مبلغ
owner_name string نام مالک
inquired_name string نام استعلام شده
matching_status string وضعیت تطابق
bank_code string کد بانک (لیست کد بانک‌ها)
optional string سایر موارد
tracking_number number شماره پیگیری
description string توضیحات
national_code string کدملی
mobile string شماره موبایل
send_date string تاریخ ارسال
error string خطا
batch object مشخصات دسته
transaction_ids array شناسه تراکنس های ایجاد شده
adjustment_transaction_ids array شناسه تراکنش های اصلاحیه به همراه تراکنش های اصلی آن

نکته : فیلد وضعیت امضا (sign_status) در صورتی که نوع بیزینس از نوع امضاداری باشد در خروجی نشان داده می‌شود.

ساختار خروجی batch

عنوان نوع توضیحات
id string شناسه
title string عنوان
matching boolean دارای عملیات تطبیق هویت
conversion boolean دارای عملیات تبدیل حساب به شبا

مقادیر وضعیت حساب (account_status)

عنوان توضیحات
active فعال
inactive غیر فعال

مقادیر وضعیت پرداخت (pay_status)

عنوان توضیحات
wait در انتظار
success موفق
rejected رد شده
reversed برگشت داده شده
paying در حال پرداخت
not_sent ارسال نشده

مقادیر وضعیت امضا (sign_status)

عنوان توضیحات
pending در انتظار امضا
not_requested ارسال نشده برای امضا
signed امضا شده
rejected رد شده

مقادیر وضعیت استعلام (inquiry_status)

عنوان توضیحات
wait در انتظار
in-progress در حال انجام
finish انجام شده
fail ناموفق
cancel رد شده
invalid نامعتبر
stop متوقف شده

مقادیر وضعیت تطابق (matching_status)

وضعیت توضیحات
match تطابق کامل
partial_match تطابق نسبی
not_match عدم تطابق

کیف پول

اعتبارسنجی

scope لازم برای اعتبار سنجی این وب‌سرویس wallet-to-wallet می‌باشد.

کیف پول

درخواست کیف به کیف

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

نکته: برای انتقال وجه، تنها یکی از موارد «شناسه‌ی کاربری» یا «نام کاربری» مورد نیاز است.

ساختار ورودی

            

curl --location --request POST 'https://api.jibimo.com/v2/wallet/transfer'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
--data-raw '{
"items": [
{
"username": "JohnDoe",
"amount": 12000,
"description": "foo"
},
{
"id": 3,
"amount": 28000,
"description": "bar"
}
]
}'
عنوان نوع توضیحات
username string نام کاربری
id integer(int64) شناسه‌ی کاربر
amount integer(int64) مبلغ تراکنش
description string توضیحات (محدودیت ۶۴ کارکتر)

خروجی کد وضعیت 200

ساختار خروجی

{  
{
"id": 1,
"payer": {
"id": 1,
"username": "u1"
},
"payee": {
"id": 2,
"username": "JohnDoe"
},
"status": "Accepted",
"amount": 12000,
"description": "foo",
"type": "Pay",
"created_at": "2020-05-15 12:31:21",
},
{
"id": 2,
"payer": {
"id": 1,
"username": "u1"
},
"payee": {
"id": 3,
"username": "u3"
},
"status": "Accepted",
"amount": 28000,
"description": "bar",
"type": "Pay",
"created_at": "2020-05-15 12:31:21",
}
}
عنوان نوع توضیحات
id integer(int64) شناسه‌ی تراکنش
payer array پرداخت کننده
payee array دریافت کننده
status string وضعیت تراکنش
amount integer(int64) مبلغ تراکنش
description string توضیحات تراکنش
type string نوع تراکنش
created_at datetime تاریخ ایجاد

مقادیر وضعیت تراکنش (status)

وضعیت توضیحات
Pending در حال انتظار
Accepted پذیرفته شده
Rejected رد شده

ساختار خروجی payer

عنوان نوع توضیحات
id integer(int64) شناسه‌ی کاربر
username string نام کاربری

ساختار خروجی payee

عنوان نوع توضیحات
id integer(int64) شناسه‌ی کاربر
username string نام کاربری

لیست تراکنش‌های کیف به کیف

با استفاده از این خدمت می‌توانید گزارشی از تاریخچه‌ی تراکنش های کیف به کیف مرتبط با حساب خود را مشاهده نمایید.

ساختار ورودی

            

curl --location --request GET 'https://api.jibimo.com/v2/wallet/history?amount=1000'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
عنوان نوع اجباری توضیحات
amount integer(int64) خیر مبلغ تراکنش
status string خیر وضعیت تراکنش که یکی از مقادیر Accepted, Pending, Rejected را شامل می‌شود
payer_id integer(int64) خیر شناسه‌ی پرداخت کننده
payer_username string خیر نام کاربری پرداخت کننده
payee_id integer(int64) خیر شناسه‌ی دریافت کننده
payee_username string خیر نام کاربری دریافت کننده
description string خیر توضیحات تراکنش
from_datetime string خیر تاریخ شروع به صورت میلادی با فرمت 12:00:00 10-06-2020
to_datetime string خیر تاریخ پایان به صورت میلادی با فرمت 12:00:00 10-06-2020

خروجی کد وضعیت 200

ساختار خروجی

{
"data": [
{
"id": 1,
"payer": {
"id": 1,
"username": "u1"
},
"payee": {
"id": 2,
"username": "u2"
},
"status": "Accepted",
"amount": 1000,
"description": "foo",
"type": "Pay",
"created_at": "2020-05-15 12:31:21",
},
{
"id": 2,
"payer": {
"id": 1,
"username": "u1"
},
"payee": {
"id": 3,
"username": "u3"
},
"status": "Accepted",
"amount": 1000,
"description":"bar",
"type": "Pay",
"created_at": "2020-05-15 12:31:21",
}
],
"links": {
"first": "http://jibimo.local/v2/wallet/history?amount=1000?page=1",
"last": "http://jibimo.local/v2/wallet/history?amount=1000?page=4",
"prev": "http://jibimo.local/v2/wallet/history?amount=1000?page=1",
"next": "http://jibimo.local/v2/wallet/history?amount=1000?page=3"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "http://jibimo.local/v2/wallet/history?amount=1000",
"per_page": "5",
"to": 1,
"total": 2
}
}
عنوان نوع توضیحات
id integer(int64) شناسه‌ی تراکنش
payer array پرداخت کننده
payee array دریافت کننده
status string وضعیت تراکنش
amount integer(int64) مبلغ تراکنش
description string توضیحات (محدودیت ۶۴ کارکتر)
type string نوع تراکنش
created_at datetime تاریخ ایجاد

ساختار خروجی payer

عنوان نوع توضیحات
id integer(int64) شناسه‌ی کاربر
username string نام کاربری

ساختار خروجی payee

عنوان نوع توضیحات
id integer(int64) شناسه‌ی کاربر
username string نام کاربری

لیست تراکنش‌ها

لیست تراکنش‌های Cash-In

با فراخوانی این API می‌توان لیستی از تراکنش‌های واریزی Cash-In را مشاهده کرد.

scope: cash-in

ساختار ورودی


curl --location --request GET 'https://api.jibimo.com/v2/trx/cash-in'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
عنوان نوع اجباری توضیحات
deposit_id number خیر جستجو براساس شناسه واریز
deposit_id_owner string خیر جستجو بر اساس نام صاحب شناسه واریز
adjustment_trx boolean خیر جستجوی تراکنش‌های Cash-In عودت خورده
per_page number خیر تعداد رکورد‌ در هر‌ صفحه

ساختار خروجی

;
عنوان نوع توضیحات
id integer آیدی تراکنش
status integer وضعیت تراکنش
type string نوع تراکنش
description string توضیحات
deposit_id stringشناسه واریز
deposit_id_owner_name string نام صاحب شناسه واریز
src_account_number string | null شماره حساب واریز کننده
src_iban_number string | null شماره شبای واریز کننده
created_at string تاریخ و ساعت ایجاد شدن

خروجی کد وضعیت 200

{
"data": {
{
"id": 1,
"status": Accepted,
"type": Cash-In,
"amount": trx amount,
"description": cash-in description,
"deposit_id": 3834568956,
"deposit_id_owner_name": فردین مسعودی,
"created_at": "2023-02-08 10:00:00",
"updated_at": "2023-02-08 10:00:00",
}
},
"links": {
"first": "https://api.jibimo.net/v2/deposit-ids?page=1",
"last": "null",
"prev": "null",
"next": "null"
},
"meta": {
"current_page": 1,
"from":10,
"path": "https://api.jibimo.net/v2/deposit-ids",
"per_page": 5,
"to":10,
}
}

خروجی تراکنش اصلاحیه با‌کد‌ وضعیت 200‌

{
"data": {
{
"id": 1,
"status": Accepted,
"type": Cash-In,
"amount": trx amount,
"description": cash-in description,
"adjustment_trx": {
"id": 1,
"payer_id": 2,
"status": Accepted,
"type": Adjustment,
"amount": trx amount,
"description": cash-in description,
"created_at": "2023-02-08 10:00:00",
"updated_at": "2023-02-08 10:00:00",
},
"deposit_id": 3834568956,
"deposit_id_owner_name": فردین مسعودی,
"created_at": "2023-02-08 10:00:00",
"updated_at": "2023-02-08 10:00:00",
}
},
"links": {
"first": "https://api.jibimo.net/v2/deposit-ids?page=1",
"last": "null",
"prev": "null",
"next": "null"
},
"meta": {
"current_page": 1,
"from":10,
"path": "https://api.jibimo.net/v2/deposit-ids",
"per_page": 5,
"to":10,
}
}

تعریف شناسه واریز

با فراخوانی این api اگر قبلا شناسه واریزی برای کاربر با کد ملی مشخص تعریف شده باشد همان شناسه تعریف شده را دریافت می کند ولی اگر قبلا شناسه ایی تعریف نشده باشد همان لحظه تعریف می شود و کاربر دیتا را دریافت می کند و فقط در کد وضعیت با هم فرق دارند.

شماره موبایل حتما باید متعلق به فرد صاحب کد ملی باشد در غیر اینصورت شناسه ایی تولید نخواهد شد.

ساختار ورودی

            

curl --location --request POST 'https://api.jibimo.com/v2/deposit-ids'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
عنوان نوع اجباری توضیحات
first_name string بله حداکثر ۳۲ کارکتر
last_name string بله حداکثر ۳۲ کارکتر
national_id string بله ۱۰ کاراکتر عددی
mobile_number string بله ۱۰ کاراکتر عددی با پیشوند +98
optional_data string خیر دیتای اختیاری | ۲۵۵ کاراکتر

وضعیت پاسخ

کد وضعیت توضیحات
200 برگرداندن اطلاعات شناسه ی از قبل ذخیره شده موفق بود.
201 شناسه واریز جدید با موفقیت ذخیره شد.
403 شناسه واریز پایه برای شما ایجاد نشده است لطفا برای ایجاد آن با پشتیبانی تماس بگیرید.

خروجی کد وضعیت 200

{
"id": 1,
"user_id": 1,
"first_name": test first name,
"last_name": test last name,
"national_id": 383*******,
"deposit_id": 1000383*******,
"mobile_number": "+98936***2566",
"created_at": "2023-02-08 10:00:00",
}

خروجی کد وضعیت 201

{
"id": 1,
"user_id": 1,
"first_name": test first name,
"last_name": test last name,
"national_id": 383*******,
"deposit_id": 1000383*******,
"mobile_number": "+98936***2566",
"created_at": "2023-02-08 10:00:00",
}

شناسه واریز

لیست شناسه واریز های تعریف شده

با فراخوانی این api می توان شناسه واریز های تعریف شده برای خود کاربر جیبیمو ( ویا کسب و کار) و مشتری هایش را مشاهده کرد.

ساختار ورودی

            

curl --location --request GET 'https://api.jibimo.com/v2/deposit-ids'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
عنوان نوع اجباری توضیحات
id integer خیر جستجو بر اساس شناسه تراکنش
full_name string خیر جستجو بر اساس نام ونام خانوادگی
national_id string خیر جستجو بر اساس کد ملی
deposit_id string خیر جستجو بر اساس شناسه واریز
mobile_number string خیر جستجو بر اساس شماره موبایل
optional_data string خیر جستجو بر اساس فیلد دیتای اختیاری
page number خیر تعداد در صفحه
per_page number خیر شماره در صفحه

ساختار خروجی

;
عنوان نوع توضیحات
id integer شناسه‌ی شناسه واریز
user_id integer شناسه کاربر یا بیزینسی که شناسه واریز را تعریف کرده است.
first_name string نام
last_name string نام خانوادگی
national_id stringکد ملی
deposit_id string شناسه واریز
mobile_number string شماره موبایل
optional_data string دیتای اختیاری
created_at string تاریخ و ساعت ایجاد شدن

خروجی کد وضعیت 200

                {
"data": {
"deposit_ids" :[
{
"id": 1,
"user_id": 1,
"first_name": test first name,
"last_name": test last name,
"national_id": 383*******,
"deposit_id": 1000383*******,
"mobile_number": +98937***2596,
"created_at": "2023-02-08 10:00:00",
}
],
},
"links": {
"first": "https://api.jibimo.net/v2/deposit-ids?page=1",
"last": "null",
"prev": "null",
"next": "null"
},
"meta": {
"current_page": 1,
"from":10,
"path": "https://api.jibimo.net/v2/deposit-ids",
"per_page": 5,
"to":10,
}
}

لیست شماره شباها

لیست شماره شباهای اضافه شده برای هر شناسه واریز

ساختار ورودی

            

curl --location --request GET 'https://api.jibimo.com/v2/deposit-ids/{id}/ibans'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
عنوان نوع اجباری توضیحات
iban string خیر شماره شبا

خروجی کد وضعیت 200

{
"data": [
{
"id": 1,
"iban": IR111111111111111111111111,
"first_name": "MjM1ODMw",
"last_name": "محمد محمدی",
"account_number": "1111222233334444",
"bank":
{
"title": "saman",
"logo": "http:jibimo-com.test/img/saman-logo.png",
}
}
]
}

افزودن شماره شبا

افزودن شماره شبا به شناسه واریز

ساختار ورودی

            

curl --location --request POST 'https://api.jibimo.com/v2/deposit-ids/{id}/ibans'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
عنوان نوع اجباری توضیحات
id string بله شناسه شناسه واریز که باید داخل url پاس داده شود
iban string بله شماره شبا

خروجی کد وضعیت 200

{
"message": عملیات با موفقیت انجام شد.
}

حذف شماره شبا

حذف شماره شبا از شناسه واریز

ساختار ورودی

            

curl --location --request DELETE 'https://api.jibimo.com/v2/deposit-ids/{id}/ibans/{id}'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
عنوان نوع اجباری توضیحات
id string بله شناسه‌ی شناسه واریز که باید داخل url پاس داده شود
id string بله شناسه‌ی شماره شبا که باید داخل url پاس داده شود

خروجی کد وضعیت 200

{
"message": عملیات با موفقیت انجام شد.
}

لیست شماره حساب‌ها

با فراخوانی این API می‌توان لیست حساب‌های قابل cash-in را مشاهده کرد.


curl --location --request GET 'https://api.jibimo.com/v2/deposit-ids/banks'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json'

ساختار خروجی

لیست تراکنش‌ها

عنوان نوع توضیحات
bank_name string نام بانک
iban string شماره شبای بانک
account_number string شماره حساب بانک

خروجی کد وضعیت 200

[
{
"bank_name": "saderat",
"iban": "IR410190000000214690676001",
"account_number": "0214690676001",
},
{
"bank_name": "saman",
"iban": "IR530560087281002737677001",
"account_number": "872-810-2737677-1",
}
]

تنظیم آدرس cash-in webhook

با فراخوانی این api شما می‌توانید یک آدرس اینترنتی را برای کسب کار خود تنظیم کنید که هر زمانی تراکنش Cash-in با شناسه واریز به اکانت شما تعلق گرفت، آن آدرس فراخوانی شده و اطلاعات تراکنش را به برنامه‌ی شما ارسال کند.

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

جهت تست وب‌هوک سایت webhook.site که برای تست وب‌هوک ایجاد شده در جیبی‌مو قابل ثبت می‌باشد و میتوانید جهت تست وب‌هوک از آن استفاده نمایید.

ساختار ورودی

            

curl --location --request POST 'https://api.jibimo.com/v2/cash-in-webhook'\
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian' \
-d'{
"cash_in_webhook_url": "https://test.com/cash-in-webhook-url"
}'
عنوان نوع اجباری توضیحات
cash_in_webhook_url string بله

وضعیت پاسخ

کد وضعیت توضیحات
200 آدرس webhook با موفقیت برای شما اپدیت شد.
422 فرمت اطلاعات ارسالی شما اشتباه است و یا دامین اصلی آدرس webhook ارسالی با آدرس اصلی سایت شما یکسان نمی‌باشد.

اطلاعات ارسالی به آدرس webhook

پس از تنظیم کردن آدرس webhook توسط کسب و کار شما، در هنگام واریز های شناسه دار، زمانی که مبلغ واریزی به حساب شما تعلق گرفت، آدرس تنظیم شده توسط کسب و کار شما با متود POST صدا زده شده و اطلاعات را با فرمت json ارسال خواهد کرد.

عنوان توضیحات
id شناسه یکتا واریز
status وضعیت واریز به کیف پول کسب و کار
type نوع واریزی به کیف پول کسب و کار
amount مبلغ واریزی به کیف پول کسب و کار
description توضیحات ارسالی از سمت بانک
deposit_id شناسه واریزی که برای مشتری کسب و کار اختصاص داده شده است
deposit_id_owner_name نام صاحب شناسه واریز
deposit_id_optional_data دیتای اختیاری وارد شده در تعریف شناسه واریز
src_account_number شماره حساب واریز کننده (ممکن است null باشد)
src_iban_number شماره شبای واریز کننده (ممکن است null باشد)
created_at زمان واریز مبلغ به کیف پول کسب و کار
updated_at زمان واریز مبلغ به کیف پول کسب و کار

خروجی کد وضعیت 200

{
"name": test name,
"user_name": test username,
"cash_in_webhook_url": https://test.com/cash-in-webhook-url
}

خروجی کد وضعیت 422

{
"errors": {
"cash_in_webhook_url": [ 'دامنه ی آدرس وب هوک کش این شما با دامنه ی آدرس سایت اصلی شما یکسان نمی باشد.'
] }
}

اطلاعات ارسالی به آدرس اینترنتی شما

{
"id": 1,
"status": "Accepted",
"type": "Cash-In" "amount": 10000,
"description": "توضیحات بانک",
"deposit_id": "123456",
"deposit_id_owner_name": "test name",
"created_at": "2023-09-09 16:56:56",
"updated_at": "2023-09-09 16:59:56"
}

وب سرویس پرداخت (تسویه)

وب سرویس پرداخت جیبی‌مو امن، مطمئن و شفاف است. این قابلیت به گونه‌ای طراحی شده است که بتواند بسیار ساده تر از وب سرویس پرداخت گروهی جیبی‌مو، پرداخت‌های شما را انجام دهد. همچنین این وب سرویس اعتبار سنجی‌های پرداخت گروهی را ندارد.
scope های لازم برای استفاده از این وب سرویس batch-pay می‌باشند.

ایجاد تراکنش

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

تراکنش‌های ارسالی باید به صورت آرایه‌ای باشند که کلید آن trx است. در هر بار فراخوانی این وب سرویس شما میتوانید تا 30 تراکنش را ارسال نمایید

https://api.jibimo.com/v2/batch-pay/s/trx/request


curl -X POST https://api.jibimo.com/v2/batch-pay/s/trx/request\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'
-d '{
"trx": [
{
"iban": "IR45********************86",
"webhook_url": "https://webhook.test",
"amount": 10000,
"unique_key": "unique_key_123456789_q789w5re",
"desc": "توضیحات",
"exec_datetime": "Y-m-d H:i:s",
"payment_id": "123456",
"optional_data": "this is for test"
}
]
}'

ساختار ورودی

عنوان نوع اجباری توضیحات
iban string بله شماره شبا مقصد
webhook_url string خیر آدرس دامنه باید با آدرس دامنه کسب کار شما یکی باشد. ( شما می‌توانید جهت تست، لینک آدرس وب هوک (webhook_url) را از سایت webhook.site تهیه نمایید.)
amount integer بله واحد ریال
unique_key string بله شناسه یکتا تراکنش
desc string خیر توضیحات تراکنش
exec_datetime datetime خیر تاریخ به صورت میلادی و فرمت آن به صورت Y-m-d H:i:s باشد، این تاریخ می‌تواند تنها تا 24 ساعت بعد از لحظه‌ی فراخوانی ست شود. در صورت عدم ارسال این مقدار حداکثر تا ۵ دقیقه بعد از فراخوانی تراکنش پردازش میشود.
payment_id string خیر شناسه پرداخت برای شماره شبای مقصد می‌باشد.
optional_data string خیر مقایر اختیاری می‌باشد که به صورت string فرستاده میشوند.(طول دیتای وارد شده حداکثر 255 کاراکتر میتواند باشد.)

وضعیت پاسخ

کد وضعیت توضیحات
200 تراکنش‌های شما با موفقیت ثبت شدند. نمونه پاسخ
422 فرمت اطلاعات ارسالی اشتباه است

اطلاعات ارسالی به آدرس webhook

عنوان توضیحات
iban شماره شبا
unique_key کلید یکتا
trx_id شناسه تراکنش
tracker_id شماره پیگیری پرداخت
amount مبلغ(واحد ریال)
desc توضیحات
status وضعیت فراخوانی صورت گرفته تمام تراکنش ها مطابق جدول وضعیت‌ تراکنش
pay_method روش پرداختی مطابق جدول روش پرداخت
settle_estimation زمان تخمینی واریز
created_at زمان ایجاد تراکنش
processed_at زمان پردازش توسط جیبی‌مو
receipt_link لینک رسید
optional_data داده‌ی اختیاری

در صورتی که در پاسخ فراخوانی وب‌هوک کد http چیزی غیر از بازه 2** باشد به معنای خطا در نظر گرفته شده و تا دوبار دیگر و هربار با فاصله یک دقیقه مجددا وب هوک فراخوانی میشود.

جدول وضعیت تراکنش

وضعیت (status) توضیحات
transferred تراکنش در بانک انجام شده
rejected تراکنش رد شده
reversed تراکنش برگشت خورده ( ابتدا موفق شده و استاتوس transferred شده است سپس بانک مبلغ را عودت داده است)

جدول روش پرداخت

pay_method توضیحات
instant پرداخت به صورت آنی
paya پرداخت به صورت پایا

خروجی کد وضعیت 200


{
"trx": [
{
"iban":"IR45********************69",
"amount":10000,
"unique_key":"unique_key_4567987654adsf54",
"desc":"description",
"status":"Pending",

"pay_method": "instant",
"webhook": [ "url" :"webhook.sit", "call_status":"successful" // or failed or pending, "response_body":"Your server response up to 158 characters", ],
"settle_estimation":"2023-10-10 13:30:00",
"trx_id": [ "0": 4565 ],
"tracker_id":"1402****6545",
"created_at":"2023-10-10 12:12:12",
"processed_at":"2023-10-10 12:12:12",
"receipt_link":"https://api.jibimo.com/trx/trx-id?signature=da1dd05fe6aaef7fccaf0d31c92f90b559",
"payment_id":"123456",
"optional_data": "this is for test"
"adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] ], } ] }

خروجی کد وضعیت 422

{
"errors": [ "دامنه‌ی آدرس وب هوک شما با دامنه‌ی آدرس سایت اصلی شما یکسان نمی باشد."
] }

لغو تراکنش

با ارسال پارامتر‌های زیر به صورت POST می‌توانید عملیات لغو تراکنش را انجام دهید.

توجه داشته باشید که تنها درخواست‌هایی قابل لغو شدن هستند که درخواست آن‌ها از سمت جیبی‌مو به سمت بانک نرفته باشند و یا در صف پردازش قرار نگرفته باشند.

https://api.jibimo.com/v2/batch-pay/s/trx/cancel


curl -X POST https://api.jibimo.com/v2/batch-pay/s/trx/cancel\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'\
-d '{
"unique_key": "unique_key_41654_asdf568"
}'

ساختار ورودی

عنوان نوع اجباری توضیحات
unique_key string بله شناسه یکتا تراکنش

وضعیت پاسخ

کد وضعیت توضیحات
200 تراکنش‌های شما با موفقیت لغو شدند.
404 تراکنش‌های شما یافت نشدند.
403 تراکنش‌های شما امکان لغو کردن را ندارند.

خروجی کد وضعیت 200

{
"iban":"IR45********************69",
"amount":10000,
"unique_key":"unique_key_4567987654adsf54",
"desc":"description",
"status":"rejected",
"pay_method": "instant",
"settle_estimation":"2023-10-10 13:30:00",
"trx_id": [ "0": 4565 ],
"tracker_id":"1402****6545",
"created_at":"2023-10-10 12:12:12",
"processed_at":"2023-10-10 12:12:12",
"receipt_link":"https://api.jibimo.com/trx/trx-id?signature=da1dd05fe6aaef7fccaf0d31c92f90b559",
"payment_id":"123456"
"adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] }

خروجی کد وضعیت 404

{
"message":"تراکنش با این مشخصات پیدا نشد." }

خروجی کد وضعیت 403

{
"message":"تراکنش‌های شما امکان لغو شدن را ندارند." }

لیست تراکنش ها

با ارسال پارامتر‌های زیر به صورت GET می‌توانید عملیات گرفتن لیست تراکنش را انجام دهید.

https://api.jibimo.com/v2/batch-pay/s/trx


curl -X GET https://api.jibimo.com/v2/batch-pay/s/trx?page=1\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIyIiwian'

ساختار ورودی

عنوان نوع اجباری توضیحات
unique_key string خیر شناسه یکتا تراکنش
iban string خیر شماره شبا مقصد
tracker_id string خیر شماره پیگیری پرداخت
status string خیر وضعیت پرداخت مطابق جدول وضعیت‌ تراکنش
pay_method string خیر نوع پرداخت مطابق جدول روش پرداخت
created_from datetime خیر تراکنش‌های ایجاد شده از این تاریخ با فرمت Y-m-d H:i:s
created_to datetime خیر تراکنش‌های ایجاد شده تا این تاریخ با فرمت Y-m-d H:i:s
processed_at_from datetime خیر تراکنش‌های پردازش شده از این تاریخ با فرمت Y-m-d H:i:s
processed_at_to datetime خیر تراکنش‌های پردازش شده تا این تاریخ با فرمت Y-m-d H:i:s
done_from datetime خیر تراکنش‌های انجام شده تا این تاریخ با فرمت Y-m-d H:i:s
done_to datetime خیر تراکنش‌های انجام شده تا این تاریخ با فرمت Y-m-d H:i:s

وضعیت پاسخ

کد وضعیت توضیحات
200 عملیات موفق
403 عدم دسترسی

خروجی کد وضعیت 200


{
"trx": [
{
"iban":"IR45********************69",
"amount":10000,
"unique_key":"unique_key_4567987654adsf54",
"desc":"description",
"status":"Pending",

"pay_method": "instant",
"webhook": [ "url" :"webhook.sit", "call_status":"successful" // or failed or pending, "response_body":"Your server response up to 158 characters", ],
"settle_estimation":"2023-10-10 13:30:00",
"trx_id": [ "0": 4565 ],
"tracker_id":"1402****6545",
"created_at":"2023-10-10 12:12:12",
"processed_at":"2023-10-10 12:12:12",
"receipt_link":"https://api.jibimo.com/trx/trx-id?signature=da1dd05fe6aaef7fccaf0d31c92f90b559",
"payment_id":"123456",
"optional_data": "this is for test" "adjustment_transaction_ids": [ "0": [ "transaction_id" : 1 "adjustment_transaction_id" : 2 ] ], }
],
"links": {
"first": "https://api.jibimo.com/v2/batch-pay/s/trx?page=1",
"last": "https://api.jibimo.com/v2/batch-pay/s/trx?page=4",
"prev": "https://api.jibimo.com/v2/batch-pay/s/trx?page=1",
"next": "https://api.jibimo.com/v2/batch-pay/s/trx?page=3"
},
"meta": {
"current_page": 2,
"from": 16,
"path": "https://api.jibimo.com/v2/batch-pay/s/trx",
"per_page": 15,
"to": 30,
} }

خروجی کد وضعیت 403

{
"errors": [ "شما دسترسی لازم را ندارید."
] }

لیست کد بانک‌ها

مقادیر کد بانک

عنوان کد فرمت شماره حساب پشتیبانی/ عدم پشتیبانی
ملی 017 xxxxxxxxxxxxx بله
سپه 015 xxxxxxxxxxx , xxxxxxxxxxxx , xxxxxxxxxxxxx بله
توسعه صادرات 020 xxxxxxxxxxxxx بله
صنعت و معدن 011 xxxxxxxxxxxxx بله
کشاورزی 016 xxxxxxxx , xxxxxxxxx بله
مسکن 014 xxxxxxxxxxx , xxxxxxxxxxxx , xxxxxxxxxxxxx بله
پست بانک 021 xxxxxxxxxxxxx , xxxxxxxxxxxxxx خیر
توسعه تعاون 022 xxxx.xxx.xxxxxx.x , xxxx.xxx.xxxxxxx.x بله
اقتصاد نوین 055 xxx-xxx-xxxxxxx-x , xxxx-xxx-xxxxxxx-x , xxxx-x-xxxxxxx-x بله
پارسیان 054 xxxxxxxxxxxxxx بله
پاسارگاد 057 xxx.xxx.xxxxxx.x , xxx.xxxx.xxxxxx.x , xxx.xxx.xxxxx.x , xxx.xxx.xxxxxxx.x , xxx.xxxx.xxxxxxx.x , xxx.xxxx.xxxxxxxx.x , xxxx.xxx.xxxxxxxx.x , xxxx.xxxx.xxxxxxxx.x بله
کارآفرین 053 xxxxxxxxxxxxx بله
سامان 056 xxx-xxx-xxxxx-x , xxx-xxx-xxxxxx-x , xxx-xx-xxxxx-x , xxx-xxx-xxxxxxx-x , xxxx-xxx-xxxxxx-x , xxx-xxx-xxxxxxxx-x , xxxx-xxx-xxxxxxx-x بله
سینا 059 xxx-xx-xxxxxxx-x , xxx-xxx-xxxx-x , xxx-xxx-xxxxxxx-x بله
سرمایه 058 xxxx-xxx-xxxxxx-x بله
آینده 062 xxxxxxxxxxxx , xxxxxxxxxxxxx بله
شهر 061 xxxxxxxxxxxx , xxxxxxxxxxxxx بله
دی 066 xxxxxxxxxxxxx بله
صادرات 019 xxxxxxxxxxxxx بله
رفاه 013 xxxxxxxx , xxxxxxxxx بله
ملت 012 xxxxxxxx , xxxxxxxxx , xxxxxxxxxx بله
تجارت 018 xxxxxxxxxxxxx بله
ایران زمین 069 xxxx-xxx-xxxxxx-x بله
گردشگری 064 xxx.xxxx.xxxxxx.x , xxxx.xxxx.xxxxxx.x بله
انصار 063 xxxx-xx-xxxxxx-x , xxxx-xx-xxxxxxx-x , xxxx-xx-xxxxxxxx-x , xxxx-xxx-xxxxxxx-x , xxxx-xxx-xxxxxxx-xx , xxxx-xxx-xxxxxxxx-x بله
حکمت ایرانیان 065 xxx-xxx-xxxxxxx-x , xxxx-xx-xxxxxxx-x بله
قرض الحسنه مهر ایران 060 xxxx-xx-xxxxxx-x , xxxx-xx-xxxxxxx-x , xxxx-xxx-xxxxxxx-x بله
قوامین 052 xxxxxxxxxxxxxxx خیر
موسسه اعتباری توسعه 051 xxx-xxx-xxxxxx-xx , xxx-xxx-xxxxx-xx , xxx-xxx-xxxx-xx , xxx-xxx-xxx-xx , xxx-xxx-xx-xx , xxx-xxx-x-xx , xxxx-xxx-xxxxxx-xx , xxxx-xxx-xxxxx-xx , xxxx-xxx-xxxx-xx , xxxx-xxx-xxx-xx , xxxx-xxx-xx-xx , xxxx-xxx-x-xx بله
خاورمیانه 078 xxxx-xx-xxx-xxxxxxxxx بله
قرض الحسنه رسالت 070 xx.xxxxxx.x , xx.xxxxxxx.x , xxx.xxxxxxx.x بله
موسسه اعتباری کوثر 073 xxxxxxxxxxxxxx , xxxxxxxxxxxxx خیر
موسسه اعتباری نور 080 xxxxxxxxxxxxx بله
موسسه اعتباری ملل 075 xxxxxxxxxxxxxxxxxx بله
ایران ونزوئلا 095 xxxxxxxxxx خیر
مرکزی 010 xxxxxxxxxxxxxxxx خیر

لیست بانک‌های دارای شماره شبا در استعلام شماره کارت

مقادیر

عنوان
ملی
سپه
توسعه صادرات
صنعت و معدن
مسکن
توسعه تعاون
پاسارگاد
آینده
شهر
دی
صادرات
رفاه
ملت
تجارت
گردشگری
خاورمیانه
قرض الحسنه رسالت
موسسه اعتباری نور