فرآیند پرداخت بر روی درگاههای اینترنتی 4 مرحله دارد:
1. ساخت پرداخت: مشخصات پرداختی که می خواهد انجام شود را مانند مبلغ پرداخت و `redirectUrl` که آدرسی از سایت شماست که کاربر پس از پرداخت باید به آن هدایت شود را مشخص میکنید و در قبال آن یک `code` دریافت میکنید.
2. هدایت به درگاه: کاربر را بهمراه کدی که در مرحله قبلی دریافت شده است، به آدرس درگاه `redirect` میکنید.
3. برگشت از درگاه بانکی تکمیل فرایند پرداخت: پس از اینکه پرداخت توسط کاربر انجام شد، کاربر را به همراه یک `refid` که کد تراکنش است به آدرس `redirectUrl` شما ارسال می کنیم و شما باید از طرف سرور خودتان آن شماره پرداخت را تایید کنید.
4. تایید پرداخت: در این مرحله باید `refid` را به همراه مبلغ تراکنش به متد تایید پرداخت ارسال کرده و فرایند پرداخت را نهایی نمایید.
برای انجام یک پرداخت کامل نیاز است حتما هر چهار مرحله انجام شود. در صورتی که مرحله چهارم یعنی تایید پرداخت تا ۱۵ دقیقه پس از پرداخت مشتری انجام نشود پول به حساب آنها برگشت داده میشود.
در نظر داشته باشید که تسهیم براساس “مبلغ” انجام میشود نه درصد.
به طور مثال مبلغ کل محصول 100.000 تومان میباشد.
باتوجه به درصد سهم هرشخص مبلغ را مشخص میکنید و از طریق وب سرویس مبلغ سهم هر شخص را برای ما ارسال میکنید.
مثلا اگر سهم نفر اول 10 درصد است = 10.000 تومان و اگر سهم نفر دوم 90 درصد است برابر میشود با = 90.000 تومان.
شما میبایست برای ما “مبلغ” سهم هر فرد را ارسال بفرمایید. محاسبه درصد سهم هر فرد توسط شما انجام میشود و سپس مبلغ نهایی را برای ما ارسال مینمایید.
ذخیره شناسه لاگ پیپینگ برای پشتیبانی بهتر:
در هر درخواست REST که به پیپینگ ارسال میکنید در پاسخ هر کدام هدری با نام X-PayPingRequest-ID وجود دارد که در صورت ذخیره کردن این شناسه در دیتابیس خود میتوانید در صورت وجود مشکل با دادن این شناسه به پشتیبانی فنی بهتر کمک کنید. نمونه آن در عکس زیر در POSTMAN نشان داده شده است.
1. ساخت پرداخت:
در این مرحله شما مشخص میکنید این پرداخت به چه مبلغ است و به چه کسانی با چه مبلغی این پرداخت انجام میشود.
درنظر داشته باشید پرداخت تسهیمی میبایست با توکن کاربرتان ساخته شود و چنانچه شما در پرداخت سهیم میباشید، نام کاربری خود را نیز اضافه نمایید.
برای ساخت پرداخت میبایست از متد `POST /v1/pay/multi` استفاده کنید.
}
"نام پرداخت کننده" : "payerName"
] : "pairs"
}
مبلغ // ,0:"amount"
"name": "string",
"username خودتان در پیپینگ" :"userIdentity"
توضیح پرداخت : "description"
{
,[
"آدرس صفحه برگشت بعد از پرداخت" : "returnUrl"
"مشخصه شما که پس از پرداخت با استفاده از آن پرداخت را در دیتابیس خودتان جستجو کنید" : "clientRefId"
{
در پاسخ این متد `code` را دریافت میکنید.
}
"code": "xxxx"
{
نکته1: در این بخش خط دوم کد بالا تسهیم را تعیین میفرمایید. میبایست به ازای هر صاحب سهم، یک pairs در نظر بگیرید.
نکته2: توجه فرمایید حداقل باید دو pair تعیین شود و مقدار amount نیز نمیتواند با صفر برابر باشد.
نکته3: توجه نمایید افرادی که در مبلغ ذینفع هستند، میبایست حتما در پیپینگ دارای حساب کاربری باشند.
نکته بسیار مهم: جهت جلوگیری از پرداخت ناموفق، حتما میبایست سایت شما بر روی بستر SSL باشد. در غیراز اینصورت پس از کلیک بر روی گزینه “تکمیل فرآیند”، خطای امنیتی بر روی مرورگر ظاهر میشود و تراکنش ناموفق خواهد شد. بنابراین باید حتما آدرس بازگشت سایت شما با پروتکل https همراه باشد.
2. هدایت کاربر به درگاه:
کدی در مرحله قبل دریافت کردهاید را بصورت زیر در url اضافه کنید و کاربر را به آدرس زیر `Redirect` کنید.
https://api.payping.ir/v2/pay/gotoipg/{code}
3. برگشت از درگاه بانکی تکمیل فرایند پرداخت:
پس از پرداخت، اطلاعات پرداخت به آدرس `returnUrl` که در مرحله اول ساخت پرداخت مشخص شده است در بدنه درخواست بصورت زیر فرستاده میشود:
curl --location --request POST 'returnUrl'
'header 'Content-Type: application/x-www-form-urlencoded--
'=data-urlencode 'code--
'=data-urlencode 'refid--
'=data-urlencode 'clientrefid--
'=data-urlencode 'cardnumber--
'=data-urlencode 'cardhashpan--
4. تایید پرداخت:
شما با استفاده از متد `POST /v2/pay/verify` و ارسال `refid` پرداخت را تایید میکنید.
curl -X POST /https://api.payping.ir/v2/pay/verify
-H 'Accept: application/json-
-H 'Authorization: bearer YOUR_TOKEN-
-H 'Content-Type: application/json-
}' d-
,"refId": "string"
,"amount": int"
'{
در پاسخ این متد `ViewModel` زیر را دریافت میکنید.
}
,مبلغ : "amount"
,شماره کارت ماسک شده : "cardNumber"
مقدار شماره کارت هش شده : "cardHashPan"
] : "merchants"
}
,مبلغ : "amount"
,کد پرداخت : "code"
نام کاربری : "userName"
{
[
{
هر درگاه ممکن است شماره ماسک شده کارت و یا هش شماره کارت پرداخت کننده را در اختیار شما قرار دهد. بنابراین حتما در صورتی که چک کردن شماره کارت برای شما اهمیت دارد، هر ۲ پارامتر را چک کنید تا در صورت نبود یک مورد با پارامتر دیگر اطمینان حاصل نمایید.
در صورت داشتن هرگونه سوال و نیاز به راهنمایی ، با پشتیبانی آنلاین سایت پیپینگ در ارتباط باشید.
به روز شده در: 1400/08/26