📋 معرفی
سند اطلاعات ارتباط با API های کیف پول کاینو
🔐 احراز هویت و امنیت
ساخت امضای دیجیتال (Sign)
برای تمامی درخواستها (به جز Login) نیاز به امضای دیجیتال دارید. الگوی ساخت امضا:
#parameter1#parameter2#parameter3#
قوانین ساخت امضا:
پارامترها دقیقاً به ترتیب تعریفشده به هم متصل میشوند
پارامترهای خالی یا null از امضا حذف میشوند
بین هر پارامتر از کاراکتر # استفاده میشود
در ابتدا و انتهای رشته نیز # قرار میگیرد
توجه: پارامترهای اختیاری اگر مقدار نداشته باشند، کاملاً از رشته امضا حذف میشوند (حتی #
آنها).
📁 دستهبندی APIها
۱. احراز هویت و کاربران
ورود به سیستم
POST /rest/channel/wallet/v1/login
نمونه درخواست (Request):
{
"username": "channel_user",
"password": "secret123",
"sign": "امضای دیجیتال محاسبه شده"
}
ساختار sign:
#username#password#
نمونه پاسخ (Response):
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.xxxxx"
}
تغییر رمز عبور
POST /rest/channel/wallet/v1/changePassword
نمونه درخواست:
{
"oldPassword": "old123",
"newPassword": "newSecure456",
"confirmPassword": "newSecure456"
}
ساختار sign:
#oldPassword#newPassword#confirmPassword#
ثبتنام کاربر جدید در کانال
POST /rest/channel/wallet/v1/enroll
نمونه درخواست:
{
"tenantCode": "TENANT001",
"username": "newuser",
"password": "pass123",
"loginType": "PASSWORD"
}
ساختار sign:
#tenantCode#username#password#loginType#
تأیید ثبتنام کاربر
POST /rest/channel/wallet/v1/enroll/verify
نمونه درخواست:
{
"username": "newuser",
"reference": "REF123456",
"otp": "123456",
"password": "pass123",
"confirmPassword": "pass123"
}
ساختار sign:
#username#reference#otp#password#confirmPassword#
۲. مدیریت کاربران و سازمانها
ثبت شخص حقیقی
POST /rest/channel/wallet/v1/person
نمونه درخواست:
{
"tenant": "TENANT001", #اجباری
"firstName": "علی", #اجباری
"lastName": "احمدی", #اجباری
"birthDate": "1360/01/01", #اجباری
"fatherName": "حسن", #اجباری
"gender": "MALE",
"username": "989123456789", #اجباری
"phoneNumber": "989123456789", #اجباری
"email": "ali@example.com",
"postalCode": "1234567890",
"address": "تهران، خیابان نمونه",
"city": "تهران",
"province": "تهران",
"country": "IR",
"identifier": "0012345678", #اجباری
"nationality": null,
"currencyCode": "IRR", #اجباری
"enroll": true
}
ساختار sign:
#tenant#firstName#lastName#birthDate#fatherName#gender#username#phoneNumber#email#postalCode#address#city#province#country#identifier#nationality#currencyCode#[enroll]#
[enroll] اختیاری است
بروزرسانی اطلاعات کاربر
POST /rest/channel/wallet/v1/person/basic
نمونه درخواست:
{
"username": "string", # نام کاربری
"nationality": "string", # ملیت
"tenant": "string", # شناسه تننت
"sign": "string", # اجباری
"firstName": "string", # نام
"lastName": "string", # نام خانوادگی
"birthDate": "string", # تاریخ تولد
"gender": "string", # جنسیت
"fatherName": "string" # نام پدر
}
ثبت سازمان
POST /rest/channel/wallet/v1/organization
نمونه درخواست:
{
"tenant": "TENANT001",
"name": "شرکت نمونه",
"registrationDate": "1390/05/05",
"registerCode": "123456",
"username": "company_sample",
"phoneNumber": "02112345678",
"email": "info@company.com",
"postalCode": "9876543210",
"address": "تهران، میدان نمونه",
"city": "تهران",
"province": "تهران",
"country": "IR",
"identifier": "1234567890",
"nationality": "IRANIAN",
"currencyCode": "IRR",
"enroll": true
}
ساختار sign:
#tenant#name#registrationDate#registerCode#username#phoneNumber#email#postalCode#address#city#province#country#identifier#nationality#currencyCode#[enroll]#
دریافت اطلاعات شخص
GET /rest/channel/wallet/v1/person/{username}?tenant=TENANT001&sign=...
{
"username": "string",
"nationality": "string",
"identifier": "string",
"firstName": "string",
"lastName": "string",
"birthDate": "2026-01-11T07:55:07.092Z",
"gender": "string",
"fatherName": "string"
}
ساختار sign:
#username#tenant#
دریافغت اطلاعات شخص حقوقی
GET /rest/channel/wallet/v1/organization/{username}?tenant=TENANT001&sign=...
{
"username": "string",
"nationality": "string",
"identifier": "string",
"registrationDate": "2026-01-11T07:56:02.492Z",
"registerCode": "string",
"name": "string"
}
ساختار sign:
#username#tenant#
۳. تراکنشهای مالی
دریافت موجودی
GET
/rest/channel/wallet/v1/balance?username=ali_ahmadi¤cy=IRR&tenant=TENANT001&sign=...
ساختار sign:
#username#currency#tenant#
دریافت موجودی حساب
GET
/rest/channel/wallet/v1/balance/account?username=ali_ahmadi¤cy=IRR&tenant=TENANT001&sign=...
ساختار sign:
#account#tenant#
{
"accountNumber": "string",
"balance": 0,
"currency": "string"
}
انتقال وجه
POST /rest/channel/wallet/v1/transfer
نمونه درخواست:
{
"tenant": "TENANT001",
"channel": "CHANNEL01 غیر اجباری",
"fromAccountNumber": "100012345678",
"fromUsername": "989123456789 غیر اجباری",
"fromUsernameTenant": "TENANT001 غیر اجباری",
"toAccountNumber": "200098765432",
"toUsername": "989123489920 غیر اجباری",
"toUsernameTenant": "TENANT001 غیر اجباری",
"facilityId": "FAC001 اجباری",
"currency": "IRR اجباری",
"amount": 500000 اجباری,
"identifier": "TRX123 یکتا باشد",
"description": "انتقال آزمایشی",
"stan": "123456 یکتا باشد",
"localDate": "2026/01/05 12:00:00 اجباری",
"person": true درصورت انتقال به شخص,
"isCfmTransaction": false,
"bankIban": "IR012345678901234567890123 غیر اجباری"
}
ساختار sign:
#tenant#channel#fromAccountNumber#fromUsername#fromUsernameTenant#toAccountNumber#toUsername#toUsernameTenant#facilityId#currency#amount#identifier#description#stan#localDate#person#isCfmTransaction#bankIban#
انتقال گروهی
POST /rest/channel/wallet/v1/transfer/group
نمونه درخواست:
{
"tenant": "TENANT001",
"walletUsername": "admin_user",
"accountNumber": "100012345678",
"description": "پرداخت گروهی",
"items": [
{
"accountNumber": "200098765432",
"username": "reza_hosseini",
"tenant": "TENANT001",
"invoiceNumber": "INV001",
"amount": "200000",
"description": "پرداخت اول",
"isFcmTransaction": false,
"bankIban": "IR0987654321"
}
],
"stan": "789012",
"localDate": "2026/01/05 12:00:00"
}
ساختار sign:
#tenant#walletUsername#accountNumber#description#[items]#stan#localDate#
ساخت Sign هر آیتم:
#accountNumber#username#tenant#invoiceNumber#amount#description#isFcmTransaction#bankIban#
درخواست برداشت نقدی پایا
POST /rest/channel/wallet/v1/paymentOrder
نمونه درخواست:
{
"sourceAccountNumber": "string", # حساب مبدا اجباری
"amount": 0, # مبلغ اجباری
"beneficiaryId": "string", # کد ملی مرتبط با شماره شبا اجباری
"beneficiaryName": "string", # نام مقصد اجباری
"beneficiaryIban": "string", # شماره شبا مقصد اجباری
"externalReference": "string", # اختباری شناسه تراکنش
"description": "string", # توضیحات تراکنش اختباری
"username": "string", # نام کاربری درخواست دهنده در صورتی که sourceAccountNumber مقدار دهی نشده است این رو پر کنید
"tenant": "string", # کد تننت اجباری
"stan": "string", # شناسه تگتا تراکنش اجباری
"localDate": "string", # تاریخ لحظه تراکنش اجباری
"sign": "string" # اجباری
}
درخواست برداشت نقدی ساتنا
POST /rest/channel/wallet/v1/paymentOrder/rtgs
نمونه درخواست:
{
"sourceAccountNumber": "string", # حساب مبدا اجباری
"amount": 0, # مبلغ اجباری
"beneficiaryId": "string", # کد ملی مرتبط با شماره شبا اجباری
"beneficiaryName": "string", # نام مقصد اجباری
"beneficiaryIban": "string", # شماره شبا مقصد اجباری
"externalReference": "string", # اختباری شناسه تراکنش
"description": "string", # توضیحات تراکنش اختباری
"username": "string", # نام کاربری درخواست دهنده در صورتی که sourceAccountNumber مقدار دهی نشده است این رو پر کنید
"tenant": "string", # کد تننت اجباری
"stan": "string", # شناسه تگتا تراکنش اجباری
"localDate": "string", # تاریخ لحظه تراکنش اجباری
"sign": "string" # اجباری
}
درخواست برداشت نقدی پایا
GET /rest/channel/wallet/v1/paymentOrder?accountNumber=...
نمونه درخواست:
درخواست ها در queryParam ارسال شود
accountNumber شماره حساب اختباری
username نام کاربری اختیاری
tenantCode شناسه تننت اختباری
fromAmount از مبلغ اختباری
toAmount تا مبلغ اختباری
state وضعیت اختباری
paymentReference شناسه اختیاری
fromStateDate از تاریخ وضعیت
toStateDate تا تاریخ وضعیت
sign اجباری
from صفحه اجباری
size تعداد در هر صفحه اجباری
{
"items": [
{
"serialNumber": "string",
"accountNumber": "string",
"beneficiaryIban": "string",
"beneficiaryName": "string",
"amount": 0,
"description": "string",
"stateType": "string",
"stateTypeDescription": "string",
"stateDate": 0
}
],
"count": 0
}
پیگیری تراکنش با stan
POST /rest/channel/wallet/v1/inquiry
نمونه درخواست:
{
"localDate": "string", # تاریخ روز درخواست اجباری
"stan": "string", # stan تراکنش مورد نظر اجباری
"tenant": "string", # کد تننت اجباری
"sign": "string" # امضا اجباری
}
{
"state": "string",
"description": "string",
"reference": "string"
}
ایجاد درخواست حساب پشتیبان
POST /rest/channel/wallet/v1/supportedAccount
نمونه درخواست:
{
"username": "string", # نام کاربری حساب اجباری
"tenant": "string", # کد تننت اجباری
"currency": "string", # ارزی که قصد دارید تا پشتیبان حساب باشد اجباری
"status": true, # وضعیت اجباری
"sign": "string" # اجباری
}
تسویه به حساب
POST /rest/channel/wallet/v1/settlement
نمونه درخواست:
{
"facilityCode": "string", # کد امکانات
"facilityType": "string", # نوع امکانات
"identifier": "string", # شناسه یکتا برای پیگیری
"iban": "string", # شماره شبا در صورت موجود بودن اختیاری
"amount": 0, # اجباری حتی 0
"description": "string", # توضیحات تسویه
"stan": "string", # شناسه یکتا تراکنش اجباری و برای هر درخواست uniq باید باشد
"sign": "string" # اجباری
}
اصلاحیه تراکنش
POST /rest/channel/wallet/v1/reverse
نمونه درخواست:
{
"amount": 0, # مبلغ تراکنش اجباری
"localDate": "string", # تاریخ تراکنش اجباری
"stan": "string", # شناسه یکتا اجباری
"tenant": "string", # کد تننت اجباری
"sign": "string" # اجباری
}
رسانه ها
ایجاد رسانه جدید
POST /rest/channel/wallet/v1/media
نمونه درخواست:
{
"tenant": "string", # کد تننت
"typeCode": "string", # نوع رسانه
"accountNumber": "string", # شماره حساب مرتبط با رسانه
"password": "string", # رمز رسانه
"sign": "string" # امضا اجباری
}
{
"serialNumber": "string" # شماره سریال رسانه
}
دریافت لیست اتربیوت های رسانه
POST /rest/channel/wallet/v1/mediaAttribute
نمونه درخواست:
موارد در query وارد شود
serialNumber سریال رسانه اجباری
mediaTypeCode نوع رسانه اجباری
sign امضا درخواست اجباری
{
"attributes": [
{
"code": "string",
"value": "string"
}
]
}
۴. مدیریت ووچرها
ایجاد ووچر با نام کاربری
POST /rest/channel/wallet/v1/voucher/username
نمونه درخواست:
{
"tenant": "TENANT001",
"currencyCode": "IRR",
"maximumUsage": 10,
"fromEffectiveDate": "2026/01/01",
"toEffectiveDate": "2026/12/31",
"trustee": "trustee_user",
"description": "ووچر تخفیف",
"amounts": ["100000", "200000", "500000"]
}
ساختار sign:
#tenant#currencyCode#maximumUsage#fromEffectiveDate#toEffectiveDate#trustee#description#[amounts]#
هر مقدار در amounts:
#amount#
ایجاد ووچر با شماره حساب
POST /rest/channel/wallet/v1/voucher/accountNumber
نمونه درخواست:
{
"amounts": [
10000, 900000
], # درصورتی که قیمت متغیر بود قابلیت انتخاب به کاربر داده میشود در غیر به صورت [] وارد شود
"description": "string", #توضیحات مربوط به ووچر اختیاری
"name": "string", # اجباری
"maximumUsage": 0, #حداکثر تعداد استفاده از ووچر
"sumAmountTarget": 0, #مبلغ مورد انتظار از پرداخت ها
"maxAmount": 0, #حداکثر مبلغ قابل پرداخت
"minAMount": 0, # حداقل مبلغ قابل پرداخت
"connectivityType": "string", #اختیاری
"sign": "string", # اجباری
"fromEffectiveDate": "string", # قعال از تاریخ
"toEffectiveDate": "string", # فعال تا تاریخ
"tenant": "string", # اجباری کد تننت
"trustee": false,
"beneficiaries": [
{
"amount": 0,
"username": "string",
"beneficiaryType": "string"
}
], # در صورتی که این ووچر ذینفع دارد باید مبلغ هر بک، نام کاربری ذینفع، نوع آن را معرفی کنید تا پس از هر
پرداخت به ذینفع مورد نظر نیز واریز شود در غیر این صورت به صورت [] وارد شود
"accountNumber": "string" # شماره حساب مقصد اجباری
}
ساختار sign:
#tenant#currencyCode#maximumUsage#fromEffectiveDate#toEffectiveDate#trustee#description#[amounts]#
هر مقدار در amounts:
#amount#
تسویه ووچر
POST /rest/channel/wallet/v1/voucher/payOff
نمونه درخواست:
{
"tenant": "TENANT001",
"fromUsername": "payer_user",
"qrCode": "QR123456789",
"amount": "150000",
"description": "تسویه ووچر",
"beneficiaries": [
{
"qrCode": "BENEF001",
"amount": "100000",
"description": "ذینفع اول"
}
],
"stan": "345678",
"localDate": "2026/01/05 12:00:00"
}
ساختار sign:
#tenant#fromUsername#qrCode#amount#description#[beneficiaries]#stan#localDate#
هر ذینفع:
#qrCode#amount#description#
۵. درگاه پرداخت (IPG)
ایجاد درخواست پرداخت
POST /rest/channel/wallet/v1/chargeWallet
نمونه درخواست:
{
"identifier": "PAY001",
"bankDepositIdentifier": null,
"tenant": "TENANT001 اجباری",
"amount": 300000 اجباری,
"username": "user123 اختیاری",
"payerMobileNumber": "09123456789 اجباری",
"accountNumber": "100012345678 اجباری درصورتی که username وارد نشده",
"localDate": "2026/01/05 12:00:00 اجباری",
"callBackUrl": "https://example.com/callback اجباری",
"voucherReference": null
"autoVerify": true اختیاری، در صورتی که true بفرستید همواره واریز تایید میشه,
"validCards": ["603799", "627412"]اختباری,
"description": "شارژ کیف پول"
}
ساختار sign:
#identifier#bankDepositIdentifier#tenant#amount#username#payerMobileNumber#accountNumber#localDate#callBackUrl#voucherReference#autoVerify#[validCards]#description#
لیست درخواست های شارژ کیف پول
GET /rest/channel/wallet/v1/chargeWallet
نمونه درخواست:
موراد در query param ارسال شود
tenant اجباری
identifier
ipgReference
username
currency
statusType
fromDate
toDate
fromAmount
toAmount
fromReference
toReference
from اجباری
size اجباری
desc
sign اجباری
{
"chargeWallets": [
{
"date": "string",
"tenantCode": "string",
"tenantCallbackUrl": "string",
"identifier": "string",
"statusType": "string",
"username": "string",
"amount": 0,
"currency": "string",
"hashPan": "string",
"maskedPan": "string",
"description": "string",
"reference": 0,
"ipgResponseValid": true
}
],
"count": 0
}
تأیید پرداخت
POST /rest/channel/wallet/v1/chargeWallet/verify
نمونه درخواست:
{
"tenant": "TENANT001",
"identifier": "PAY001",
"amount": "300000",
"reference": "REF789",
"stan": "901234",
"isVerify": true
}
ساختار sign:
#tenant#identifier#amount#reference#stan#isVerify#
۶. گزارشگیری
گزارش تراکنشها
GET
/rest/channel/wallet/v1/transaction?tenant=TENANT001&username=...&fromDate=2026-01-01&toDate=2026-01-05&sign=...
ساختار sign:
#tenant#username#product#strFromDate#strToDate#currency#invoiceNumber#stan#fromTransactionId#toTransactionId#channel#accountNumber#fromPostDate#toPostDate#ascending#transactionSign#from#size#
لیست ووچرها
GET /rest/channel/wallet/v1/vouchers?tenant=TENANT001&username=...&sign=...
ساختار sign:
#tenant#username#accountNumber#reference#name#stateType#strFromCreateDate#strToCreateDate#from#size#
۷. خدمات POS
شارژ از طریق POS
POST /rest/channel/wallet/v1/chargeWallet/pos
نمونه درخواست:
{
"username": "pos_user",
"rrn": "123456789012",
"trace": "987654",
"amount": "200000",
"facilityCode": "POS001"
}
ساختار sign:
#username#rrn#trace#amount#facilityCode#
تسویه از طریق POS
POST /rest/channel/wallet/v1/voucher/payOff/pos
نمونه درخواست:
{
"voucherReference": "VOUCH001",
"rrn": "567890123456",
"trace": "123456",
"amount": "150000",
"facilityCode": "POS002"
}
ساختار sign:
#voucherReference#rrn#trace#amount#facilityCode#
حذف ووچر
POST /rest/channel/wallet/v1/voucher/delete
نمونه درخواست:
{
"reference": "string", #اجباری
"tenant": "string", #اجباری
"sign": "string" #اجباری
}
ساختار sign:
#reference#tenant#
۸. امضای جمعی
ایجاد تسک
POST /rest/channel/wallet/v1/multiSignature/portalTask
نمونه درخواست:
{
"multiSignatureInfoId": 5,
"taskType": "TRANSFER_CONFIRM",
"username": "approver1",
"tenant": "TENANT001",
"amount": "1000000",
"qrCode": "QRAPPROVE001",
"toAccountNumber": "300012345678",
"iban": "IR3456789012",
"beneficiaryId": "BEN001",
"beneficiaryName": "شرکت دریافتکننده",
"description": "انتقال بزرگ"
}
ساختار sign:
#multiSignatureInfoId#taskType#username#tenant#amount#qrCode#toAccountNumber#iban#beneficiaryId#beneficiaryName#description#
رأیدهی
POST /rest/channel/wallet/v1/multiSignature/vote
نمونه درخواست:
{
"portalTaskId": 10,
"tenantCode": "TENANT001",
"username": "approver2",
"statusType": "CONFIRM"
}
ساختار sign:
#portalTaskId#tenantCode#username#statusType#
۹. خدمات ارزی
دریافت نرخ ارز
GET /rest/channel/wallet/v1/rate/type/{type}?tenant=TENANT001&sign=...
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز sse
GET /rest/channel/wallet/v1/sse/rate/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز pol
GET /rest/channel/wallet/v1/rate/pol/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز land
GET /rest/channel/wallet/v1/rate/land/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز iqd
GET /rest/channel/wallet/v1/rate/iqd/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز gold24
GET /rest/channel/wallet/v1/rate/gold24/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز gold
GET /rest/channel/wallet/v1/rate/gold/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز dirham
GET /rest/channel/wallet/v1/rate/dirham/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز cny
GET /rest/channel/wallet/v1/rate/cny/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
دریافت نرخ ارز blueToken
GET /rest/channel/wallet/v1/rate/blueToken/type/{type}?tenant=TENANT001&sign=...
[
{
"enable": true,
"rate": 0,
"commissionFixRate": 0,
"commissionRate": 0
}
]
ساختار sign:
#exchangeType#tenant#
تبدیل ارز
POST /rest/channel/wallet/v1/exchange
نمونه درخواست:
{
"username": "user123",
"tenant": "TENANT001",
"currency": "USD",
"exchangeType": "BUY",
"amount": "100",
"stan": "EXC001"
}
ساختار sign:
#username#tenant#currency#exchangeType#amount#stan#
تبدیل ارز
POST /rest/channel/wallet/v1/exchange/byParty
نمونه درخواست:
{
"identifier": "string", # شناسه اجباری
"partyId": 0, # شناسه کاربر اجباری
"tenant": "string", # شناسه تننت اجباری
"currency": "string", # ارز اجباری
"exchangeType": "BUY", # نوع تبدیل BUY / SELL اجباری
"amount": 0, # مبلغ اجباری
"exchangeRate": 0, # اختباری
"stan": "string", # شناسه یکتا اجباری
"sign": "string" # امضا اجباری
}
سرمایه گذاری
دریافت لیست حساب های سرمایه گذاری
GET /rest/channel/wallet/v1/investment/account
نمونه درخواست:
پارامتر ها در query ارسال شود
tenant شناسه تننت اجباری
username نام کاربری شخص اجباری
currency ارز حساب اجباری
sign امضا اجباری
{
"accounts": [
{
"accountNumber": "string",
"type": "string",
"typeCode": "string",
"currency": "string",
"currencyCode": "string",
"rate": 0,
"balance": 0,
"investmentMonthlyAmount": 0,
"startDate": 0,
"endDate": 0,
"statusCode": "string",
"status": "string"
}
]
}
ایجاد صندوق سرمایه گذاری
POST /rest/channel/wallet/v1/investment/account
نمونه درخواست:
{
"tenant": "string", # شناسه تننت اجباری
"username": "string", # نام کاربری شخص مورد نظر اجباری
"currency": "string", # ارز اجباری
"agreementType": "string", # نوع قرارداد اجباری
"amount": 0, # مبلغ قرارداد اجباری
"stan": "string", # شناسه یکتا اجباری
"identifier": "string", # شناسه کاربر مورد نظر اجباری
"identifierTypeCode": "string", # نوع کاربر مورد نظر اجباری
"description": "string", # توضیحات اختباری
"webChannelId": "string", # در صورتی که از وب چنل درخواست ارسال شده پر شود
"referralCode": "string", # در صورتی که کد دعوت دارد ارسال شود
"sign": "string" # امضا اجباری
}
ایجاد صندوق سرمایه گذاری متد جدید
POST /rest/channel/wallet/v1/investment/account/agreement
نمونه درخواست:
{
"tenant": "string", # شناسه تننت اجباری
"username": "string", # نام کاربری شخص مورد نظر اجباری
"currency": "string", # ارز اجباری
"agreementType": "string", # نوع قرارداد اجباری
"amount": 0, # مبلغ قرارداد اجباری
"stan": "string", # شناسه یکتا اجباری
"identifier": "string", # شناسه کاربر مورد نظر اجباری
"identifierTypeCode": "string", # نوع کاربر مورد نظر اجباری
"description": "string", # توضیحات اختباری
"webChannelId": "string", # در صورتی که از وب چنل درخواست ارسال شده پر شود
"referralCode": "string", # در صورتی که کد دعوت دارد ارسال شود
"sign": "string" # امضا اجباری
}
ابطال صندوق سرمایه گذاری
POST /rest/channel/wallet/v1/investment/account/cancel
نمونه درخواست:
{
"accountNumber": "string", #شماره حساب صندوق اجباری
"tenant": "string", # کد تننت اجباری
"username": "string", # نام کابری شخص مورد نظر اجباری
"sign": "string" # امضا اجباری
}
۱۰ مدیریت حساب ها
حساب های کاربر
GET /rest/channel/wallet/v1/accounts?username=989121234567&tenant=TENANT001¤cy=IRR&sign=....
ساختار sign:
تمامی مقادیر query اجباری هستند به جر currency
#username#tenant#currency#
{
{
"accounts": [
{
"id": 0,
"accountNumber": "string",
"status": "string",
"currency": "string",
"balance": 0,
"description": "string",
"type": "string",
"typeCode": "string",
"currencyCode": "string",
"roles": [
{
"effectivity": {
"from": "2026-01-12T05:30:13.338Z",
"to": "2026-01-12T05:30:13.338Z"
},
"id": 0,
"party": {
"id": 0,
"name": "string",
"firstName": "string",
"lastName": "string",
"isoName": "string",
"identifier": "string",
"customerCode": "string",
"identifierType": {
"id": 0,
"code": "string",
"description": "string"
},
"partyType": {
"id": 0,
"code": "string",
"description": "string"
}
},
"type": {
"id": 0,
"code": "string",
"description": "string"
}
}
],
"thirdPartyIdentifiers": [
"string"
]
}
],
"count": 0
}
جزییات حساب کاربر
GET /rest/channel/wallet/v1/account/accountNumber?accountNumber=&tenant=TENANT001&sign=...
ساختار sign:
#accountNumber#tenant#
{
"id": 0,
"accountNumber": "string",
"status": "string",
"currency": "string",
"balance": 0,
"description": "string",
"type": "string",
"typeCode": "string",
"currencyCode": "string",
"roles": [
{
"effectivity": {
"from": "2026-01-12T05:33:49.712Z",
"to": "2026-01-12T05:33:49.712Z"
},
"id": 0,
"party": {
"id": 0,
"name": "string",
"firstName": "string",
"lastName": "string",
"isoName": "string",
"identifier": "string",
"customerCode": "string",
"identifierType": {
"id": 0,
"code": "string",
"description": "string"
},
"partyType": {
"id": 0,
"code": "string",
"description": "string"
}
},
"type": {
"id": 0,
"code": "string",
"description": "string"
}
}
],
"thirdPartyIdentifiers": [
"string"
]
}
صاخب حساب
GET /rest/channel/wallet/v1/account/owner
نمونه درخواست:
موارد در query param وارد شود
accountNumber شماره حساب اجباری
username نام کاربری کاربر مورد نظر اختیاری
tenantCode کد تننت اختباری
currencyCode کد ارز اختباری
sign امضا درخواست اجباری
ساختار sign:
#username#tenant#currency#exchangeType#amount#stan#
{
"fullName": "ali"
}
⚠️ نکات مهم
فرمت تاریخها
تمامی تاریخها باید در فرمت زیر ارسال شوند:
yyyy/MM/dd HH:mm:ss
فرمت اعداد
اعداد به صورت String ارسال شوند
برای مبالغ پولی از toPlainString() استفاده شود
از جداکننده هزارگان استفاده نشود
مقادیر خاص
Enum ها با نام انگلیسی ارسال شوند (مثل ACTIVE)
Boolean به صورت true / false
مقادیر null از Sign حذف میشوند
محدودیتها
حداکثر اندازه صفحه گزارش: ۵۰ رکورد
توکن Login در هدر Authorization ارسال شود
IP کلاینت باید در لیست مجاز کانال ثبت شده باشد
© ۱۴۰۴ Kainos - تمام حقوق محفوظ است