تأیید پرداخت (verify)
نهایی کردن پرداخت سمت سرور.
پس از بازگشت مشتری و پیش از تحویل کالا یا خدمت، پرداخت را verify کنید. تا زمان verify، مبلغ قابل تسویه نیست.
POST/api/v1/payments/{id}/verify
پارامترها
| نام | نوع | توضیح |
|---|---|---|
amountالزامی | integer | مبلغ سفارش به ریال؛ باید با مبلغ پرداخت برابر باشد. |
bash
curl -X POST https://api.sheypay.ir/api/v1/payments/PAYMENT_ID/verify \
-H "Authorization: Bearer sk_test_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "amount": 1500000 }'پاسخ
json
{ "payment": { "id": "…", "status": "verified", "amount": 1500000, "fee": 15000, "verified_at": "…", … }, "already_verified": false }رفتار
- idempotent است: فراخوانی دوباره، پرداخت را دوباره ثبت نمیکند و
already_verified: trueبرمیگرداند. 400 payment_amount_mismatch: مبلغ ارسالی با پرداخت برابر نیست.409 payment_invalid_stateباdetails.status: اگرpendingباشد نتیجه بانک هنوز نیامده و باید کمی بعد تلاش کنید؛ اگرfailedیاexpiredباشد پرداخت انجام نشده است.
مهلت verify در
verify_deadline_at آمده است (پیشفرض ۳۰ دقیقه پس از پرداخت). پس از آن، پرداخت بهصورت خودکار برگشت میخورد و وبهوک payment.reversed ارسال میشود.پرداختهای لینک پرداخت، فاکتور و اشتراک توسط شیپی بهصورت خودکار تأیید میشوند و نیازی به verify شما ندارند.