###POST /oak/v2/clients/{clientId}/transferTo * **شرح: ** &#x202b; سرویس انتقال وجه (داخلی، پایا و ساتنا) از حساب کلاینت به حساب دیگران: با استفاده از این سرویس می‌‌توانید از حساب مبدا خود در بانک به حساب مقصد موجود در همان بانک یا به شماره شبا سایر بانک‌ها پول واریز کنید. * **اسکوپ: ** ```oak:transfer-to:execute``` * **رویکرد: ** ```Authorization_Code``` * **رویکرد بانک کشاورزی: ** ```Authorization_SMS``` * **<a href="ResponseCodeOak.pdf"> دانلود مستندات ریسپانس کد ها</a> ** ```````````````` {address}/oak/v2/clients/{clientId}/transferTo?trackId={trackId} ```````````````` <div class="sandboxaddress sandbox" id="sandbox" style="float:right" style="display: none" > https://sandboxapi.finnotech.ir<b><span class="finnotech-sandbox-address-text"> :address </span></b> </div> <div class="production-address production" style="float:right" style="display: block"> https://apibeta.finnotech.ir <b> :address </b> </div> <!-- * **سرویس‌های مرتبط: [تصدیق انتقال وجه(مربوط به سرویس های بانک کشاورزی)](/doc/oak-transferConfirmation.html?sandbox=+sandbox/)** --> <br> <br> **سرویس‌های مرتبط: [گزارش پایا](/doc/oak-payas.html?sandbox=+sandbox/)** <br> **سرویس‌های مرتبط: [پیگیری تراکنش جامع](/doc/oak-proxyInquiry.html?sandbox=+sandbox/)** <br> **سرویس‌های مرتبط: [پیگیری تراکنش داخلی](/doc/oak-transferInquiry.html?sandbox=+sandbox/)** <br> **سرویس‌های مرتبط: [گزارش ساتنا](/doc/oak-satna-inquiry.html?sandbox=+sandbox/)** <br> **سرویس‌های مرتبط : [پیگیری تراکنش](/doc/oak-transactionInquiry-get.html?sandbox=+sandbox/)** <br> **لطفا جهت انجام سرویس [پیگیری تراکنش جامع](/doc/oak-proxyInquiry.html?sandbox=+sandbox/)، 30 دقیقه بعد از اعلام نتیجه ی سرویس انتقال وجه اقدام نمایید** <br> <br> ** لطفا در صورتیکه نتیجه ی تراکنش انتقال وجه با استاتوس 408 اعلام شد، لطفا از تکرار تراکنش خودداری نموده و سپس از [سرویس پیگیری تراکنش](/doc/oak-transactionInquiry-get.html?sandbox=+sandbox/) استفاده نمایید و پس از مشخص شدن نتیجه ی تراکنش در خروجی سرویس مذکور ، از سرویسهای گزارش گیری استفاده نمایید** #### Notes‍ * این سرویس از مبدا حساب هایی که برای اپلیکیشن شما تایید شده است امکان پذیر است. <!--* &#x202b; اگر شماره شبا به عنوان حساب مقصد ارسال شود تا مبلغ ۵۰۰,۰۰۰,۰۰۰ ریال، انتقال وجه پایا انجام می‌شود.--> * سیکل های پایا تا اطلاع ثانوی : <!-- * &#x202B; چرخه اول. 17.15 روز قبل تا 03.15 روز جاری ( تسویه 3.45 ) (بانک پارسیان این سیکل را پشتیبانی نمیکند)--> <!-- * &#x202b; چرخه دو. 03.15 روز جاری تا 10.15 روز جاری (تسویه 10.45)--> <!-- * &#x202b; چرخه سه. 10.15 روز جاری تا 13.15 روز جاری (تسویه 13.45)--> <!-- * &#x202b; چرخه چهار. 13.15 روز جاری تا 17.15 روز جاری (تسویه 17.45)--> * &#x202B; چرخه اول. 18.45 روز قبل تا 03.45 روز جاری (بانک پارسیان این سیکل را پشتیبانی نمیکند) * &#x202b; چرخه دو. 03.45 روز جاری تا 10.45 روز جاری * &#x202b; چرخه سه. 10.45 روز جاری تا 13.45 روز جاری * &#x202b; چرخه چهار. 13.45 روز جاری تا 18.45 روز جاری * &#x202b; انتقال وجه داخلی به حساب / کارت آینده دقایقی بین ساعت 23:54 الی 00:00 که روز مالی بانک بسته می شود، غیرفعال است. * &#x202b; اگر فیلد وضعیت در پاسخ تراکنش داخلی «PENDING» یا «UNKNOWN» بود قبل از تلاش مجدد با فراخوانی سرویس استعلام [Transfer Inquiry service](/oak-transferInquiry.html)از آخرین وضعیت تراکنش اطمینان حاصل نمایید. * &#x202b; اگر فیلد وضعیت در پاسخ تراکنش بین بانکی(پایا) «PENDING» یا «UNKNOWN» بود قبل از تلاش مجدد با فراخوانی سرویس گزارش پایا [Payas service](/oak-payas.html) از آخرین وضعیت تراکنش اطمینان حاصل نمایید، توجه داشته باشید که تراکنش با یک سیکل تاخیر در این لیست برگردانده خواهد شد. * &#x202b; درصورت فرستادن چند کاراکتر (-) به هم پیوسته در شرح تراکنش خطا ورودی برگردانده می‌شود. * در هنگام واریز پایا در بانک پارسیان مبلغ تراکنش همان لحظه از حساب کم نمیشود لذا همواره به موجودی حساب با احتساب تراکنش ها و مبالغ آن توجه شود * &#x202b; در صورتیکه وضعیت یک تراکنش ناموفق/ نامشخص/ تایم‌اوت(با استتوس کد 408) بود از تکرار تراکنش خودداری و حتما صورت‌حساب خود را چک فرمایید. در صورت پایا بودن تراکنش‌ها، گزارش پایای خود را نیز چک بفرمایید و بعد از نهایتا 72 ساعت نسبت به تکرار/ عدم تکرار تراکنش‌های فوق تصمیم‌گیری فرمایید. * &#x202b; دو trackId یکسان سمت فینوتک ارسال نفرمایید. #### Headers مقادیر زیر باید در هدر قرار بگیرد ```````````````` Content-Type: application/json Authorization : Bearer {Token} ```````````````` #### URI Parameters * **clientId:** (اجباری) شناسه کلاینت #### Query Parameters * **trackId:** (اجباری) &#x202b; رشته ای با طول حداکثر ۴۰ کاراکتر شامل حرف و عدد. در صورت نیاز به نتیجه یک فراخوانی میتوانید با trackId آن را فیلتر کنید. در گزارش فراخوانی سرویس فراخوانی مورد نظر را با همین کد پیگیری پیدا میکنید. * example: ```transfer-to-deposit-0323``` #### Body ##### Example: ```````````````` { "amount": 1 , "description": "شرح تراکنش" , "destinationFirstname": "خلیلی حسینی بیابانی" , "destinationLastname": "سمیه غز اله فریماه" , "destinationNumber": "IR120620000000302876732005" , "paymentNumber": "123456" , "deposit": "776700000", "sourceFirstName": "مارتین" , "sourceLastName": "اسکورسیزی" , "reasonDescription": "1", "merchantName": "آقای پذیرا", "merchantIban": "IR120620000000302876733006" } ```````````````` <!--* **amount: ** مبلغ انتقال وجه--> <!--* **description: ** شرح انتقال وجه (حداکثر ۳۰ کاراکتر برای بانک کشاورزی از کاراکتر فارسی استفاده نکنید و شرح سرویس انتقال باید با شرحی که در سرویس تصدیق انتقال وجه وارد شده است برابر باشد)--> <!--* **destinationFirstname: ** نام صاحب حساب مقصد، در صورتی که حساب مقصد شبا باشد حداقل ۲ و حداکثر ۳۰ کاراکتر. برای انتقال وجه داخلی نیازی به این فیلد نیست--> <!--* **destinationLastname: ** نام خانوادگی صاحب حساب مقصد، در صورتی که حساب مقصد شبا باشد حداقل ۲ و حداکثر ۳۰ کاراکتر. برای انتقال وجه داخلی نیازی به این فیلد نیست--> <!--* **destinationNumber: ** شماره حساب مقصد که میتواند شماره حساب بانکی یا ۲۶ کاراکتر شماره شبا باشد (اگر شماره حساب شما در بانک شامل کاراکتر اضافه مانند خط تیره میباشد با همان فرمت در پارامتر استفاده کنید)--> <!--* **paymentNumber: ** شناسه پرداخت ,این عدد در صورتحساب شما و مشتریان درج میشود و میتواند عددی مانند شماره فاکتور و یا سند داخلی باشد (حداکثر ۳۰ رقم، این فیلد تنها برای بانک آینده اجباری است)--> <!--* **deposit: ** شماره حساب مبدا - درصورتی که توکن انتقال شامل چند حساب مبدا باشد از این فیلد استفاده می شود، در غیراینصورت حساب مبدا از توکن دریافت می شود (این فیلد تنها برای انتقال از بانک کشاورزی اجباری است)--> <!--* **sourceFirstName: ** نام صاحب حساب مبدا (این فیلد تنها برای انتقال پایا و ساتنا از بانک کشاورزی اجباری است)--> <!--* **sourceLastName: ** نام خانوادگی صاحب حساب مبدا (این فیلد تنها برای انتقال پایا و ساتنا از بانک کشاورزی اجباری است)--> <!--* **sourceNid: ** کد ملی صاحب حساب مبدا (این فیلد تنها برای انتقال پایا و ساتنا از بانک کشاورزی اجباری است)--> <!--* **otpCode: ** کد اعتبار سنجی که بعد از فراخوانی سرویس تایید تراکنش برای صاحب حساب ارسال می شود (این فیلد تنها برای انتقال از بانک کشاورزی اجباری است)--> <!--* **transferId: ** شناسه انتقال، در پاسخ سرویس تایید تراکنش داده می شود و برای انتقال پایا و ساتنا الزامی است (این فیلد تنها برای انتقال از بانک کشاورزی اجباری است)--> | نام فیلد | توضیحات | بانک کشاورزی | بانک آینده | بانک پارسیان | بانک پاسارگاد | |-|-|-|-|-|-| | **amount** | مبلغ انتقال وجه | اجباری | اجباری | اجباری | اجباری | | **description** | شرح انتقال وجه (حداکثر ۳۰ کاراکتر) | اجباری | اجباری | اجباری | اجباری | | **destinationFirstname** | نام صاحب حساب مقصد (حداقل ۲ و حداکثر ۳۰ کاراکتر) برای انتقال پایا و ساتنا | اجباری | اجباری | اجباری | اجباری | | **destinationLastname** | نام خانوادگی صاحب حساب مقصد (حداقل ۲ و حداکثر ۳۰ کاراکتر) برای انتقال پایا و ساتنا | اجباری | اجباری | اجباری | اجباری | | **destinationNumber** | شماره حساب مقصد که میتواند شماره حساب بانکی یا شماره شبا(۲۶ کاراکتر) باشد (اگر شماره حساب شما در بانک شامل کاراکتر اضافه مانند خط تیره میباشد با همان فرمت در پارامتر استفاده کنید) | اجباری | اجباری | اجباری | اجباری | | **paymentNumber** | شناسه پرداخت ,این عدد در صورتحساب شما و مشتریان درج میشود و میتواند عددی مانند شماره فاکتور و یا سند داخلی باشد (حداکثر ۳۰ رقم) | | اجباری | | | | **reasonDescription** | بابت : [اطلاعات بیشتر](/doc/oak-reasonDescription.html?sandbox=+sandbox) | | اجباری | | | | **deposit** | شماره حساب مبدا - درصورتی که توکن انتقال شامل چند حساب مبدا باشد از این فیلد استفاده می شود، در غیراینصورت حساب مبدا از توکن دریافت می شود | اجباری | | | | | **sourceFirstName** | نام صاحب حساب مبدا برای انتقال پایا و ساتنا | اجباری | | | | | **sourceLastName** | نام خانوادگی صاحب حساب مبدا برای انتقال پایا و ساتنا | اجباری | | | | | **secondPassword** | رمز انتقال وجه | | | اجباری | | | **merchantName** | نام پذیرنده (مربوط به بانک آینده) | | | | | | **merchantIban** | شماره شبا پذیرنده (مربوط به بانک آینده) | | | | | | #### Results Format ##### Successful result format (status code 200) ```````````````` { "trackId": "transfer-to-deposit-0323", "result": { "amount": 1 , "description": "شرح تراکنش" , "destinationFirstname": "خلیلی حسینی بیابانی" , "destinationLastname": "سمیه غز اله فریماه" , "destinationNumber": "0201000900000" , "inquiryDate": "951217" , "inquirySequence": 1001 , "inquiryTime": "095554" , "message": " " , "paymentNumber": "12" , "refCode": "9611240622211448" , "sourceFirstname": "مهدی ز اده" , "sourceLastname": "امیر" , "sourceNumber": "0200900000000" , "type": "internal", "reasonDescription": "19", "transactionId": "1510-asf4973-098245893498872-1766", "endToEndId": "654651236465132" }, "status": "DONE" } ```````````````` * **result:** آبجکتی از پاسخ سرویس شامل: * **amount: ** مبلغ تراکنش * **description: ** شرح تراکنش * **destinationFirstname: ** نام صاحب حساب مقصد * **destinationLastname: ** نام خانوادگی صاحب حساب مقصد * **destinationNumber: ** شماره حساب مقصد * **inquiryDate: ** این اطلاعات در صورت بروز مغایرت احتمالی برای رفع مغایرت باید به بانک ارایه گردد * **inquiryTime: ** این اطلاعات در صورت بروز مغایرت احتمالی برای رفع مغایرت باید به بانک ارایه گردد * **message: ** در صورتی بروز خطا، پیغام خطا در این فیلد قرار میگیرد * **paymentNumber: ** شناسه پرداخت * **refCode: ** کد پیگیری انتقال وجه * **sourceFirstname: ** نام صاحب حساب مبدا * **sourceLastname: ** نام خانوادگی صاحب حساب مبدا * **sourceNumber: ** شماره حساب مبدا * **reasonDescription: ** بابت * **transactionId: ** کد تراکنش (فقط برای بانک پاسارگاد میباشد) * **endToEndId: ** شناسه یکتای دریافت شده جهت تایید درخواست (فقط برای بانک پاسارگاد میباشد) * **type: ** نوع انتقال وجه * internal: انتقال وجه داخلی * paya: انتقال وجه پایا * **status: ** وضعیت فراخوانی سرویس * DONE: فراخوانی موفق سرویس * FAILED: فراخوانی ناموفق سرویس * **error:** جزییات خطا (در صورت بروز خطا) * **trackId: ** کد پیگیری که در فراخوانی سرویس فرستاده شده است #### UnSuccessful result format * در صورتی که در هنگام انتقال وجه حساب مقصد و حساب روی توکن شما یکسان باشد: (status code 400) ```````````````` { "status": "FAILED" , "trackId": "TrackId" , "error": { "code": "VALIDATION_ERROR" , "message": "Source And destination accounts are the same!" } } ```````````````` * در صورتی که مبلغ از مقدار تعریف شده هنگام گرفتن توکن بالاتر باشد: (status code 400) ```````````````` { "status": "FAILED" , "trackId": "TrackId" , "error": { "code": "VALIDATION_ERROR" , "message": "Max amount per transaction limitation exceeded" } } ```````````````` * در صورتی که شرایط برداشت حساب شما (در هنگام انتقال وجه مثل سرویس واریز و شارژ بن‌کارت) رعایت نشده باشد: (status code 400) ```````````````` { "status": "FAILED" , "trackId": "TrackId" , "error": { "code": "VALIDATION_ERROR" , "message": "account conditions not passed" } } ```````````````` * برای مثال در سرویس **انتقال وجه **، در صورتیکه مبلغ تراکنش واریز از نوع پایا کمتر از 10000 ریال باشد با خطای زیر روبرو می‌شوید: ```````````````` "result": { "response": null, "status": "FAILED", "error": { "code": "SERVICE_CALL_ERROR", "message": "Minimum amount is 10000 Rials. " } } ```````````````` در اینجا میتوانید لیست خطاهای سرویس ها را مشاهده کنید [لیست خطاها](/doc/generic-errors.html)