Skip to main content

Registering payouts with the Federal Tax Service

If a payout to a self-employed person was made without fiscalization, a receipt must be issued within 9 calendar days of receiving the money.

If you issued a receipt by mistake, the fiscalization can be canceled.

To use this functionality, contact your account manager at Bank 131.

How to perform fiscalization

Step 1. Create a payment session

Send a session/create request leaving the request body empty. You will get the session identifier in response.

Request example
curl -X POST \
https://demo.bank131.ru/api/v1/session/create \
-H 'content-type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
}'

Step 2. Send a fiscalization request

Send a fiscalization request specifying the session identifier and data for fiscalization.

Request example
curl -X POST \
https://demo.bank131.ru/api/v1/fiscalization \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_2704",
"fiscalization_details": {
"professional_income_taxpayer": {
"tax_reference": "123456789012",
"payer_type": "legal",
"payer_tax_number": "3316004777",
"payer_name": "OOO Vector",
"services": [{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
}
},
{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
}
}]
}
}
}'
Successful response example
{
"status": "ok",
"session": {
"id": "ps_2704",
"status": "in_progress",
"created_at": "2025-05-27T08:13:33.736384Z",
"updated_at": "2025-05-27T08:13:33.871729Z",
"payments": [{
"id": "po_2705",
"status": "in_progress",
"created_at": "2025-05-27T08:13:33.860754Z",
"amount_details": {
"amount": 15000,
"currency": "rub"
},
"fiscalization_details": {
"professional_income_taxpayer": {
"services": [{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 2
},
{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 1
}],
"tax_reference": "123456789012",
"payer_type": "legal",
"payer_tax_number": "3316004777",
"payer_name": "ООО Vector"
}
}
}]
}
}

Step 3. Wait to be notified of the results

Bank 131 will send you a payment_finished webhook. The result of the payout can be found in the status field of the payments/payout_list object. If the status is succeeded, then the fiscalization was successful. The link to the receipt from the FTS is returned in the fiscalization_details.receipt object.

Webhook example
curl -X POST \
https://partner.ru \
-H 'content-type: application/json' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"type": "payment_finished",
"session": {
"id": "ps_2704",
"status": "accepted",
"created_at": "2025-06-08T09:07:34.689353Z",
"updated_at": "2025-06-08T09:07:53.491653Z",
"payments": [{
"id": "po_23695",
"status": "succeeded",
"created_at": "2025-06-08T09:07:42.591416Z",
"finished_at": "2025-06-08T09:07:53.319963Z",
"amount_details": {
"amount": 15000,
"currency": "rub"
},
"fiscalization_details": {
"professional_income_taxpayer": {
"services": [{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 2
},
{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 1
}],
"tax_reference": "123456789012",
"receipt": {
"id": "203zpt6nu5",
"link": "https://himself-ktr.nalog.ru/api/v1/receipt/645493572846/203zpt6nu5/print"
},
"payer_type": "legal",
"payer_tax_number": "3316004777",
"payer_name": "ООО Vector"
}
}
}]
}
}'

How to cancel fiscalization

Occasionally it's necessary to cancel fiscalization and annul the issued receipt. For example, if the payout failed or the receipt was issued by mistake.

Step 1. Send a fiscalization cancellation request

Send a session/refund request specifying the session identifier from the fiscalization request that you are canceling in the session_id parameter and the receipt amount in the amount parameter.

Request example
curl -X POST \
https://demo.bank131.ru/api/v1/session/refund \
-H 'content-type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"session_id": "ps_2704",
"amount_details": {
"amount": 15000,
"currency": "rub"
}
}'

Step 2. Wait to be notified of the results

Bank 131 will send you a payment_refunded webhook with a link to the annulled receipt.

info

When fiscalization is canceled, Bank 131 specifies that the receipt was generated by mistake as a cancellation reason.

Webhook example
curl - X POST \
https: //partner.ru \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"type": "payment_refunded",
"session": {
"id": "ps_2704",
"status": "accepted",
"created_at": "2025-06-08T09:07:34.689353Z",
"updated_at": "2025-06-08T09:16:48.624196Z",
"payments": [{
"id": "po_2705",
"status": "succeeded",
"created_at": "2025-06-08T09:07:42.591416Z",
"finished_at": "2025-06-08T09:07:53.319963Z",
"amount_details": {
"amount": 15000,
"currency": "rub"
},
"fiscalization_details": {
"professional_income_taxpayer": {
"services": [{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 2
},
{
"name": "Goods delivery",
"amount_details": {
"amount": 5000,
"currency": "rub"
},
"quantity": 1
}],
"tax_reference": "123456789012",
"receipt": {
"id": "203zpt6nu5",
"link": "https://himself-ktr.nalog.ru/api/v1/receipt/645493572846/203zpt6nu5/print"
},
"payer_type": "legal",
"payer_tax_number": "3316004777",
"payer_name": "ООО Vector"
}
},
"refunds": [{
"id": "rf_249",
"status": "accepted",
"created_at": "2025-06-08T09:16:42.897606Z",
"finished_at": "2025-06-08T09:16:48.517040Z",
"amount_details": {
"amount": 15000,
"currency": "rub"
}
}]
}]
}
}'




Ask AI