# Обзор PS Wallet Pay

> Что такое PS Wallet Pay, как создать приложение, получить токен и сделать первый запрос к API.

PS Wallet Pay — платёжная система PS Wallet для приёма криптовалюты в ваших ботах, сайтах и приложениях. Вы выставляете счёт через API — в монете, долларах или рублях, — пользователь оплачивает его в PS Wallet в пару нажатий, а деньги приходят на баланс вашего приложения. Оттуда их можно вывести на свой счёт, отправить пользователям переводом или чеком.

## Как это работает

1. Ваш сервер создаёт счёт методом [createInvoice](https://help.pswallet.org/ru/pay-api/invoices#createinvoice) и получает ссылку на оплату.
2. Вы отправляете ссылку пользователю. Счёт открывается в PS Wallet: в чате бота с кнопкой оплаты или сразу на экране оплаты в мини-приложении.
3. Пользователь платит со своего счёта в PS Wallet.
4. Сумма оплаты за вычетом [комиссии](https://help.pswallet.org/ru/pay-api/fees-and-limits) — 0.3% — зачисляется на баланс приложения, а если подключены [вебхуки](https://help.pswallet.org/ru/pay-api/webhooks), ваш сервер сразу получает уведомление `invoice_paid`.
5. Деньги с баланса можно вывести на свои счета PS Wallet в кабинете или отправить пользователям через [transfer](https://help.pswallet.org/ru/pay-api/transfers) и [чеки](https://help.pswallet.org/ru/pay-api/checks).

## Начало работы

1. Откройте PS Wallet в Telegram ([@pswallet](https://t.me/pswallet)) → «Профиль» → «PS Wallet Pay» → «Создать новое».
2. Задайте название, описание, ссылку на проект и логотип в разделе «Информация о приложении» — их видят ваши клиенты на экране оплаты.
3. Скопируйте токен в разделе «API-токен» (понадобится PIN-код). Токен даёт полный доступ к приложению, поэтому храните его только на сервере и никому не передавайте. Если токен утёк, нажмите «Перевыпустить»: старый перестанет работать сразу.
4. Если нужны уведомления об оплате, укажите адрес сервера в разделе «Вебхуки».
5. Если будете отправлять деньги пользователям, включите методы `transfer` и `createCheck` в разделе «Безопасность». По умолчанию они выключены.

> [!WARNING]
> Токен — это доступ к деньгам на балансе приложения. Не вставляйте его в код мини-приложений, сайтов и мобильных клиентов. Подробнее — в разделе [Безопасность](https://help.pswallet.org/ru/pay-api/security).

## Как тестировать

Отдельной тестовой сети нет. Для разработки создайте отдельное приложение и проверяйте всё на небольших суммах: счета своего приложения можно оплачивать самому.

> [!TIP]
> Вебхуки удобно проверять кнопкой «Отправить тестовый» в разделе «Вебхуки»: сервер получит событие `test`, подписанное так же, как настоящие уведомления.

## Первый запрос

Проверьте токен методом [getMe](https://help.pswallet.org/ru/pay-api/balance#getme). Замените `$TOKEN` на токен своего приложения.

```bash title="cURL"
curl https://pay.pswallet.org/api/getMe \
  -H "PSWallet-Pay-API-Token: $TOKEN"
```

```js title="Node.js"
// Node.js 18+ (встроенный fetch)
const response = await fetch("https://pay.pswallet.org/api/getMe", {
  headers: { "PSWallet-Pay-API-Token": process.env.PSWALLET_PAY_TOKEN },
});
const data = await response.json();
console.log(data.result);
```

```python title="Python"
import os
import requests

response = requests.get(
    "https://pay.pswallet.org/api/getMe",
    headers={"PSWallet-Pay-API-Token": os.environ["PSWALLET_PAY_TOKEN"]},
    timeout=15,
)
print(response.json()["result"])
```

Ответ:

```json
{
  "ok": true,
  "result": {
    "app_id": 1234,
    "name": "My Shop",
    "payment_processing_bot_username": "pswallet"
  }
}
```

## Методы API

| Метод | HTTP | Что делает |
|---|---|---|
| [getMe](https://help.pswallet.org/ru/pay-api/balance#getme) | GET, POST | Проверка токена и информация о приложении. |
| [createInvoice](https://help.pswallet.org/ru/pay-api/invoices#createinvoice) | POST | Создать счёт на оплату. |
| [getInvoices](https://help.pswallet.org/ru/pay-api/invoices#getinvoices) | GET, POST | Список счетов. |
| [deleteInvoice](https://help.pswallet.org/ru/pay-api/invoices#deleteinvoice) | POST | Удалить неоплаченный счёт. |
| [transfer](https://help.pswallet.org/ru/pay-api/transfers#transfer) | POST | Перевести деньги пользователю PS Wallet. |
| [getTransfers](https://help.pswallet.org/ru/pay-api/transfers#gettransfers) | GET, POST | Список переводов. |
| [createCheck](https://help.pswallet.org/ru/pay-api/checks#createcheck) | POST | Создать чек. |
| [getChecks](https://help.pswallet.org/ru/pay-api/checks#getchecks) | GET, POST | Список чеков. |
| [deleteCheck](https://help.pswallet.org/ru/pay-api/checks#deletecheck) | POST | Удалить неактивированный чек. |
| [getBalance](https://help.pswallet.org/ru/pay-api/balance#getbalance) | GET, POST | Баланс приложения. |
| [getExchangeRates](https://help.pswallet.org/ru/pay-api/balance#getexchangerates) | GET, POST | Курсы монет к USD и RUB. |
| [getCurrencies](https://help.pswallet.org/ru/pay-api/balance#getcurrencies) | GET, POST | Монеты, которые сейчас принимает API. |
| [getStats](https://help.pswallet.org/ru/pay-api/balance#getstats) | GET, POST | Статистика приложения за период. |

## Разделы документации

- [Запросы и ответы](https://help.pswallet.org/ru/pay-api/requests) — адрес API, авторизация, формат параметров и ответов, лимит запросов.
- [Монеты и суммы](https://help.pswallet.org/ru/pay-api/assets) — коды монет, точность, USDT в любой сети, счета в долларах и рублях.
- [Счета](https://help.pswallet.org/ru/pay-api/invoices) — `createInvoice`, `getInvoices`, `deleteInvoice`.
- [Переводы](https://help.pswallet.org/ru/pay-api/transfers) — `transfer`, `getTransfers`.
- [Чеки](https://help.pswallet.org/ru/pay-api/checks) — `createCheck`, `getChecks`, `deleteCheck`.
- [Приложение, баланс и курсы](https://help.pswallet.org/ru/pay-api/balance) — `getMe`, `getBalance`, `getExchangeRates`, `getCurrencies`, `getStats`.
- [Типы объектов](https://help.pswallet.org/ru/pay-api/types) — поля Invoice, Transfer, Check и других объектов.
- [Вебхуки](https://help.pswallet.org/ru/pay-api/webhooks) — уведомления об оплате, проверка подписи, повторы.
- [Ошибки](https://help.pswallet.org/ru/pay-api/errors) — формат и коды ошибок.
- [Комиссия и лимиты](https://help.pswallet.org/ru/pay-api/fees-and-limits) — сколько стоит приём оплаты и какие есть ограничения.
- [Безопасность](https://help.pswallet.org/ru/pay-api/security) — токен, разрешённые методы, белый список IP.

---
Источник: https://help.pswallet.org/ru/pay-api/overview
