Pages, Articles & News
Tools & Plugins
Example / Placeholder Title


Description as an example placeholder. Sample text content for further customization of the "Index36" template.

You are free to edit and customize the template however you like. If you don’t have time or enough knowledge — you can always order template adaptation by contacting me via GitHub or private messages on the digital goods marketplace.

2025-09-12 05:17


Платежный модуль и валюта сайта. прием оплаты от пользователей, например Payeer, Unitpay, Enot, Robokassa, банковские и криптовалютные системы, а также другие.

Для того чтобы на сайте организовать платные услуги и внутренние счета пользователей вам понадобится платежный модуль Payments. В состав этого модуля входит система внутренних счетов пользователей и собственное API для организации операций со счетами, пополнение, переводы между пользователями или оплата каких-либо определенных услуг, например для приема оплаты за каие-либо платные услуги.

Для пополнения счета необходимо также установить так называемые платежные плагины - это плагины для подключения платежных систем, с помощью которых осуществляется прием оплаты от пользователей, например Payeer, Unitpay, Enot, Robokassa, банковские и криптовалютные системы, а также другие.

Особенностью платежного модуля является то, что при определенных навыках в веб-программировании можно создавать всевозможные платные сервисы. Платные услуги при этом создаются в виде отдельных плагинов, которые в своем коде используют API основного модуля Payments.

Что касается валюты сайта, то здесь все просто. По-умолчанию единица валюты называется "руб.". Но если вам необходимо использовать другое название валюты, то в настройках модуля можно изменить это название на свое.

Последние обновления в платежных плагинах позоляют настроить каждый платежный плагин под свою валюту и соотнести ее с внутренней валютой сайта. Для этого в настройках плагина появился еще один параметр "Соотношение суммы к валюте сайта", который позволяет установить соотношение суммы оплаты в платежном плагине к общей валюте сайта.

Например, на вашем сайте валюта называется "монета", и допустим 1 монета = 1 рублю. Тогда если ваши платежные плагины настроены на рубли, то соотношение должно быть равно 1. То есть в данном случает валюта сайта эквивалентна валюте платежных плагинов.

Другой случай: Ваш платежный плагин настроен на прием в USD, тогда в настройках этого плагина нужно указать соотношение 0.0333, чтобы при оплаче через этот плагин сумма к оплате конвертировалась с учетом этого коэффициента. Допустим сумма к оплате 100 монет, тогда плагин сообщит платежной системе сумму к оплате в USD = 100*0.0333 = 3.33 USD.

Платежный модуль Payments позволяет развернуть на сайте полноценную систему оплаты с внутренними счетами пользователей и системой пополнения счетов через платежные системы.

Недавно функционал данного модуля был немного усовершенствован и теперь в его состав входит возможность вывода со счета по заявке от пользователя, а также переводы между пользователями. Можно также установить размер комиссии за вывод со счета и за перевод другому пользователю. Причем также можно указать каким образом взимается комиссия при переводе другому пользователю (с отправителя или с получателя).

Платежные системы подключаются к модулю через специальные платежные плагины, что позволяет расширять список платежных систем путем установки соответствующих плагинов.

 

Чтобы в шапке сайта разместить ссылку на счет пользователя нужно добавить следующий код в header.tpl:

<!-- IF {PHP.cfg.payments.balance_enabled} -->
   <a href="{HEADER_USER_BALANCE_URL}">{PHP.L.payments_mybalance}: {HEADER_USER_BALANCE|number_format($this, '2', '.', ' ')} {PHP.cfg.payments.valuta}</a>
<!-- ENDIF -->

 

1.1. Создание услуги и переход к ее оплате осуществляется с помощью функции

cot_payments_create_order($area = 'balance', $summ, $options)

где:

area - идентификатор услуги (уникальный код вашей услуги, например: 'balance' - встроенная услуга пополнения счета);
summ - стоимость услуги к оплате;
options - массив дополнительных опций услуги, которые фиксируются в базе данный (в информации о счете на оплату).
Это может быть дополнительный идентификатор услуги ($options['code'] = 21232;),
название услуги ($options['desc'] = 'Оплата услуги Х';)
или срок действия услуги ($options['time'] = 8600;).

Кастомные опции необходимо создавать дополнительно в виде дополнительных полей в таблице cot_payments.

Также в последнем обновлении была добавлена возможность указывать ссылку для редиректа при успешной оплате:

$options['redirect'] = $cfg['mainurl'].'/'.cot_url('payments', 'm=balance', '', true);

cot_payments_create_order($area = 'balance', $summ, $options);

 

1.2. Чтобы узнать баланс счета пользователя можно воспользоваться функцией

cot_payments_getuserbalance($userid)

где:

userid - id-пользователя.

Другие возможности API вы можете посмотреть в файле modules/payments/inc/payments.functions.php.

примечание, - именна функций в 2025 году могут быть другие. смотрите payments.functions.php

 

This post was edited by webitproff (2025-09-12 05:30, 8 months ago)
Account