Payment Systems: Overview of Methods

If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the MCP server so that the assistant can utilize the official REST documentation.

Payment systems accept payments from customers. For example, you can integrate bank acquiring or an online payment service. The customer selects a payment method during the checkout process, after which the system processes the transaction.

This section consolidates methods for registering a handler, creating a payment system, configuring parameters, and initiating payments.

Quick navigation: all methods

Relationships with Other Objects

The payment system operates in conjunction with the payer type, payment, order, and handler. These connections determine the availability of the system and the external service through which the payment is processed.

Payer Type. The parameter PERSON_TYPE_ID defines which type of payer the payment system operates for.

Payment. The parameters PAYMENT_ID and PAY_SYSTEM_ID link the payment to a specific payment system. The payment settings are returned by the method sale.paysystem.settings.payment.get, and the payment is initiated by sale.paysystem.pay.payment.

Order. In the CRM invoice scenario, payment is executed through the associated order at the API level. When paying the invoice, the system changes the payment status of that order. The link between the invoice and the order is returned by the method crm.orderentity.list.

REST Handler. The code BX_REST_HANDLER connects the payment system with an external payment provider.

How to Get Started

  1. Obtain the payer type identifier PERSON_TYPE_ID using the method sale.persontype.list.
  2. Register the REST handler using the method sale.paysystem.handler.add.
  3. Create the payment system using the method sale.paysystem.add. Pass PERSON_TYPE_ID and the handler code BX_REST_HANDLER.
  4. Check the result using the method sale.paysystem.list. If necessary, update the data using the method sale.paysystem.update.
  5. Configure the operational parameters using the methods sale.paysystem.settings.get and sale.paysystem.settings.update.
  6. To process the order payment, obtain PAYMENT_ID using the method sale.payment.list, then initiate the payment through sale.paysystem.pay.payment.
  7. For the CRM invoice, use a separate scenario: obtain orderId via crm.orderentity.list, then find PAYMENT_ID in sale.payment.list with the filter {"=orderId": <orderId>} and pass this identifier to crm.item.payment.pay.

Overview of Methods

Scope: pay_system

Who can execute the methods: depending on the method

REST Handlers for Payment Systems

Method

Description

sale.paysystem.handler.add

Adds a REST handler for the payment system

sale.paysystem.handler.update

Updates a REST handler for the payment system

sale.paysystem.handler.list

Returns a list of REST handlers for the payment system

sale.paysystem.handler.delete

Deletes a REST handler for the payment system

Payment Systems

Method

Description

sale.paysystem.add

Adds a payment system

sale.paysystem.update

Modifies a payment system

sale.paysystem.list

Returns a list of payment systems

sale.paysystem.delete

Deletes a payment system

sale.paysystem.settings.get

Returns settings for the payment system

sale.paysystem.settings.update

Updates settings for the payment system

sale.paysystem.settings.payment.get

Returns settings for the payment system for a specific payment

sale.paysystem.pay.payment

Initiates payment for an order through the selected payment system