Impersonales
Участник
Приветствую всех)
Тут будет очень много текста, так как я хочу рассказать про сам проект, почему он может получить билет на жизнь и что привело к его созданию.
Стиль будет разговорный, поэтому (надеюсь) прочитать можно будет на одном дыхании.
Предупреждаю, юзеры которые не обладают минимальными знаниями в программировании (web Backend) будет иногда не понятно, но тоже интересно)
Switch-Pay - агрегатор агрегаторов/платежных систем, который поможет вам принимать платежи в вашем telegram боте.
Что привело к созданию:
Когда я делал для своего бота несколько способов оплаты товара, то я подключил
- Interkassa
- PayMaster
- криптовалютный агрегатор
Настройка каждого у меня заняла достаточно много времени, так как у этих этих агрегаторов разное API.
Пришлось писать модуль под каждого с учетом его "пожеланий" + у них разные условия для создания ссылки на оплату. Этому нужна ссылка для редиректа, этому уникальный id платежа в своей системе, а этому код валюты (а не буквенное обозначение)
А так как у меня был мультивалютный бот (в нем были товары за RUB, USD, UAH и BTC) то пришлось поиграться с валютами и их конвертацией + это как то соединить в агрегаторами.
Настроил и забыл, но так как я люблю статистику - начал городить подобие админ панели где я могу посмотреть транзакции сразу от всех агрегаторов в реал тайме + по "чеку" проверять оплаты от моих клиентов (иногда возникали проблемы с задержкой средств на стороне агрегатора и он не отправлял мне заветный хук об оплате) + выгружать в любом формате статистику платежей, смотреть оборот за месяц. Да, это все можно посчитать на листочке, но с админкой удобнее.
Тоже хорошо, но понадобилось мне сделать аналогичного бота продаж и подключить агрегаторы, но проблема в том, что мне пришлось по новой регистрировать аккаунты, проходить проверки и так далее. Это был единственный верный вариант, так как в начале даже мысли не было подключить один агрегатор (один аккаунт) сразу на несколько проектов => или переписывать архитектуру с нуля, или первый вариант.
Можно и дальше продолжать рассказывать про эти круги ада когда ты заморачиваешься с приемом платежей не только от кивасика)
В чем польза проекта:
Перечислять много, поэтому ниже будет FAQ как подключить своей проект к Switch-Pay + будет показан MVP функционал и планы на будущее)
Повторяю - проект находится на стадии закрытого бета-теста и содержит минимум функций/фишек
Для удобства читабельности все запросы я буду показывать в JSON формате
Запрос на создание ордера
status - запрос успешно обработан
id_order - уникальный идентификатор внутри сервиса. С помощью него вы сможете проверять статус платежа
url_pay_tgbot - ссылка на оплату (в этом боте человек сможет оплатить товар/услугу удобным ему способом, а именно теми агрегаторами которые вы добавили себе в проект)
При переходе по ссылку в бота ему бот напишет сообщение:
После нажатия на один из способов:
В данном варианте был выбран способ QIWI PHONE, это оплата с помощью комментария:
Запрос на проверку оплаты
status - запрос успешно обработан
status_pay:
- not_paid (оплата еще не произведена)
- pay (успешно оплачено)
text - человеко понятное объяснение
---------
На данный момент это всё API которое есть ( а больше и не нужно, по крайней мере сейчас)
Теперь кратко о фишках проекта в целом с кусочком будущего:
- Один и тот же аккаунт платежной системы (к примеру кошелек киви) можно подключить к нескольким проектам. Поэтому вам не нужно будет создавать отдельный аккаунт платежной системы для каждого проекта. Просто добавляете его в настройках)
- Если ваш проект получает информацию о платежах через веб хуки и он случайно упал, то вы можете продублировать веб хуки с помощью switch-pay (напоминаю, в планах сделать реетранслятор веб хуков от платежных систем на ваши проекты, но только с форматированием под одну маску
- Можно смотреть все транзакции, выгружать их в удобном виде, искать определенные по фильтрам и вручную проверять статус оплаты с помощью id_order (которые выдается при создании ордера)
- Оплачивать товар/услугу с помощью нескольких платежных систем (допустим товар на 100р, а у клиента 60р на киви и 40р на карте (забудем сейчас про комиссию))
- Так как можно оплачивать с разных систем => клиент может оплатить 50% со своего кармана, отправить ссылку на ордер другу и он оплатит оставшиеся 50% (это возможно, так как нет привязки к определенному аккаунту телеграм)
- У вас недостаточно знаний/денег/времени для подключения сразу нескольких платежных систем с последующем добавление новых? Подключите switch-pay, а уже в нем добавьте остальные системы без труда (выберите нужную систему и введите свои API ключи). Вам не нужно беспокоится, так как api для вашего всегда будет один - от Switch-Pay
- в планах добавить яндекс.кассу, paymaster, интеркассу, робокассу и аналогичные популярные агрегаторы
- Юзер в тг может просмотреть все свои платежи через switch-pay
Выше представлены плюсы (несколько забежал на будущее) которые (я надеюсь) дают проекту шанс на существование.
Сервис будет платный?
К сожалению - да. Но, так как ресурсов он потребляет не так уж и много, то сумма аренды будет минимальная, а именно не больше 200р в месяц. Возможно, в будущем, если какой либо проект будет нагружать систему (вдруг у него будет 10 000 транзакций в сутки), то я буду вынужден поднять для него арендную плату.
Что подразумевает собой набор?
Если вы
- программист который пишет ботов тг с оплатой чего либо,
- у вас уже есть бот и вы хотите подключить оплату товара/услуги
- вы уже подключили своего бота к какой либо платежной системы, но хотите попробовать это
Напишите мне в лс телеграм @Impersonales .
Если у вас недостаточно знаний для подключения switch-pay - я вам все сам настрою
Если у вас будут вопросы - на все отвечу, везде подскажу
Теперь у меня обращение лично к вам
Я надеюсь вы разделили со мной мнение, что этот сервис будет полезен. Да, сейчас он MVP, да и в закрытом бета-тесте, функционала как кот наплакал, но он уже работает))
Да, без всяких плюшек, которые я написал выше, но они реальны и скоро будут добавлены!
Некоторые идеи я не написал... Их просто очень много и планы у меня огромные на этот проект.
От вас мне нужна
- конструктивная критика (кто будет критиковать без должного объяснения - извините, я вам отвечать не буду)
Если вы хотите видеть этот проект в продакшене
- идеи которые можно внедрить в проект
- помощь своим присутствием (тестирование системы)
- что то еще)
P.S. Если проект никому не будет нужен, но клиенты уже будут (даже на стадии бета тестирования) - я опубликую исходники, что бы не подставлять никого. Весь код я комментирую (иногда доходит до каждой строчки, привычка такая), поэтому проблем с установкой не возникнет. Но я надеюсь, что идея хорошая и всем понравится.
P.S.S В закрытом бета-тесте пользование сервисом - бесплатно. А кто пройдет бета-тестирование до открытого продакшена - вам конечно скидка)
Тут будет очень много текста, так как я хочу рассказать про сам проект, почему он может получить билет на жизнь и что привело к его созданию.
Стиль будет разговорный, поэтому (надеюсь) прочитать можно будет на одном дыхании.
Предупреждаю, юзеры которые не обладают минимальными знаниями в программировании (web Backend) будет иногда не понятно, но тоже интересно)
Switch-Pay - агрегатор агрегаторов/платежных систем, который поможет вам принимать платежи в вашем telegram боте.
Что привело к созданию:
Когда я делал для своего бота несколько способов оплаты товара, то я подключил
- Interkassa
- PayMaster
- криптовалютный агрегатор
Настройка каждого у меня заняла достаточно много времени, так как у этих этих агрегаторов разное API.
Пришлось писать модуль под каждого с учетом его "пожеланий" + у них разные условия для создания ссылки на оплату. Этому нужна ссылка для редиректа, этому уникальный id платежа в своей системе, а этому код валюты (а не буквенное обозначение)
А так как у меня был мультивалютный бот (в нем были товары за RUB, USD, UAH и BTC) то пришлось поиграться с валютами и их конвертацией + это как то соединить в агрегаторами.
Настроил и забыл, но так как я люблю статистику - начал городить подобие админ панели где я могу посмотреть транзакции сразу от всех агрегаторов в реал тайме + по "чеку" проверять оплаты от моих клиентов (иногда возникали проблемы с задержкой средств на стороне агрегатора и он не отправлял мне заветный хук об оплате) + выгружать в любом формате статистику платежей, смотреть оборот за месяц. Да, это все можно посчитать на листочке, но с админкой удобнее.
Тоже хорошо, но понадобилось мне сделать аналогичного бота продаж и подключить агрегаторы, но проблема в том, что мне пришлось по новой регистрировать аккаунты, проходить проверки и так далее. Это был единственный верный вариант, так как в начале даже мысли не было подключить один агрегатор (один аккаунт) сразу на несколько проектов => или переписывать архитектуру с нуля, или первый вариант.
Можно и дальше продолжать рассказывать про эти круги ада когда ты заморачиваешься с приемом платежей не только от кивасика)
В чем польза проекта:
Перечислять много, поэтому ниже будет FAQ как подключить своей проект к Switch-Pay + будет показан MVP функционал и планы на будущее)
Повторяю - проект находится на стадии закрытого бета-теста и содержит минимум функций/фишек
- Регистрируемся
Сейчас:
- кол-во проектов
- api_key - нужен для взаимодействия вашего проекта с сервисом
В планах сделать виджеты
- оборот за месяц
- график по дням ( в течении месяца)
- оборот за все время
- колонка последних обновлений
- и так далее
- Создаем проект (нажимаем на Project справа сверху)
- Переходим в настройки проекта
Сейчас:
- пустая главная страница проекта, НЛО опять шалит...
- Agregators - список подключенных агрегаторов/платежных систем
- Transaction - список успешных оплат
- API - документация для работы с сервисом
В планах:
- договориться с НЛО, что бы они вернули информацию о кол-во транзакций в месяц/сутки, обороте в месяц/сутки и прочие полезные данные
- добавить страницу настроек:
--- можно будет указать URL адрес веб хука. При оплате товара на ваш URL будет направлен запрос с данными о транзакции. Согласен, у каждого агрегатора есть веб хук, но все они отправляют с разной структурой, а сервис будет подгонять их под одну маску
--- время жизни ордера на оплату
--- можно подключить своих ботов для личного оповещения (полные оплаты, частичные оплаты и так далее)
- Нажимаем на Agregator
- Выберите список агрегатора - сейчас доступен только QIWI PHONE (оплата по комментарию), QIWI KASSA добавлена для наглядности (сейчас ведется разработка под нее)
Описание пунктов таблицы:
- Off/On - иногда нужно будет выключать определенные агрегаторы (причины придумайте сами). Что бы их не удалять из системы (с уже введенными настройками)
- Connection_project - система проверяет валидность введенных API ключей и прочих идентификационных данных которые выдает вам агрегатор/платежная система). Если они будут невалид - включить агрегатор вы не сможете
- Connection_system - иногда проблемы бывают у самих систем (привет Робокасса), поэтому мы сами отключим их на время пока они не решат свои проблемы (зачем показывать клиенту способ оплаты который не работает на данный момент?)
- Name - общедоступное имя системы которое выводится в телеграм боте (не поняли? Читайте дальше)
- System_name - уникальный идентификатор системы внутри сервиса
- Для примера настроим QIWI PHONE (наверное самый распространенный способ приема платежей в телеграм)
Следуя инструкции можно будет подключить свой киви кошелек для приема оплат
- Вводим токен, нажимаем добавить и наблюдаем базовую информацию о кошельке
В планах (именно на эту систему) добавить кнопку "Подробная информация" которая покажет всю информацию о кошелке
- Перейдем в транзакции
Desc - наименование товара (может отсутствовать)
id_pay - уникальный id транзакции внутри системы
System - уникальный идентификатор системы с помощью корой была произведена оплата
Для удобства читабельности все запросы я буду показывать в JSON формате
Запрос на создание ордера
Код:
GET https://switch-pay.local/api/
{
"api_key" : "4-SH9hNBW3FOImxb3Utuqe7aanFm0nsM7p",
"id_project" : "13",
"valute" : "RUB",
"amount" : "1",
"action" : "create_order"
}
Ответ
{
"status" : true,
"id_order" : "30-ch72J",
"url_pay_tgbot" : "https://t.me/switch_pay_bot?start=30-ch72J"
}
status - запрос успешно обработан
id_order - уникальный идентификатор внутри сервиса. С помощью него вы сможете проверять статус платежа
url_pay_tgbot - ссылка на оплату (в этом боте человек сможет оплатить товар/услугу удобным ему способом, а именно теми агрегаторами которые вы добавили себе в проект)
При переходе по ссылку в бота ему бот напишет сообщение:
После нажатия на один из способов:
В данном варианте был выбран способ QIWI PHONE, это оплата с помощью комментария:
Запрос на проверку оплаты
Код:
GET https://switch-pay.local/api/
{
"api_key" : "4-SH9hNBW3FOImxb3Utuqe7aanFm0nsM7p",
"id_project" : "13",
"id_order" : "30-ch72J",
"action" : "status_order"
}
Ответ
{
"status" : true,
"status_pay" : "not_paid",
"text" : "Funds not yet received"
}
status_pay:
- not_paid (оплата еще не произведена)
- pay (успешно оплачено)
text - человеко понятное объяснение
---------
На данный момент это всё API которое есть ( а больше и не нужно, по крайней мере сейчас)
Теперь кратко о фишках проекта в целом с кусочком будущего:
- Один и тот же аккаунт платежной системы (к примеру кошелек киви) можно подключить к нескольким проектам. Поэтому вам не нужно будет создавать отдельный аккаунт платежной системы для каждого проекта. Просто добавляете его в настройках)
- Если ваш проект получает информацию о платежах через веб хуки и он случайно упал, то вы можете продублировать веб хуки с помощью switch-pay (напоминаю, в планах сделать реетранслятор веб хуков от платежных систем на ваши проекты, но только с форматированием под одну маску
- Можно смотреть все транзакции, выгружать их в удобном виде, искать определенные по фильтрам и вручную проверять статус оплаты с помощью id_order (которые выдается при создании ордера)
- Оплачивать товар/услугу с помощью нескольких платежных систем (допустим товар на 100р, а у клиента 60р на киви и 40р на карте (забудем сейчас про комиссию))
- Так как можно оплачивать с разных систем => клиент может оплатить 50% со своего кармана, отправить ссылку на ордер другу и он оплатит оставшиеся 50% (это возможно, так как нет привязки к определенному аккаунту телеграм)
- У вас недостаточно знаний/денег/времени для подключения сразу нескольких платежных систем с последующем добавление новых? Подключите switch-pay, а уже в нем добавьте остальные системы без труда (выберите нужную систему и введите свои API ключи). Вам не нужно беспокоится, так как api для вашего всегда будет один - от Switch-Pay
- в планах добавить яндекс.кассу, paymaster, интеркассу, робокассу и аналогичные популярные агрегаторы
- Юзер в тг может просмотреть все свои платежи через switch-pay
Выше представлены плюсы (несколько забежал на будущее) которые (я надеюсь) дают проекту шанс на существование.
Сервис будет платный?
К сожалению - да. Но, так как ресурсов он потребляет не так уж и много, то сумма аренды будет минимальная, а именно не больше 200р в месяц. Возможно, в будущем, если какой либо проект будет нагружать систему (вдруг у него будет 10 000 транзакций в сутки), то я буду вынужден поднять для него арендную плату.
Что подразумевает собой набор?
Если вы
- программист который пишет ботов тг с оплатой чего либо,
- у вас уже есть бот и вы хотите подключить оплату товара/услуги
- вы уже подключили своего бота к какой либо платежной системы, но хотите попробовать это
Напишите мне в лс телеграм @Impersonales .
Если у вас недостаточно знаний для подключения switch-pay - я вам все сам настрою
Если у вас будут вопросы - на все отвечу, везде подскажу
Теперь у меня обращение лично к вам
Я надеюсь вы разделили со мной мнение, что этот сервис будет полезен. Да, сейчас он MVP, да и в закрытом бета-тесте, функционала как кот наплакал, но он уже работает))
Да, без всяких плюшек, которые я написал выше, но они реальны и скоро будут добавлены!
Некоторые идеи я не написал... Их просто очень много и планы у меня огромные на этот проект.
От вас мне нужна
- конструктивная критика (кто будет критиковать без должного объяснения - извините, я вам отвечать не буду)
Если вы хотите видеть этот проект в продакшене
- идеи которые можно внедрить в проект
- помощь своим присутствием (тестирование системы)
- что то еще)
P.S. Если проект никому не будет нужен, но клиенты уже будут (даже на стадии бета тестирования) - я опубликую исходники, что бы не подставлять никого. Весь код я комментирую (иногда доходит до каждой строчки, привычка такая), поэтому проблем с установкой не возникнет. Но я надеюсь, что идея хорошая и всем понравится.
P.S.S В закрытом бета-тесте пользование сервисом - бесплатно. А кто пройдет бета-тестирование до открытого продакшена - вам конечно скидка)
Последнее редактирование: