In this section, we provide operations to make payments and follow up their completion.

Payment - Check

This functionality allows checking payments made in a period and displays the status and other payment data.

We request the fields:

CampoDescriptionFormatMandatory
InicioStart of desired search perioddate-timeYes
FimEnd of desired search perioddate-timeYes
StatusPayment status that is desiredstringNo
TipoType of payment initiation, which can be: CHAVE_DICT (DICT KEY), MANUAL or QR_CODEstringNo

Response:

CampoDescriptionFormatNullablle
pagamentoIdPayment identifierstringNo
endToEndIdPix transaction identifierstringYes
dataHoraCriacaoPayment initiation date and timedate-timeNo
pagadorPix transaction payer data (bank, branch, account, document)objectYes
recebedorPix transaction receiver data (bank, branch, account, document)objectYes
informacoesEntreUsuariosInformation included by the payer, if desired, at the time of paymentstringYes
statusTransaction status, see table [Payment Status]stringNo
valorPix transaction amountnumber No

Pagamento - Consultar

Payment - Check - Payment Id - PagamentoId

This functionality allows checking a specific payment using the internal identification of the payment in question and displays status and other payment data.

We request the fields:

FieldDescriptionFormatMandatory
pagamentoIdPayment identifierstringYes

Response:

FieldDescriptionFormatNullablle
endToEndIdPix transaction identifierstringYes
statusTransaction status, see table [Payment Status]stringNo
qrCodeQR CODE data (category, currency, country, city and txId)objectYes
cobrancaCollection data (Id, payer, due date, amount, key, etc.)objectYes
recebedorPix transaction receiver dataobjectYes
valorPix transaction amountnumber Yes
numeroContaPagadorAccount number used in payment validationstringYes

Pagamento - Consultar - PagamentoId

Payment - Start - QrCodes

This functionality validates the properties of a QR Code. Upon successful initiation, it will be possible to confirm payment in the operation Pagamento - Confirmar.

As a prerequisite, the QR Code cannot have been generated by the client's own account.

We request the fields:

FieldDescriptionFormatMandatory
qrCodeData obtained by reading the QR Code or also known as the "Copy & Paste" codestringYes

Response:

FieldDescriptionFormatNullablle
pagamentoIdPayment identifierstringNo
endToEndIdPix transaction identifierstringYes
pagadorPix payer data (bank, branch, account, document)objectYes
recebedorPix receiver data (bank, branch, account, document)objectYes
valorPix transaction amountnumber Yes
tipoType of QR CODE, whether "Static" or "Dynamic"stringNo
cobrancaCollection data (Id, payer, validity date, amount, key, etc.)objectYes
txIdIdentifier provided by the client that identifies the transactionstringYes

Pagamento - Iniciar - QrCodes

Payment - Start - Keys

This functionality validates a PIX key in the DICT* and, if agreed, allows payment to proceed. Upon successful initiation, it will be possible to confirm payment in the operation Pagamento - Confirmar.

As a prerequisite, the Pix key cannot be from the client's account.

We request the fields:

FieldDescriptionFormatMandatory
chaveReceiver's DICT key, see table [Types of keys]objectYes

Response:

FieldDescriptionFormatNullablle
pagamentoIdPayment identifierstringNo
endToEndIdPix transaction identifierstringYes
pagadorPix payer data (bank, branch, account, document)objectYes
recebedorPix receiver data (bank, branch, account, document)objectYes

*Directory of Transactional Account Identifiers

⚠️

Important:

The Central Bank regulates access to the DICT for key verification through request limitation policies.

Therefore, it is important to preserve the process of initiating payments via keys so that there is no conduct that appears to scan keys.

See more at Token Bucket.

Pagamento - Iniciar - Chaves

Payment - Start - Manual

This functionality validates the receiver's bank details. Upon successful initiation, it will be possible to confirm payment in the operation Pagamento - Confirmar.

We request the fields:

FieldDescriptionFormatMandatory
recebedorRequests data from the Pix receiver (bank, branch, account, document)objectYes

Response:

FieldDescriptionFormatNullablle
pagamentoIdPayment identifierstringNo
endToEndIdPix transaction identifierstringYes
pagadorPix payer data (bank, branch, account, document)objectYes
recebedorPix receiver data (bank, branch, account, document)objectYes

Pagamento - Iniciar - Manual

Payment - Confirm

This functionality confirms the payment initiated through manual initiation operations, by QR CODE or keys. If the request is successful, a "Payment" event webhook will be triggered.

We request the fields:

FieldDescriptionFormatMandatory
pagamentoIdPayment identifierstringYes
recebedorPix receiver data (bank, branch, account, document)objectYes
valorPayment amountnumber Yes
campoLivreMessage intended for the receiverstringNo
efetuarEmDate on which payment will be madedate-timeNo

Response: HTTP 202 accepted.

Pagamento - Confirmar

Pagamento - Solicitação de pagamento

This functionality performs validation and verification in the DICT of a list of Pix keys for payment. And, valid keys have payments automatically initiated and confirmed.

Operations can be consulted individually in the functionality Pagamento - Consultar solicitacao por SolicitacaoId.

We request the fields:

FieldDescriptionFormatMandatory
solicitacoesPix key and amount to payobjectYes

Response:

FieldDescriptionFormatNullablle
identificadorIndividualized identifier for each payment made in the requeststringNo
solicitacaoIdPayment request identificationstringYes
chavePix key dataobjectYes
valorPayment amountobjectYes

Pagamento - Iniciar pagamento por chave

Payment - Check request by Request id - SolicitacaoId

This functionality allows checking a specific payment by the payment request identification in question.

We request the field:

FieldDescriptionFormatMandatory
solicitacaoIdPayment request identifierstringNão

Response:

FieldDescriptionFormatNullable
solicitacaoIdRequest identifierstringNo
pagamentoIdPayment identifierstringNo
endToEndIdPix transaction identifierstringNo
statusPix transaction status, see table [Payment Status]stringNo
agenciaReceiver's branchstringNo
numeroReceiver's account numberstringNo
chaveReceiver's Pix KeystringNo
valorPix transaction amountstringNo
campoLivreMessage that the payer sends to the receiver, if desiredstringNo
rejeitadoDescricaoReason for rejection, in case of searching for rejected paymentsstringNo
erroDescricaoReason for error, in case of payment errorstringNo

Pagamento - Consultar solicitacao por SolicitacaoId

Payment status

The table below displays the statuses that payments may present:

FieldDescription
INICIADOPayment has been initiated, but has not yet been confirmed by the API consumer
CONFIRMADOConfirmation was successful and the payment request was sent to BACEN
EFETIVADOPayment was made successfully and the amount was debited from the account
REJEITADOThe payment counterparty rejected it. Reasons may vary from unavailability at the counterparty or receiver account closed/blocked
ERROAn error occurred during the payment flow
EXPIRADOThe time between initiation and payment confirmation exceeded 12 hours

Types of keys

Below is the table with the types of Pix keys and their formatting:

TypeRegular Exp.ExampleComment
CPF^[0-9]{11}$12345678901
CNPJ^[0-9]{14}$12345678901234
CNPJ^+[1-9][0-9]\d{1,14}$+5510998765432
EMAILE-mails válidos W3C HTML5 [email protected]Maximum 77 characters and in lowercase
EVP[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}123e4567-e89b-12d3-a456-426655440000Virtual Payment Address is a type of key by DICT