کتابخانهٔ .NET شیپی
کتابخانهٔ .NET شیپی برای ASP.NET Core، .NET Framework 4.7.2+ و هر پروژهای که netstandard2.0 را پشتیبانی میکند. همهٔ متدها async و تایپشدهاند، ConfirmAsync نتیجه را در سه حالت Paid، Pending و Failed برمیگرداند و Webhook.ConstructEvent امضای HMAC را بررسی میکند.
- تایپهای کامل
- نسخهٔ async
- استرداد از داخل پنل
- وبهوک امضاشده
- وضعیت «در انتظار» درست
- تومان و ریال
- حالت آزمایشی با sk_test_
- دکمهٔ تست اتصال
این نسخه بتا است: کامل است ولی هنوز روی فروشگاههای واقعی کافی اجرا نشده. اول روی نسخهٔ آزمایشی سایتتان و با کلید sk_test_ امتحانش کنید و هر اشکالی دیدید به پشتیبانی بگویید.
نصب
- ۱
zip را باز کنید و پروژهٔ
src/SheyPay/SheyPay.csprojرا با dotnet add reference به پروژهٔ خود اضافه کنید. - ۲
کلید API را در تنظیمات (مثلاً SheyPay:Key) بگذارید؛ برای آزمایش
sk_test_. - ۳
یک نمونه از SheyPayClient را singleton ثبت کنید.
- ۴
با CreatePaymentAsync پرداخت بسازید و در مسیر بازگشت ConfirmAsync را با شناسهٔ ذخیرهشده و مبلغ سفارش صدا بزنید.
- ۵
مسیر وبهوک را با Webhook.ConstructEvent و بدنهٔ خام بسازید. نمونهٔ ASP.NET Core در پوشهٔ examples است.
- نسخهٔ بتا: روی محیط آزمایشی امتحان کنید.
تنظیمات
- new SheyPayClient(apiKey, baseUrl, clientInfo, httpClient)
- میتوانید HttpClient خودتان (مثلاً از IHttpClientFactory) را بدهید؛ مهلت پیشفرض ۲۰ ثانیه.
- idempotencyKey
- در CreatePaymentAsync و RefundAsync؛ برای هر تلاش مقدار ثابت بدهید.
- SheyPayClient.ToRial(amount, toman: true)
- تبدیل تومان به ریال.
تست در محیط آزمایشی
با کلید sk_test_ پول واقعی جابهجا نمیشود و در صفحهٔ بانک آزمایشی نتیجه را خودتان انتخاب میکنید.
- با کلید
sk_test_پرداخت بسازید و در بانک آزمایشی نتیجه را انتخاب کنید. - نتیجههای Paid، Pending و Failed را در مسیر بازگشت امتحان کنید.
- از پنل شیپی رویداد آزمایشی وبهوک بفرستید.
مشکلات رایج
ConstructEvent خطای امضا میدهد.
بدنه را با StreamReader بهصورت خام بخوانید؛ model binding بدنه را تغییر میدهد.
خطای callback_domain_mismatch
آدرس بازگشت باید روی دامنهٔ تأییدشدهٔ درگاه باشد.
تغییرات
نسخهٔ ۱.۰.۰
- نسخهٔ اول: همهٔ متدهای API پرداخت بهصورت async، ConfirmAsync و ابزار وبهوک.
اولین رسیدتان را امروز صادر کنید
ثبتنام با شمارهٔ موبایل انجام میشود و تا تأیید مدارک، همهچیز را در محیط آزمایشی امتحان میکنید.