PayHere для Laravel

Перекладено ШІ
Оригінал: Laravel News
Оновлено: 24 червня, 2025
Laravel PayHere – це потужний плагін, який спрощує інтеграцію популярного шлюзу оплати PayHere у ваші додатки на базі Laravel. Досліджуйте основні можливості цього пакету та дізнайтеся, як він може підвищити ефективність обробки платежів у вашій розробці

PayHere — це популярна платіжна система в Шрі-Ланці. Плагін Laravel PayHere забезпечує безшовну інтеграцію PayHere у додатках Laravel, дозволяючи розробникам легко користуватися всіма API PayHere. Цей пакет підтримує різні типи платежів, що робить його важливим інструментом для будь-кого, хто хоче поліпшити платіжні можливості свого застосунку

# Основні можливості

Встановіть PayHere через Composer:

composer require laravel-payhere/laravel-payhere

Після цього виконайте команду для публікації ресурсів і міграцій:

php artisan payhere:install

Якщо ви плануєте використовувати панель PayHere, запустіть команду для публікації ресурсів Filament:

php artisan filament:assets

Переконайтеся, що у вас є обліковий запис PayHere, з якого ви отримаєте відповідні API ключі та Merchant ID, і додайте їх до файлу .env:

PAYHERE_MERCHANT_ID=ваш-payhere-merchant-id
PAYHERE_MERCHANT_SECRET=ваш-payhere-merchant-secret
PAYHERE_APP_ID=ваш-payhere-app-id
PAYHERE_APP_SECRET=ваш-payhere-app-secret

Також наявні додаткові змінні середовища для налаштування валюти за замовчуванням, URL-адреси сповіщень та повернення, що дозволяє більш гнучко налаштувати інтеграцію з платіжним шлюзом

# Основний приклад

Ось приклад базового маршруту для оформлення замовлення:

use App\Http\Controllers\Checkout;

Route::get('/checkout', Checkout::class);

Відповідний контролер може виглядати так:

<?php

namespace App\Http\Controllers;

use Illuminate\Routing\Controller;
use PayHere\PayHere;

class Checkout extends Controller
{
    public function __invoke()
    {
        return PayHere::builder()
            ->guest()
            ->title("Bold 'LN' Logo Retro Trucker Hat")
            ->amount(25)
            ->checkout();
    }
}

Коли відвідують цей маршрут, користувача перенаправляють до PayHere для завершення платежу. Після цього його повернуть на ваш сайт або за визначеною вами URL-адресою повернення, що вказується у змінній середовища PAYHERE_RETURN_URL у файлі .env

Якщо ви бажаєте реалізувати офлайн-процес оформлення, Laravel PayHere дозволяє підключити JavaScript SDK PayHere у вашому шаблоні Blade, використовуючи директиву @payhereJS перед закриваючим тегом </head> вашого запиту. Також доступний Blade-компонент для додавання кнопок платежу. Наприклад:

<x-payhere::button
    :order="PayHere\PayHere::builder()->guest()->amount(100)->getOrder()"
    class="px-8 py-4"
>
    Купити зараз
</x-payhere::button>

Дізнайтеся більше про цей пакет та його можливості в офіційній документації, а також перегляньте код на GitHub