Promsvyazbank¶
Promsvyazbank (PSB) is a Russian bank. Its customers have a dedicated option — an account transfer within PSB: the payer sends money to the recipient's account in the same bank. PSB can also be the payer bank for any other method.
Send the name from the bank directory in bank_code — Промсвязьбанк
(case-insensitive). geo_code is RU (default), currency is RUB.
What is available¶
| Option | payment_method |
bank_code |
is_intrabank |
What the payer gets |
|---|---|---|---|---|
| Account transfer within PSB | account_transfer |
Промсвязьбанк |
true |
a PSB account number, sometimes a link into the PSB app |
| Account transfer from PSB to any bank | account_transfer |
Промсвязьбанк |
false |
an account number, see Account transfer |
| Card transfer within PSB | card_transfer |
Промсвязьбанк |
true |
a PSB card number, see Card payments |
| SBP or card from PSB | sbp, card_transfer |
Промсвязьбанк |
false |
a phone or card of any bank |
| Cross-border transfer from PSB | cross_border_sbp, cross_border_card |
Промсвязьбанк |
false |
a requisite in another country, see Cross-border transfer |
GET /api/v1/project/limits shows which of these your project has
enabled: look for a record with the same payment_method, is_intrabank and
bank_code: "Промсвязьбанк" — or bank_code: null, which applies to any bank. No record means
422 payment_not_covered; ask your manager to enable the option.
Account transfer within PSB¶
The payer is a PSB customer. They get the recipient's PSB account number and transfer within the bank from their app.
Create a payment¶
POST /api/v1/payments, signed the same way as for SBP.
{
"merchant_payment_id": "order-psb-1001",
"amount": "30000.00",
"payment_method": "account_transfer",
"bank_code": "Промсвязьбанк",
"is_intrabank": true
}
bank_code and is_intrabank: true go together: without bank_code the bank is unknown and
an intrabank transfer cannot be matched. Other fields:
SBP payments → Request fields.
Response¶
{
"id": "9c4e2f1a-6b7d-4c8e-a1f2-3b4c5d6e7f80",
"merchant_payment_id": "order-psb-1001",
"status": "processing",
"amount": 30000,
"initial_amount": 30000,
"currency": "RUB",
"geo_code": "RU",
"payment_method": "account_transfer",
"bank_code": "Промсвязьбанк",
"is_intrabank": true,
"requisite": "40817810000000000001",
"requisite_bank": "Промсвязьбанк",
"holder_name": "Иван С.",
"deeplink_url": "intent://...#Intent;scheme=...;end",
"created_at": "2026-10-14T09:30:00Z",
"updated_at": "2026-10-14T09:30:01Z"
}
requisiteis the recipient's PSB account number (20 digits);holder_nameandrequisite_bankare the recipient and bank the payer checks the transfer against;deeplink_urlis a link that opens the PSB app with the transfer. It is not always present: today it is issued mostly for Android. More fields may appear — ignore unknown ones.
Other response fields and the merchant_information calculation are as for SBP:
Response and merchant_information calculation.
What to show the payer¶
- Account number — the whole
requisitewith a "Copy" button. - Recipient and bank —
holder_nameandrequisite_bank. - "Open in the PSB app" button — only if
deeplink_urlis present. Open the link as is; do not change or build it yourself. Show the account number even when there is a link: if the app does not open, the payer transfers manually. - Amount — exactly
amount, in one transfer. - Deadline — a countdown from
created_atfor your project's payment lifetime (15 minutes by default).
For PSB customers only
Offer this option when the payer chose PSB. For a customer of another bank, create the
payment with their bank or without is_intrabank.
Statuses and result¶
As for account transfers: Statuses and Getting the result.
Common mistakes¶
422 bank_not_found— the bank name is not from the directory. SendПромсвязьбанк.422 payment_not_covered— the option is not in the contract (see What is available).422 payment_not_routable— no matching PSB account right now. Retry later with a new payment, or create one withoutis_intrabank.- No
deeplink_url— this is normal: show the account number.
See also¶
- Account transfer — the
account_transfermethod in full. - Payment methods — all methods and countries.
- Banks — the name directory for
bank_code.