لاراپی یک پکیج لاراول برای اتصال به درگاههای پرداختی ایرانی است.
Class | Name (en) | Name (fa) | Requirements |
---|---|---|---|
AsanPardakht | AsanPardakht | آسان پرداخت (آپ) | username , password , merchant_configuration_id |
Azkivam | Azkivam | ازکی وام | merchant_id , api_key |
BehPardakht | Beh Pardakht Mellat | بهپرداخت ملت | terminal_id , username , password , is_credit |
Bitpay | Bitpay | بیت پی | api , sandbox |
Digipay | Digipay | دیجیپی | username , password , client_id , client_secret |
FanavaCard | FanavaCard | فنآوا کارت | user_id , password |
IdPay | IdPay | آیدیپی | apiKey , sandbox |
IranDargah | IranDargah | ایران درگاه | merchant_id , sandbox |
IranKish | Iran Kish | ایران کیش | terminalId , password , acceptorId , pubKey |
IsipaymentSamin | Isipayment Samin | ایزایران ثمین | merchant_code , merchant_password , terminal_code , type , number_of_installment |
Keepa | Keepa - Kipaa | کیپا | token |
MehrIran | MehrIran | بانک مهر ایران | terminal_id , merchant_nid , encrypt_key |
NextPay | NextPay | نکست پی | api_key |
Omidpay | Omidpay - Sayan Card | امید پی (سایان کارت) | user_id , password |
PardakhtNovin | Pardakht Novin | پرداخت نوین | userId , password , terminalId |
Payir | Pay.ir | پی.آیآر | api |
PayPing | PayPing | پی پینگ | token |
PEC | PEC | تجارت الکترونیک پارسیان | login_account |
PEP | PEP | پرداخت الکترونیک پاسارگاد | username , password , terminal_number |
Polam | Polam(Poolam) | پولام | api_key |
RefahBeta | Refah Beta | بانک رفاه بتا | client_id , client_secret , api_key , number_of_installments |
Sadad | Sadad | پرداخت الکترونیک سداد (ملی) | terminal_id , merchant_id , key |
SadadBNPL | SadadBNPL | پرداخت الکترونیک سداد (ملی) | terminal_id , merchant_id , key |
Sep | Saman Electronic Payment | پرداخت الکترونیک سامان (سپ) | terminalId |
SepehrPay | Sepehr Pay | پرداخت الکترونیک سپهر (مبنا) | terminalId |
Shepa | Shepa | شپا | api |
SnappPay | SnappPay | اسنپپی | username , password , client_id , client_secret |
TejaratBajet | Tejarat Bajet | بانک تجارت - باجت | client_id , client_secret , sandbox |
🧪 Test | Test | تست | برای تست |
Vandar | Vandar | وندار | api_key |
ZarinPal | Zarin Pal | زرین پال | merchant_id |
Zibal | Zibal | زیبال | merchant |
If you don't find the gateway you want, let us know or contribute to add it
اگر درگاه مورد نظر خود را پیدا نکردید، به ما اطلاع دهید یا در اضافه کردن آن مشارکت کنید
- Simple | ساده
- Flexibility | انعطافپذیری
- Fee Calculation | محاسبه هزینه تراکنش
You can install the package via composer:
شما میتوانید با استفاده از composer پکیج را نصب کنید
composer require farayaz/larapay
To make the payment, 3 steps must be done:
برای انجام پرداخت ۳ مرحله میبایست انجام شود:
use Farayaz\Larapay\Exceptions\LarapayException;
use Larapay;
$gatewayClass = 'ZarinPal';
$gatewayConfig = [ // gateway config | تنظیمات درگاه
'merchant_id' => 'aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee',
];
$amount = 10000;
$id = 1230; // transaction id | شماره تراکنش
$callbackUrl = route('api.transactions.verify', $id);
$nationalId = '1234567890';
$mobile = '09131234567';
try {
$result = Larapay::gateway($gatewayClass, $gatewayConfig)
->request(
id: $id,
amount: $amount,
callbackUrl: $callbackUrl,
nationalId: $nationalId,
mobile: $mobile
);
} catch (LarapayException $e) {
throw $e;
}
// store token in db | ذخیره توکن در دیتابیس
$result['token'];
$result['fee'];
Transfer the user to gateway with the received token:
انتقال کاربر به درگاه با توکن دریافت شده:
try {
return Larapay::gateway($gatewayClass, $gatewayConfig)
->redirect($id, $token, $callbackUrl);
} catch (LarapayException $e) {
throw $e;
}
Checking the payment status after the user returns from the gateway:
بررسی وضعیت پرداخت پس از بازگشت کاربر از درگاه:
$params = $request->all();
try {
$result = Larapay::gateway($gatewayClass, $gatewayConfig)
->verify(
id: $id,
amount: $amount,
token: $token,
params: $params
);
} catch (LarapayException $e) {
// transaction failed | تراکنش ناموفق
throw $e;
}
// transaction verified | تراکنش موفق
$result['result'];
$result['reference_id'];
$result['tracking_code'];
$result['card'];
$result['fee'];