Payout to the Russian Federal Tax Agency
Starting from 2019 foreign companies shall pay VAT related to the delivery of e-services to Russian consumers. Now you can pay it with Bank 131.
VAT payment will be transferred to these bank details:
BIC: 017003983
Treasury Account: 03100643000000018500
Treasury Single Account: 40102810445370000059
Recipient: Federal Treasury of Russia (Federal Tax Service of Russia)
INN: 7727406020
KPP: 770801001
KBK: 18201061201010000510
How to enable
Inform your Bank 131 manager that you want to pay VAT and we will choose a convenient workflow and sign the agreement.
Possible scenarios
With automatic deduction
This scenario is for you if you accept payments with Bank 131 services and want to pay VAT for these payments.
In this case, Bank 131 will take the corresponding amount from every accepted payment and transfer it to the guaranty payment balance, exactly as much as is necessary for VAT.
With guarantee payment balance
This scenario looks like an ordinary payout: you send a guarantee payment to Bank 131, the Bank then executes your payout orders for VAT payments.
You can check the balance of your guarantee payment balance using the wallet/balance
method.
How to pay VAT
Send a session/init/payout
request.
You may use one of the following ways: with minimal or extended sets of parameters.
Payout using a request with a minimal set of parameters
Parameters for the request with a minimal set of parameters
Name | Mandatory | Type | Description |
---|---|---|---|
payment_method | + | object | Payment data |
type | + | string | Value: tax |
tax | + | object | Data for making a VAT payout |
type | + | string | Payout method. Possible options: tax_short |
tax_details | + | object | Tax details |
amount_details | + | object | Amount |
amount | + | int | The amount in ruble decimal format. The value must be greater than zero. To send 100 rubles, specify 10000 |
currency | + | string | The ISO 4217 currency code. Case insensitive. Always: rub |
Request example
curl -X POST \
https://demo.bank131.ru/api/v1/session/init/payout \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"amount_details": {
"amount": 20000,
"currency": "rub"
},
"payment_method": {
"type": "tax",
"tax": {
"type": "tax_short",
"tax_details": {}
}
}
}'
Successful response example
{
"status": "ok",
"session": {
"id": "ps_2909",
"status": "in_progress",
"created_at": "2018-05-27T03:02:00.935351Z",
"updated_at": "2018-05-27T03:02:00.935351Z",
"payments": [
{
"id": "po_3230",
"status": "in_progress",
"created_at": "2018-05-27T03:02:00.935351Z",
"payment_method": {
"type": "tax",
"tax": {
"type": "tax_short",
"tax_details": {}
}
},
"amount_details": {
"amount": 20000,
"currency": "rub"
}
}
]
}
}
Payout using a request with an extended set of parameters
This request is necessary if you want to specify specific parameters in the payment order, such as debt payment, KBK, tax authority details.
Parameters for tax payments using the extended set of fields
Name | Mandatory | Type | Description |
---|---|---|---|
payment_method | + | object | Payment data |
type | + | string | Value: tax |
tax | + | object | Data for making a VAT payout |
type | + | string | Payout method. Possible options: tax_full |
tax_full | + | object | Data for making a VAT payment request with an extended set of parameters |
uin | + | string | UIN. For tax payments, the value is always 0 |
description | + | string | Payout purpose |
tax_details | + | object | Tax details |
period | + | string | Tax period. The format is given below. |
kbk | + | string | Budget Classification Code, 20 digits |
oktmo | + | string | All-Russian Classifier of Territories of Municipal Formations, 8 or 11 digits |
payment_reason | + | string | Payment reason. The format is given below |
document_number | + | string | Document number. The format is given below |
document_date | + | string | Document date. The format is given below |
amount_details | + | object | Amount |
payer | + | object | Taxpayer's data |
payee | + | object | Recipient's data |
amount | + | int | The amount in ruble decimal format. The value must be greater than zero. To send 100 rubles, specify 10000 |
currency | + | string | The ISO 4217 currency code. Case insensitive. Always: rub |
Input format for the period
field in requests with an extended set of parameters
- If the
payment_reason
field is specified as 'TP' or 'ZD', the tax payment frequency established by legislation is indicated in one of the formats below:- For monthly payments:
MS.MM.YYYY
, where MM is the month (from 01 to 12), andYYYY
is the year for which the payment is made (for example, when paying personal income tax for employees' salaries for February 2020, useMS.02.2020
). - For taxes paid quarterly:
KV.QQ.YYYY
, where QQ is the quarter (from 01 to 04), andYYYY
is the year for which the tax is paid. - For semi-annual taxes (e.g.,
UTII
):PL.HH.YYYY
, where HH is the half-year (01 or 02), and YYYY is the year for which the tax is remitted. - For annual payments:
GD.00.YYYY
, whereYYYY
is the year for which the tax is paid (for example, when making the final calculation for corporate profit tax for 2019, useGD.00.2019
).
- For monthly payments:
- If the
payment_reason
field is set to 'TR', then the demand date is reflected. - If the
payment_reason
field is set to 'AP', then '0' is entered.
Input format for the payment_reason
field in requests with an extended set of parameters
TP
– for payment of tax/fee for the current period.ZD
– for voluntary repayment of tax/fee debt.TR
– for repayment of debt based on a demand issued by the tax authority or the Social Security Fund (FSS).AP
– for repayment of debt based on audit findings (before a demand is issued).
Input format for the document_number
field in requests with an extended set of parameters
- If the
payment_reason
field is set toTP
orZD
, then0
. - If the
payment_reason
field is set toTR
, then the tax demand number for payment. - If the
payment_reason
field is set toAP
, then the decision number resulting from the audit.
Input format for the document_date
field in requests with an extended set of parameters
- If the
payment_reason
field is set toTP
, then the date of declaration signing or '0' if the date is not specified. - If the
payment_reason
field is set toZD
, then '0'. - If the
payment_reason
field is set toTR
, then the demand date for payment. - If the
payment_reason
field is set toAP
, then the post-audit decision date.
Request example
{
"amount_details": {
"amount": 20000,
"currency": "rub"
},
"payment_method": {
"type": "tax",
"tax": {
"type": "tax_full",
"tax_full": {
"description": "{VO70010} 199991001//199991001//\"ООО РОМАШКА\"//НДС за МС.02.2020",
"uin": "0",
"tax_details": {
"kbk": "18210301000011000110",
"oktmo": "45348000",
"payment_reason": "ЗД",
"period": "МС.02.2020",
"document_number": "0",
"document_date": "0"
},
"payer": {
"kpp": "199991001",
"inn": "199991001"
},
"payee": {
"bik": "017003983",
"account": "03100643000000018500",
"account_eks": "40102810445370000059",
"name": "Казначейство России (ФНС России)",
"inn": "7727406020",
"kpp": "770701001"
}
}
}
}
}
Successful response example
{
"status": "ok",
"session": {
"id": "ps_2909",
"status": "in_progress",
"created_at": "2018-05-27T03:02:00.935351Z",
"updated_at": "2018-05-27T03:02:00.935351Z",
"payments": [
{
"id": "po_3230",
"status": "in_progress",
"created_at": "2018-05-27T03:02:00.935351Z",
"payment_method": {
"type": "tax",
"tax": {
"type": "tax_full",
"tax_full": {
"description": "{VO70010} 199991001//199991001//\"ООО РОМАШКА\"//НДС за МС.02.2020",
"uin": "0",
"tax_details": {
"kbk": "18201061201010000510",
"oktmo": "45348000",
"payment_reason": "ЗД",
"period": "МС.02.2020",
"document_number": "0",
"document_date": "0"
},
"payer": {
"kpp": "199991001",
"inn": "199991001"
},
"payee": {
"bik": "017003983",
"account": "03100643000000018500",
"account_eks": "40102810445370000059",
"name": "Казначейство России (ФНС России)",
"inn": "7727406020",
"kpp": "770701001"
}
}
}
},
"amount_details": {
"amount": 20000,
"currency": "rub"
}
}
]
}
}