شروع به کار
به مستندات API هیلاپی خوش آمدید. این راهنما به شما کمک میکند تا به سرعت با سرویسهای ما یکپارچه شوید.
پیشنیازها
- حساب کاربری فعال در هیلاپی
- JWE Token از پنل کاربری
- دانش پایه HTTP و RESTful API
- یک زبان برنامهنویسی (PHP, Python, JavaScript, و غیره)
Base URL
تمام درخواستهای API به آدرس زیر ارسال میشوند:
https://api.hillapay.ir/
نصب SDK
برای سهولت در کار، SDK های آماده برای زبانهای مختلف فراهم کردهایم:
PHP
composer require hillapay/php-sdk
Python
pip install hillapay-python
Node.js
npm install hillapay-node
احراز هویت
تمام درخواستهای API نیاز به احراز هویت دارند. هیلاپی از JWE Token برای احراز هویت استفاده میکند.
دریافت JWE Token
- وارد پنل کاربری خود شوید
- به بخش "مدیریت Token" بروید
- روی "ایجاد کلید جدید" کلیک کنید
- JWE Token را در جای امن ذخیره کنید
نحوه استفاده
برای احراز هویت، باید در هدر درخواستهای خود JWE Token را قرار دهید:
Authorization: Bearer YOUR_JWE_TOKEN
مثال با cURL
curl -X GET https://api.hillapay.ir/v1/account/info \
-H "Authorization: Bearer YOUR_JWE_TOKEN" \
-H "Content-Type: application/json"
درگاه پرداخت
درگاه پرداخت هیلاپی به شما امکان دریافت پرداخت از کاربران را میدهد.
ایجاد پرداخت
برای ایجاد یک درخواست پرداخت جدید، از endpoint زیر استفاده کنید:
پارامترهای ورودی
| پارامتر | نوع | الزامی | توضیحات |
|---|---|---|---|
| amount | Integer | ✓ | مبلغ به ریال |
| callback_url | String | ✓ | آدرس بازگشت پس از پرداخت |
| order_id | String | ✓ | شناسه سفارش در سیستم شما |
| description | String | - | توضیحات پرداخت |
| payer_mobile | String | - | شماره موبایل پرداختکننده |
مثال درخواست
{
"amount": 100000,
"callback_url": "https://yoursite.com/payment/callback",
"order_id": "ORD-12345",
"description": "خرید محصول",
"payer_mobile": "09123456789"
}
پاسخ موفق
{
"status": "success",
"data": {
"payment_id": "PAY-ABC123XYZ",
"payment_url": "https://pay.hillapay.ir/gateway/PAY-ABC123XYZ",
"expires_at": "2024-03-20T15:30:00Z"
}
}
تایید پرداخت
پس از بازگشت کاربر از درگاه، باید پرداخت را تایید کنید:
پارامترهای ورودی
| پارامتر | نوع | الزامی | توضیحات |
|---|---|---|---|
| payment_id | String | ✓ | شناسه پرداخت |
مثال پاسخ موفق
{
"status": "success",
"data": {
"payment_id": "PAY-ABC123XYZ",
"order_id": "ORD-12345",
"amount": 100000,
"card_number": "6037-99**-****-1234",
"ref_number": "123456789012",
"transaction_id": "TXN-987654321",
"verified_at": "2024-03-20T14:25:30Z"
}
}
استعلامهای مالی
استعلام کارت بانکی
مثال درخواست
{
"card_number": "6037997012345678"
}
پاسخ
{
"status": "success",
"data": {
"bank_name": "بانک ملی ایران",
"card_type": "DEBIT",
"is_valid": true
}
}
استعلام شماره شبا
انتقال وجه
امکان انتقال وجه به حسابهای بانکی از طریق شبکه پایا و ساتنا
انتقال پایا
Webhooks
Webhooks به شما اجازه میدهند به صورت خودکار از رویدادهای مهم مطلع شوید.
تنظیم Webhook
- در پنل کاربری به بخش Webhooks بروید
- URL endpoint خود را وارد کنید
- رویدادهای مورد نظر را انتخاب کنید
- Secret را ذخیره کنید (برای امضای درخواستها)
رویدادهای پشتیبانی شده
- payment.success - پرداخت موفق
- payment.failed - پرداخت ناموفق
- transfer.completed - انتقال وجه کامل شد
- transfer.failed - انتقال وجه ناموفق
کدهای خطا
لیست کدهای خطای رایج API:
| کد | توضیحات | راهحل |
|---|---|---|
| 400 | درخواست نامعتبر | پارامترهای ورودی را بررسی کنید |
| 401 | احراز هویت ناموفق | API Key را بررسی کنید |
| 403 | دسترسی غیرمجاز | سطح دسترسی حساب را بررسی کنید |
| 404 | منبع یافت نشد | آدرس endpoint را بررسی کنید |
| 429 | تعداد درخواست بیش از حد | چند دقیقه صبر کنید |
| 500 | خطای سرور | با پشتیبانی تماس بگیرید |
SDK ها و کتابخانهها
SDK های رسمی هیلاپی برای زبانهای مختلف: