Управление денежными средствами на расчетных счетах клиентов
Перевод денежных средств клиентов в Федеральное Казначейство
Powered By GitBook
Протокол C2B. Оплата товаров и услуг по QR
Оплата по QR — это оплата от физического лица в пользу ЮЛ/ИП путем считывания QR-кода мобильным приложением банка.
Список банков-участников СБП с поддержкой оплаты по QR: https://sbp.nspk.ru/participants/
Типы QR:
1. Динамический или QR на кассе: QR-код с обязательным указанием суммы платежа. 2. Статический или QR-наклейка, может быть с суммой или без. Если сумма не прописана, то плательщик должен указать её после договорённости с продавцом.
Выставление счета (InvoiceRequest) для оплаты по динамическому QR.
Для выставления счёта на оплату используется метод InvoiceRequest. Счет (Invoice) выставляется Получателем (ЮЛ/ИП) для оплаты за товары или услуги.
Чтобы сформировать invoice для оплаты по QR, счёт получателя обязательно должен быть настроен для работы с СБП: этот способ должен быть активен для счёта в личном кабинете moneta.ru или payanyway.ru. Проверить это можно в личном кабинете moneta.ru: «Рабочий кабинет» → «Способы оплаты»; или в личном кабинете payanyway.ru: «Способы оплаты».
В поле CUSTOMFIELD:QRTTL можно передать период в минутах, в течение которого будет возможна оплата по платёжной ссылке (QR-коду). Минимальное значение — одна минута, максимальное значение – 129600 (90 дней в минутах). Если поле CUSTOMFIELD:QRTTL не передано, за период использования динамической платёжной ссылки берётся значение 4320 минут (три дня).
Ответом на InvoiceRequest будет InvoiceResponse, в котором содержится:
    transactionId – номер операции;
    qrlink — ссылка на графическое отображение QR;
    qrpayload — платёжная ссылка СБП, закодированная в QR. Если разместить её в мобильном приложении или мобильной версии сайта, то при нажатии откроется установленное на телефоне приложение банка-участника СБП C2B с возможностью оплатить по данному коду.
    externaltransaction — идентификатор динамического QR-кода.
SOAP запрос:
1
<SOAP-ENV:Envelope xmlns:SOAP-ENV ="http://schemas.xmlsoap.org/soap/envelope/">
2
<SOAP-ENV:Header/>
3
<SOAP-ENV:Body>
4
<ns2:InvoiceRequest xmlns:ns2="http://www.moneta.ru/schemas/messages.xsd" ns2:version="VERSION_2">
5
<ns2:payer>364</ns2:payer>
6
<ns2:payee>10481430</ns2:payee>
7
<ns2:amount>100</ns2:amount>
8
<ns2:clientTransaction>12229</ns2:clientTransaction>
9
<ns2:description>Test</ns2:description>
10
<ns2:operationInfo>
11
<ns2:attribute>
12
<ns2:key>CUSTOMFIELD:QRTTL</ns2:key>
13
<ns2:value>11</ns2:value>
14
</ns2:attribute>
15
</ns2:operationInfo>
16
</ns2:InvoiceRequest>
17
</SOAP-ENV:Body>
18
</SOAP-ENV:Envelope>
Copied!
SOAP ответ:
1
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
2
<SOAP-ENV:Header/>
3
<SOAP-ENV:Body>
4
<ns2:InvoiceResponse xmlns:ns2="http://www.moneta.ru/schemas/messages.xsd">
5
<ns2:status>CREATED</ns2:status>
6
<ns2:dateTime>2021-03-30T11:38:45.000+03:00</ns2:dateTime>
7
<ns2:transaction>1001657743</ns2:transaction>
8
<ns2:clientTransaction>12229</ns2:clientTransaction>
9
<ns2:operationInfo>
10
<ns2:id>1001657743</ns2:id>
11
<ns2:attribute>
12
<ns2:key>targetcurrencycode</ns2:key>
13
<ns2:value>RUB</ns2:value>
14
</ns2:attribute>
15
<ns2:attribute>
16
<ns2:key>description</ns2:key>
17
<ns2:value>Test</ns2:value>
18
</ns2:attribute>
19
<ns2:attribute>
20
<ns2:key>typeid</ns2:key>
21
<ns2:value>3</ns2:value>
22
</ns2:attribute>
23
<ns2:attribute>
24
<ns2:key>sourceamount</ns2:key>
25
<ns2:value>100</ns2:value>
26
</ns2:attribute>
27
<ns2:attribute>
28
<ns2:key>targetalias</ns2:key>
29
<ns2:value>Система Быстрых Платежей C2B (СБП)</ns2:value>
30
</ns2:attribute>
31
<ns2:attribute>
32
<ns2:key>clienttransaction</ns2:key>
33
<ns2:value>12229</ns2:value>
34
</ns2:attribute>
35
<ns2:attribute>
36
<ns2:key>customfield:qrttl</ns2:key>
37
<ns2:value>11</ns2:value>
38
</ns2:attribute>
39
<ns2:attribute>
40
<ns2:key>qrpayload</ns2:key>
41
<ns2:value>https://qr.nspk.ru/AD100023V96ORJUR98CRVT2RR91R3UNA?type=02&amp;bank=100000000061&amp;sum=10000&amp;cur=RUB&amp;crc=D2E1</ns2:value>
42
</ns2:attribute>
43
<ns2:attribute>
44
<ns2:key>statusid</ns2:key>
45
<ns2:value>CREATED</ns2:value>
46
</ns2:attribute>
47
<ns2:attribute>
48
<ns2:key>qrlink</ns2:key>
49
<ns2:value>https://payanyway.ru/qrcode.htm?value=https%3A%2F%2Fqr.nspk.ru%2FAD100023V96ORJUR98CRVT2RR91R3UNA%3Ftype%3D02%26bank%3D100000000061%26sum%3D10000%26cur%3DRUB%26crc%3DD2E1&amp;w=256&amp;h=256</ns2:value>
50
</ns2:attribute>
51
<ns2:attribute>
52
<ns2:key>haschildren</ns2:key>
53
<ns2:value>0</ns2:value>
54
</ns2:attribute>
55
<ns2:attribute>
56
<ns2:key>modified</ns2:key>
57
<ns2:value>2021-03-30T11:38:45.000+03:00</ns2:value>
58
</ns2:attribute>
59
<ns2:attribute>
60
<ns2:key>targetaccountid</ns2:key>
61
<ns2:value>364</ns2:value>
62
</ns2:attribute>
63
<ns2:attribute>
64
<ns2:key>category</ns2:key>
65
<ns2:value>BUSINESS</ns2:value>
66
</ns2:attribute>
67
<ns2:attribute>
68
<ns2:key>externaltransaction</ns2:key>
69
<ns2:value>AD100023V96ORJUR98CRVT2RR91R3UNA</ns2:value>
70
</ns2:attribute>
71
<ns2:attribute>
72
<ns2:key>sourceamounttotal</ns2:key>
73
<ns2:value>100</ns2:value>
74
</ns2:attribute>
75
<ns2:attribute>
76
<ns2:key>sourcecurrencycode</ns2:key>
77
<ns2:value>RUB</ns2:value>
78
</ns2:attribute>
79
<ns2:attribute>
80
<ns2:key>isinvoice</ns2:key>
81
<ns2:value>1</ns2:value>
82
</ns2:attribute>
83
<ns2:attribute>
84
<ns2:key>sourceaccounttotal</ns2:key>
85
<ns2:value>100</ns2:value>
86
</ns2:attribute>
87
<ns2:attribute>
88
<ns2:key>sourceaccountid</ns2:key>
89
<ns2:value>10481430</ns2:value>
90
</ns2:attribute>
91
<ns2:attribute>
92
<ns2:key>isreversed</ns2:key>
93
<ns2:value>true</ns2:value>
94
</ns2:attribute>
95
</ns2:operationInfo>
96
</ns2:InvoiceResponse>
97
</SOAP-ENV:Body>
98
</SOAP-ENV:Envelope>
99
Copied!
JSON запрос:
1
{
2
"Envelope": {
3
"Header": {
4
"Security": {
5
"UsernameToken": {
6
"Username": "username",
7
"Password": "password"
8
}
9
}
10
},
11
"Body": {
12
"InvoiceRequest": {
13
"version": "VERSION_2",
14
"payer": "364",
15
"payee": "10481430",
16
"amount": "100",
17
"clientTransaction": "12229",
18
"description": "Test",
19
"operationInfo": {
20
"attribute": [
21
{
22
"key": "CUSTOMFIELD:QRTTL",
23
"value": "11"
24
}
25
]
26
}
27
}
28
}
29
}
30
}
31
Copied!
JSON ответ:
1
{
2
"Envelope":{
3
"Body":{
4
"InvoiceResponse":{
5
"dateTime":"2021-03-30T11:38:45.000+03:00",
6
"operationInfo":{
7
"id":1001657743,
8
"attribute":[
9
{
10
"value":"RUB",
11
"key":"targetcurrencycode"
12
},
13
{
14
"value":"Test",
15
"key":"description"
16
},
17
{
18
"value":"3",
19
"key":"typeid"
20
},
21
{
22
"value":"100",
23
"key":"sourceamount"
24
},
25
{
26
"value":"Система Быстрых Платежей C2B (СБП)",
27
"key":"targetalias"
28
},
29
{
30
"value":"12229",
31
"key":"clienttransaction"
32
},
33
{
34
"value": "11",
35
"key": "customfield:qrttl"
36
},
37
{
38
"value":"https:\/\/qr.nspk.ru\/AD100023V96ORJUR98CRVT2RR91R3UNA?type=02&bank=100000000061&sum=10000&acur=RUB&crc=D2E1",
39
"key":"qrpayload"
40
},
41
{
42
"value":"CREATED",
43
"key":"statusid"
44
},
45
{
46
"value":"https:\/\/payanyway.ru\/qrcode.htm?value=https%3A%2F%2Fqr.nspk.ru%2FAD100023V96ORJUR98CRVT2RR91R3UNA%3Ftype%3D02%26bank%3D100000000061%26sum%3D10000%26cur%3DRUB%26crc%3DD2E1&w=256&h=256",
47
"key":"qrlink"
48
},
49
{
50
"value":"0",
51
"key":"haschildren"
52
},
53
{
54
"value":"2021-03-30T11:38:45.000+03:00",
55
"key":"modified"
56
},
57
{
58
"value":"364",
59
"key":"targetaccountid"
60
},
61
{
62
"value":"BUSINESS",
63
"key":"category"
64
},
65
{
66
"value":"AD100023V96ORJUR98CRVT2RR91R3UNA",
67
"key":"externaltransaction"
68
},
69
{
70
"value":"100",
71
"key":"sourceamounttotal"
72
},
73
{
74
"value":"RUB",
75
"key":"sourcecurrencycode"
76
},
77
{
78
"value":"1",
79
"key":"isinvoice"
80
},
81
{
82
"value":"100",
83
"key":"sourceaccounttotal"
84
},
85
{
86
"value":"10481430",
87
"key":"sourceaccountid"
88
},
89
{
90
"value":"true",
91
"key":"isreversed"
92
}
93
]
94
},
95
"clientTransaction":"12229",
96
"transaction":1001657743,
97
"status":"CREATED"
98
}
99
}
100
}
101
}
Copied!
Для оплаты Invoice можно:
    1.
    2.
    Использовать qrlink для графического отображения QR — кода плательщику, например, на сайте получателя, и последующего сканирования устройством плательщика;
    3.
    Использовать qrpayload, например, в мобильной версии сайта или мобильном приложении получателя, чтобы плательщик мог проводить оплату с одного устройства (смартфона)
Last modified 6mo ago
Copy link