Станьте архітектором Enterprise-систем з практичним курсом 🚀 Знижка 30% на пакет Platinum 🔥
Дізнатися більше
10.04.2025
4 хвилин читання

Посібник з Інтеграції Stripe в PHP: Налаштування та Приклади

Stripe – це потужний інструмент для обробки онлайн-платежів. Якщо ти розробник, який хоче інтегрувати його у свій проєкт на PHP, то ти потрапив за адресою. У цій статті ми розберемо, як налаштувати Stripe PHP, провести базову конфігурацію і реалізувати приклади транзакцій.

А як правильно займатися розробкою на РНР – можна навчитися на курсах програмування FoxmindEd.

🚀 Готові до нових викликів? Долучайтеся до нашого курсу 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 підтримує вебхуки для автоматизації процесу обробки транзакцій. Наприклад, ти можеш налаштувати вебхук для оновлення статусу замовлення після успішного платежу. Налаштування виглядає так:

  1. Зайди в панель управління.
  2. Додай URL свого вебхука.
  3. Оброби події у своєму додатку:
$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. Це економить час і нерви.

Підпишіться на наш Ютуб-канал! Корисні відео для програмістів чекають на вас! YouTube
Оберіть свій курс програмування! Шлях до кар’єри програміста починається тут! Подивитись

Підписки

Якщо тобі потрібно налаштувати регулярні платежі, 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, налаштовувати конфігурацію, обробляти транзакції та працювати з підписками. Сподіваюся, цей посібник допоміг тобі розібратися з основами.

FAQ
Що таке Stripe?

Stripe - це платіжна платформа для прийому онлайн-платежів за допомогою банківських карт, Apple Pay та інших методів.

Як встановити Stripe SDK для PHP?

Використовуй Composer: composer require stripe/stripe-php.

Де взяти API-ключі для Stripe?

У панелі керування Stripe в розділі Developers → API Keys.

Як створити платіж у Stripe через PHP?

Використовуй клас PaymentIntent для створення платежу із зазначенням суми та валюти.

Навіщо потрібні вебхуки в Stripe?

Вебхуки дають змогу автоматично отримувати повідомлення про статус платежів і оновлювати дані на сайті.

Чи можна зробити підписку за допомогою Stripe?

Так, для цього використовуються об'єкти Customer і Subscription в SDK Stripe.

У вас залишилися питання щодо інтеграції Stripe в PHP? Пишіть у коментарях - обговоримо!

Додати коментар

Ваш імейл не буде опубліковано. Обов'язкові поля відзначені *

Зберегти моє ім'я, імейл та адресу сайту у цьому браузері для майбутніх коментарів