---
title: "PayZephyr: Єдиний API для роботи з Stripe, Paystack та PayPal"
url: https://laravelukraine.com/blog/payzephyr-jedinii-api-dlia-roboti-z-stripe-paystack-ta-paypal
date: 2026-09-12
source: https://laravel-news.com/payzephyr?utm_medium=feed&utm_source=feedpress.me&utm_campaign=Feed%3A+laravelnews
---

# PayZephyr: Єдиний API для роботи з Stripe, Paystack та PayPal

PayZephyr - це Laravel-пакет від Nwaneri Chukwunyere Kenneth, який надає єдиний fluent API для роботи з вісьмома платіжними провайдерами.

## Ключові можливості

Пакет пропонує наступний функціонал:

- **Вісім драйверів** - Paystack, Stripe, PayPal, Flutterwave, Square, Monnify, OPay та Mollie доступні через один фасад `Payment`
- **Автоматичне перемикання** - можливість використовувати резервний провайдер, якщо основний не працює
- **Захист від подвійної оплати** - запобігання повторним платежам від клієнтів
- **Підписані вебхуки** - перевірка підписів та захист від повторних запитів
- **Підписки** - визначення планів підписок для провайдерів, що їх підтримують
- **Повернення коштів** - повні та часткові рефанди
- І багато іншого...

## Прийом платежів

Використовуючи цей пакет, ви отримуєте фасад `Payment`, за допомогою якого можна приймати платежі, перенаправляючи клієнта на сторінку оплати провайдера:

```php
use KenDeNigerian\PayZephyr\Facades\Payment;

Route::get('/checkout', function (Order $order) {
    return Payment::amount(500.00)
        ->email($order->user->email)
        ->reference('order_'.$order->id)
        ->callback(route('payment.callback'))
        ->redirect();
});
```

Після оплати клієнт повертається до вашого callback-маршруту з посиланням для верифікації:

```php
Route::get('/payment/callback', function (Request $request) {
    $verification = Payment::verify($request->query('reference'));
    
    if ($verification->isSuccessful()) {
        // Позначити замовлення як оплачене
    }
})->name('payment.callback');
```

## Система резервування

Пакет дозволяє визначити основний провайдер, а також резервний на випадок проблем:

```env
PAYMENTS_DEFAULT_PROVIDER=paystack
PAYMENTS_FALLBACK_PROVIDER=stripe
```

## Підписки та повернення коштів

PayZephyr підтримує підписки через метод `planData` для створення планів, на які пізніше можуть підписатися клієнти:

```php
$plan = Payment::subscription()
    ->planData(new SubscriptionPlanDTO(
        name: 'Pro Monthly',
        amount: 20.00,
        interval: 'monthly',
        currency: 'USD',
    ))
    ->with('stripe')
    ->createPlan();

Payment::subscription()
    ->customer($user->email)
    ->plan($plan->planCode)
    ->idempotency()
    ->with('stripe')
    ->subscribe();
```

Також підтримується повернення коштів, включаючи часткові рефанди через визначення `amount()`:

```php
$refund = Payment::refund('txn_ref_123')
    ->amount(25.00)
    ->reason('customer requested partial refund')
    ->with('paystack')
    ->refund();
```

Документація містить деталі щодо використання `$refund->isPending()`, оскільки деякі провайдери обробляють повернення коштів пізніше та повідомляють про це через вебхук, а не в безпосередній відповіді.

## Встановлення

Встановити пакет можна через Composer з наступним запуском команди `install`. Пакет призначений для випадків, коли потрібна можливість приймати платежі від різних провайдерів:

```bash
composer require kendenigerian/payzephyr
php artisan payzephyr:install
```

## Додаткові ресурси

Вихідний код доступний на [GitHub](https://github.com/ken-de-nigerian/payzephyr). Документація охоплює кастомні драйвери, інтеграцію з чергами та чеклист для production-середовища. Також доступний [playground](https://payzephyr.dev/playground) для тестування API без встановлення пакету.
