Stripe – це потужний інструмент для обробки онлайн-платежів. Якщо ти розробник, який хоче інтегрувати його у свій проєкт на PHP, то ти потрапив за адресою. У цій статті ми розберемо, як налаштувати Stripe PHP, провести базову конфігурацію і реалізувати приклади транзакцій.
А як правильно займатися розробкою на РНР – можна навчитися на курсах програмування FoxmindEd.
Що таке Stripe і навіщо він потрібен?
Stripe – це одна з найпопулярніших платформ для обробки платежів. Її використовують стартапи, великі компанії та фрілансери. Чому? Ось кілька причин:
- Простота API: інтуїтивно зрозуміле, яке відмінно документоване.
- Підтримка різних видів платежів: картки, банківські перекази, Apple Pay та інші.
- Висока безпека: сертифікація за стандартом PCI DSS рівня 1, тож дані токенів клієнтів захищені.
Отже, якщо ти хочеш додати Stripe у свій проєкт, почнемо з базової підготовки.
Встановлення SDK
Для початку тобі знадобиться офіційний SDK. Встановити його можна через Composer. Ось як встановити бібліотеку:
composer require stripe/stripe-php
Переконайся, що все пройшло гладко, щоб не довелося дебажити на стадії встановлення. Після цього можеш підключити бібліотеку у своєму проєкті:
require 'vendor/autoload.php';
use Stripe\Stripe;
Тепер, коли ти встановив Stripe SDK PHP, можна почати використовувати його в проєкті.
курси формату Менторинг саме для вас.
Налаштування конфігурації
Щоб почати використовувати Stripe, тобі потрібен API-ключ. Зайди в панель управління Stripe, створи обліковий запис (якщо його ще немає), і згенеруй ключі для тестового і продакшен-режиму. Не забудь: тестові ключі призначені тільки для розробки.
Додай ключ у конфігурацію твоєї програми:
Stripe::setApiKey('sk_test_your_secret_key');
Порада: зберігай ключі у змінних оточення, щоб випадково не закоммітити їх у репозиторій. Використовуй бібліотеки на кшталт dotenv для зручності роботи з конфігурацією.
Приклад створення платежу
Налаштування завершено, і тепер можна відправити перший запит на створення платежу. Ось базовий php stripe приклад для обробки транзакції:
use Stripe\PaymentIntent;
try {
$paymentIntent = PaymentIntent::create([
'amount' => 2000, // amount in cents (2000 = $20.00)
'currency' => 'usd',
'payment_method_types' => ['card'],
]);
echo 'Payment Intent created: ' . $paymentIntent->id;
} catch (Exception $e) {
echo 'Error: ' . $e->getMessage();
}
Цей код створює об’єкт PaymentIntent, який буде використовуватися для обробки платежів.
Важливий момент: для безпеки обов’язково обробляй винятки.
Вебхуки: автоматизація обробки
Stripe підтримує вебхуки для автоматизації процесу обробки транзакцій. Наприклад, ти можеш налаштувати вебхук для оновлення статусу замовлення після успішного платежу. Налаштування виглядає так:
$input = @file_get_contents('php://input');
$event = json_decode($input);
if ($event->type === 'payment_intent.succeeded') {
$paymentIntent = $event->data->object;
// Order update logic
echo 'The payment was successful: ' . $paymentIntent->id;
}
Лайфхак: тестуй вебхуки за допомогою stripe cli. Це економить час і нерви.
Підписки
Якщо тобі потрібно налаштувати регулярні платежі, Stripe теж впорається з цим завданням. Для цього можна використовувати об’єкти Subscription. Ось приклад налаштування:
use Stripe\Customer;
use Stripe\Subscription;
// Creating a client
$customer = Customer::create([
'email' => 'customer@example.com',
'name' => 'John Doe',
]);
// Create a subscription
$subscription = Subscription::create([
'customer' => $customer->id,
'items' => [
['price' => 'price_id'],
],
]);
echo 'Subscription activated: ' . $subscription->id;
Не забудь вказати price_id, який можна знайти в панелі управління Stripe.
Поради з безпеки
Щоб уникнути проблем із безпекою, дотримуйся цих рекомендацій:
- Ніколи не зберігай дані карт на своєму сервері. Використовуй токени, які надає Stripe.
- Завжди використовуй HTTPS для роботи з API.
- Перевіряй підпис вебхуків для захисту від підробки запитів.
Висновок
Stripe інтеграція PHP – це не тільки корисний, але й захопливий процес. Ти навчився встановлювати SDK, налаштовувати конфігурацію, обробляти транзакції та працювати з підписками. Сподіваюся, цей посібник допоміг тобі розібратися з основами.
У вас залишилися питання щодо інтеграції Stripe в PHP? Пишіть у коментарях - обговоримо!