What this solution does
The module integrates T-Bank (formerly Tinkoff Bank) e-commerce acquiring with 1C-Bitrix of any edition, from 'First Site' to 'Enterprise'. It automatically creates the payment system, supports migration from the official module, maintains an operations log, and sends error notifications via the rover.notifier module.
The solution addresses standard integration tasks, including correct VAT calculation in receipts and protection against duplicate bank notifications. Development has been ongoing since 2017, with regular updates aligned with security requirements, bank standards, and Federal Law 54-FZ. The code is written directly by the author, ensuring deep architectural understanding and the ability to resolve non-standard scenarios and API-related questions directly.
Supported payment methods:
- Bank cards (Mir, Visa, MasterCard)
- SBP (QR code payment, including in the popup widget)
- T-Pay, SberPay, Yandex Pay, MIR Pay
- Payment in the popup widget without redirecting to the bank's website
The module provides automatic redirection to the payment page immediately after order placement. It supports full and partial refunds with automatic order status updates, as well as partial payments.
Receipts and 54-FZ compliance
The module enables receipt generation via T-Bank in full compliance with 54-FZ regulations. All VAT rates are supported, including current calculated rates of 20/120 and 22/122. It works with all tax systems: OSN, USN, ENVD, ESCHN, and patent taxation. A complete reference of calculation items and payment methods according to FFD version 1.2 is included, allowing accurate reporting of marked goods, contributions, and agency payments. Closing receipts are generated upon shipment, payment, or when the order transitions to a specified status.
Two-stage and recurring payments
Fund holding is implemented: payment confirmation can be done in one click directly from the order card in the admin panel or automatically after a specified timeout (in days). The order is marked as paid only after bank confirmation. If the charge fails, the operator sees the reason and can retry, avoiding the situation where an order is marked as paid without funds received. After holding funds, the buyer sees a clear message stating that money is reserved on the card and will be charged once the store confirms the order, rather than an error message indicating payment failure.
The module provides automatic confirmation of reserved payments after a specified timeout in days. For multisite installations, saved card binding can be configured individually for each site or globally.
Automation and flexibility features
Order statuses can be customized for specific events: payment, partial payment, hold, refund, and cancellation.
A "Send payment link" button is available in the order card. If payment has not been completed or ended with a fixable error, the system sends the buyer a new payment link via email with a single click. The email template is freely editable in the admin panel. If the template is missing, disabled, or not linked to the order site, the module reports this immediately rather than after a failed send attempt.
Flexible templates for order links in the customer personal cabinet are supported. Components are provided to embed the payment form in the order card, personal cabinet, CRM forms, and the Sites24 block.
Upon installation, the module automatically creates the payment system and opens its settings. The user only needs to enter the terminal ID and password.
The module enables a seamless transition from the official T-Bank solution: if tinkoff.payment is already installed, terminal parameters, password, and receipt settings are automatically migrated to the new payment system, after which the old module is disabled. Ready-made icons are provided for each payment method, including cards, SBP, T-Pay, and pop-up widgets. The component operates independently of the 'Online Store' module, featuring its own logging and notification settings.
The failure notification system alerts administrators to critical events that would otherwise remain unnoticed in logs: payment amount mismatches with bank confirmation, rejected bank notifications, failure to send a closing receipt, issues with fund reservation, refunds issued without order cancellation, or error messages displayed instead of the payment form. Two independent notification modes are implemented: critical failures are sent immediately, while user errors are grouped to prevent the mailbox from being flooded with identical messages during bank-side outages.
The module uses the free 'Error Notifications' component (rover.notifier, requires PHP 8.2) to send alerts via email, SMS, or messengers (Telegram, WhatsApp, MAX). Without this component, the core functionality operates normally, but notifications are not sent.
The order card includes a 'T-Bank Operations' tab. It displays the payment status in the bank and the receipt date, the order status set by the module, the bank-confirmed amount, whether a closing receipt was sent, and the terminal number used for the transaction.
A detailed operation log is maintained for each order. It records the receipt and processing of bank notifications, responses to status queries, order status changes, hold confirmations, and receipt dispatches. The initiator of each action is also recorded: the bank, an operator, or a background agent.
Rejected bank notifications are displayed with the specific reason for rejection, clarifying why a payment failed.
The operation log is maintained continuously, regardless of general logging settings. Storage depth is configurable, and old records are automatically deleted. The log does not contain customer personal data or receipt composition details.
Reliability and Security
Protection against duplicate closing receipts is provided when the bank sends repeated notifications.
The module enables secure payment processing via T-Bank by restricting incoming notifications to a whitelist of the bank's IP addresses. Logs are automatically rotated and cleaned, with the log directory protected from direct access. Payment status is stored in a dedicated module table rather than site settings, preventing full data retrieval on every request and ensuring stable performance even with tens of thousands of transactions. Background automatic confirmation of reserved payments continues despite errors in individual orders, ensuring that one failure does not leave other orders unconfirmed. A separate 'Debug' tab in the module settings provides logging and notifications without interfering with main settings, and is available in all editions, including those without the 'Online Store' module.
Compatibility
The module is compatible with all 1C-Bitrix editions, including 'First Site' and 'Start'. It supports Composite mode. Adaptive payment templates are provided, including a dedicated template for Sites24. The system supports balance top-ups on internal accounts. Multicurrency support is implemented, along with correct handling of alphanumeric order numbers. Internal events are available for fine-tuning the module to specific needs.
Complete documentation for installation and configuration is available. Free consultation is provided before and after purchase, assisting with connection, setup, and test payments. Technical support is handled directly by the module developer rather than an automated script or a general support line. In non-standard cases, responses are clarified directly with the author, bypassing standard ticket queues.
Search keywords: Tinkoff, T-Bank, t-bank, tbank.
When needed, General iT can implement “T-Bank Internet Acquiring Payment Processing”, configure the module and verify it against the current website setup.