1. Payroll

URI

POST: /API/v1/ISO20022/Payroll

XML scheme

pain.008.001.05

Scheme description

R/O Description Link Comment

Absolute path Document.CstmrDrctDbtInitn.GrpHdr

1

R

Unique message ID

MsgId

2

R

Date and time the message was created

CreDtTm

Date format YYYY-MM-DDTHH:MM:SS

3

R

Number of individual transactions contained in the payroll

NbOfTxs

4

R

Total of all individual amounts included in the payroll

CtrlSum

5

R

Name of the company

InitgPty.Nm

6

R

TIN of the company

InitgPty.Id.OrgId.Othr[1].Id

7

R

ISO data type code for TIN

InitgPty.Id.OrgId.Othr[1].SchmeNm.Cd

Constant 'TXID'

8

R

Account number

InitgPty.Id.OrgId.Othr[2].Id

9

R

ISO code

InitgPty.Id.OrgId.Othr[2].SchmeNm.Cd

Constant "ACC"

Absolute path Document.CstmrDrctDbtInitn.PmtInf

10

R

Unique payroll ID

PmtInfId

11

R

PaymentMethod

PmtMtd

Constant "DD"

12

R

Registry number

NbOfTxs

max. length 11

13

R

Date of formation

ReqdColltnDt

14

R

Number of the payroll project contract

Cdtr.Nm

15

R

Type of enrollment

CdtrAcct.Id.Othr.Id

16

R

BIK of the bank indicated in the payroll project

CdtrAgt.FinInstnId.Nm

17

R

Line number in the payroll

DrctDbtTxInf.PmtId.InstrId

max. length 7

18

R

ID line in payroll

DrctDbtTxInf.PmtId.EndToEndId

19

R

Amount payable to employee

DrctDbtTxInf.InstdAmt

20

R

Numeric currency code

DrctDbtTxInf.InstdAmt@Ccy

At the moment, payroll are formed only in rubles (code - 643)

21

R

Payroll bank branch

DrctDbtTxInf.DbtrAgt.FinInstnId.Nm

It is possible to specify a constant '0000'.
A list of branch codes can be found on the page https://alfabank.ru/sme/salaryproject/
Section "Полезно знать", tab "Управление зарплатным проектом", subsection "Открытие счетов и выпуск зарплатных карт для сотрудников резидентов РФ", point 5 "Справочник отделений"
Download the XLS file, it contains a table "Отделение доставки карты", column - "Цифровой код"
XLS file is periodically updated, it is recommended to check for updates every six months
max. length 4

22

R

Branch of the bank salary project

DrctDbtTxInf.DbtrAgt.FinInstnId.Othr.Id

Constant '0000'. max. length 4

23

O

BIK of the bank where the account is opened, in case it differs from the bank of the salary project

DrctDbtTxInf.DbtrAgt.BrnchId.Id

24

R

Employee’s last name

DrctDbtTxInf.Dbtr.PstlAdr.Dept

max. length 30

25

R

Employee’s name

DrctDbtTxInf.Dbtr.PstlAdr.SubDept

max. length 30

26

O

Employee’s middle name

DrctDbtTxInf.Dbtr.PstlAdr.StrtNm

max. length 30

27

R

Employee account number

DrctDbtTxInf.DbtrAcct.Id.Othr.Id

Answer

The response is an XML document corresponding to the scheme pain. 002.001.06.

Response code table:

HTTP code Type Body Comment

200

OK

-

Request was accepted without errors.

401

Err

Wrong username or password

401

Err

User was not found

403

Err

User is disabled

401

Err

Signer is not allowed to sign this operation type

500

Err

Warrant service error

403

Err

User does not have permission

406

Err

Signature is missing

403

Err

Certificate is not valid

403

Err

Signer’s warrant is expired

403

Err

Signer’s warrant is disabled

403

Err

Number of signatures is not enough for this operation type

403

Err

Certificate is disabled

403

Err

The signer certificate is not valid (revoked or not active)

406

Err

Signature value is not valid

406

Err

Internal sign check state error

502

Err

Bad Gateway

503

Err

Service Unavailable

504

Err

Gateway Timeout

500

Err

Internal Error

409

Err

MsgId is not unique

400

Err

XML does not match schema

Example payroll
<?xml version="1.0" encoding="utf-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.008.001.05" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <CstmrDrctDbtInitn>
    <GrpHdr>
      <MsgId>7421w6f13a01983593e8dffb71fa6d15</MsgId> <!-- Unique message ID -->
      <CreDtTm>2022-03-30T12:00:00+03:00</CreDtTm> <!-- Date and time the message was created -->
      <NbOfTxs>2</NbOfTxs> <!--Number of individual transactions contained in the payroll-->
      <CtrlSum>200.00</CtrlSum> <!--Total of all individual amounts included in the payroll-->
      <InitgPty>
        <Nm>Общество с ограниченной ответственностью "Тест Альфа-Линк ЗУП"</Nm> <!-- Name of the company -->
        <Id>
          <OrgId>
            <Othr>
              <Id>0664010623</Id> <!-- TIN of the company -->
              <SchmeNm>
                <Cd>TXID</Cd>
              </SchmeNm>
            </Othr>
            <Othr>
              <Id>40702810800000000111</Id> <!-- Account number -->
              <SchmeNm>
                <Cd>ACC</Cd>
              </SchmeNm>
            </Othr>
          </OrgId>
        </Id>
      </InitgPty>
    </GrpHdr>
    <PmtInf>
      <PmtInfId>7421w6f13a01983593e8dffb71fa6d15</PmtInfId> <!-- Unique payroll ID -->
      <PmtMtd>DD</PmtMtd> <!-- Constant -->
      <NbOfTxs>1</NbOfTxs> <!-- Registry number -->
      <ReqdColltnDt>2022-03-30</ReqdColltnDt> <!-- Date of formation -->
      <Cdtr>
        <Nm>00753Z</Nm> <!-- Number of the payroll project contract -->
      </Cdtr>
      <CdtrAcct>
        <Id>
          <Othr>
            <Id>01</Id> <!-- Type of enrollment -->
          </Othr>
        </Id>
      </CdtrAcct>
      <CdtrAgt>
        <FinInstnId>
          <Nm>044525593</Nm> <!-- BIK of the bank indicated in the payroll project -->
        </FinInstnId>
      </CdtrAgt>
      <DrctDbtTxInf>
        <PmtId>
          <InstrId>1</InstrId>  <!-- Line number in the payroll -->
          <EndToEndId>7421w6f13a01983593e8dffb71fa6d15</EndToEndId> <!-- ID line in payroll -->
        </PmtId>
        <InstdAmt Ccy="RUB">100.00</InstdAmt> <!-- Amount payable to employee + Numeric currency code -->
        <DbtrAgt>
          <FinInstnId>
            <Nm>0000</Nm> <!-- Payroll bank branch -->
            <Othr>
              <Id>0000</Id> <!-- Branch of the bank salary project -->
            </Othr>
          </FinInstnId>
        </DbtrAgt>
        <Dbtr>
          <PstlAdr>
            <!-- Employee's last name -->
            <Dept>Матросова</Dept>
            <!-- Employee's first name -->
            <SubDept>Алина</SubDept>
            <!-- Employee's middle name -->
            <StrtNm>Николаевна</StrtNm>
          </PstlAdr>
        </Dbtr>
        <DbtrAcct>
          <Id>
            <Othr>
              <Id>40817810904980000006</Id> <!-- Employee account number -->
            </Othr>
          </Id>
        </DbtrAcct>
      </DrctDbtTxInf>
      <DrctDbtTxInf>
        <PmtId>
          <InstrId>2</InstrId>  <!-- Line number in the payroll -->
          <EndToEndId>7421w6f13a01983593e8dffb71fa6d16</EndToEndId> <!-- ID line in payroll -->
        </PmtId>
        <InstdAmt Ccy="RUB">100.00</InstdAmt> <!-- Amount payable to employee + Numeric currency code -->
        <DbtrAgt>
          <FinInstnId>
            <Nm>0000</Nm> <!-- Payroll bank branch -->
            <Othr>
              <Id>0000</Id> <!-- Branch of the bank salary project -->
            </Othr>
          </FinInstnId>
        </DbtrAgt>
        <Dbtr>
           <PstlAdr>
            <!-- Employee's last name -->
            <Dept>Печкин</Dept>
            <!-- Employee's first name -->
            <SubDept>Евгений</SubDept>
            <!-- Employee's middle name -->
            <StrtNm>Алексеевич</StrtNm>
          </PstlAdr>
        </Dbtr>
        <DbtrAcct>
          <Id>
            <Othr>
              <Id>40817810504980000011</Id> <!-- Employee account number -->
            </Othr>
          </Id>
        </DbtrAcct>
      </DrctDbtTxInf>
    </PmtInf>
    <SplmtryData>
      <Envlp>
        <SgntrSt>
        </SgntrSt>
      </Envlp>
    </SplmtryData>
  </CstmrDrctDbtInitn>
</Document>