Документация API

Документация OOPay

Полное руководство по интеграции платежей через СБП. API документация, примеры кода и best practices.

Введение

OOPay API позволяет интегрировать платежи через Систему Быстрых Платежей (СБП) в ваше приложение или сайт. Наш RESTful API прост в использовании и поддерживает все современные стандарты безопасности.

Базовый URL API: https://api.oopay.me/v1

Регистрация и API ключи

Для начала работы с API вам необходимо зарегистрироваться и получить API ключи:

  1. Зарегистрируйтесь в личном кабинете
  2. Подайте заявку на регистрацию ТСП (торгово-сервисного предприятия)
  3. После одобрения заявки получите API ключи в разделе "Настройки → API"

Важно: Никогда не передавайте ваши API ключи третьим лицам и не публикуйте их в публичных репозиториях.

Аутентификация

Все запросы к API должны содержать заголовок Authorization с вашим API ключом:

HTTP Header
Authorization: Bearer YOUR_API_KEY

Создание платежа

Для создания платежа отправьте POST запрос на /v1/payments:

JavaScript
// Создание платежа
const payment = await fetch('https://api.oopay.me/v1/payments', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    amount: 1000,
    currency: 'RUB',
    description: 'Оплата заказа #123',
    qr_type: 'dynamic'
  })
});

const data = await payment.json();
console.log(data.qr_data); // QR код для оплаты

Параметры запроса:

  • amount
    number (обязательно)

    Сумма платежа в копейках

  • currency
    string

    Валюта (по умолчанию: RUB)

  • description
    string

    Описание платежа

  • qr_type
    string

    Тип QR-кода: static, dynamic

Генерация QR-кодов

OOPay поддерживает два типа QR-кодов:

Статический QR-код

Используется для приёма платежей на фиксированную сумму. Идеален для торговых точек.

Динамический QR-код

Генерируется для каждого платежа индивидуально. Рекомендуется для онлайн-платежей.

JavaScript
// Генерация QR-кода
const qr = await fetch('https://api.oopay.me/v1/qr/generate', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    type: 'static',
    amount: 500,
    description: 'Оплата товара'
  })
});

const qrData = await qr.json();
// qrData.qr_image - base64 изображение QR кода

Webhooks

Webhooks позволяют получать уведомления о событиях в режиме реального времени:

Node.js
// Обработка webhook уведомлений
app.post('/webhook', (req, res) => {
  const signature = req.headers['x-oopay-signature'];
  const payload = JSON.stringify(req.body);

  // Проверка подписи
  const isValid = verifySignature(payload, signature, SECRET_KEY);

  if (isValid && req.body.event === 'payment.success') {
    const { payment_id, amount, status } = req.body.data;

    // Обработка успешного платежа
    processPayment(payment_id, amount);

    res.status(200).send('OK');
  }
});

События webhook:

  • payment.success - платеж успешно проведён
  • payment.failed - платеж отклонён
  • payment.pending - платеж в обработке

Интеграция на веб-сайт

Пример интеграции платежной формы на ваш сайт:

HTML форма

Простая интеграция через форму

JavaScript SDK

Библиотека для быстрой интеграции

Плагины CMS

Готовые решения для популярных CMS

Мобильная интеграция

OOPay предоставляет SDK для iOS и Android приложений:

🍎iOS SDK

Swift библиотека для интеграции платежей в iOS приложения

Документация

🤖Android SDK

Kotlin библиотека для интеграции платежей в Android приложения

Документация

Безопасность и сертификация

OOPay сертифицирован по стандарту PCI DSS Level 1 и использует современные методы шифрования для защиты данных:

  • Шифрование всех данных с использованием TLS 1.3
  • Регулярные аудиты безопасности и пентесты
  • Соответствие требованиям ЦБ РФ для платежных систем
  • Мониторинг подозрительной активности 24/7

Нужна помощь?

Наша команда поддержки готова помочь вам с интеграцией