Sweeping Accounts - Execução de Pagamento Pix

Visão Geral

Com o consentimento no status AUTHORISED, a ITP pode executar pagamentos Pix sem nova autenticação do usuário, desde que respeite os limites definidos no consentimento (por transação, por período e o total acumulado).

Cada chamada a este endpoint representa uma transferência Pix individual. O histórico de pagamentos fica vinculado ao paymentInitiationId.


Executar Pagamento Pix

POST /baas/v1/open/itp/sweeping-accounts/payment-initiation/:paymentInitiationId/payments

Autenticação: Bearer Token (application_token)

Path Parameters

ParâmetroTipoObrigatórioDescrição
paymentInitiationIdstringID da payment initiation obtido na criação

Request

POST /baas/v1/open/itp/sweeping-accounts/payment-initiation/{{payment_initiation_id}}/payments
Authorization: Bearer {{application_token}}
Content-Type: application/json
{
  "data": {
    "date": "2026-02-18",
    "localInstrument": "MANU",
    "remittanceInformation": "Transferência inteligente - saldo",
    "document": {
      "identification": "12345678909",
      "rel": "CPF"
    },
    "cnpjInitiator": "13935893000109",
    "payment": {
      "amount": "0.01",
      "currency": "BRL"
    },
    "endToEndId": "E13935893202602180000AbCdEfGhIjK",
    "creditorAccount": {
      "ispb": "12345678",
      "issuer": "1774",
      "number": "1234567890",
      "accountType": "CACC"
    },
    "riskSignals": {
      "automatic": {
        "lastLoginDateTime": "2026-02-13T00:00:00Z"
      }
    }
  }
}

Campos do Request

data

CampoTipoObrigatórioDescrição
datestringData de liquidação do pagamento (formato YYYY-MM-DD)
localInstrumentstringModalidade de iniciação Pix. Ver tabela abaixo
remittanceInformationstringDescrição/motivo da transferência (até 140 caracteres)
cnpjInitiatorstringCNPJ da instituição iniciadora de transação de pagamento
endToEndIdstringIdentificador end-to-end do Pix. Ver formato abaixo

data.document

CampoTipoObrigatórioDescrição
identificationstringCPF do usuário pagador (somente números)
relstringTipo: CPF

data.payment

CampoTipoObrigatórioDescrição
amountstringValor do pagamento em BRL (duas casas decimais, ex: "100.00")
currencystringMoeda. Fixo: BRL

data.creditorAccount

CampoTipoObrigatórioDescrição
ispbstringISPB da instituição recebedora (8 dígitos, sem separadores)
issuerstringNúmero da agência do recebedor
numberstringNúmero da conta do recebedor
accountTypestringTipo de conta: CACC (corrente), SVGS (poupança), SLRY (salário), TRAN (pagamento)

data.riskSignals.automatic

CampoTipoObrigatórioDescrição
lastLoginDateTimestringData e hora do último login do usuário na plataforma da ITP (ISO 8601 UTC). Obrigatório para pagamentos automáticos

Formato do endToEndId

O endToEndId identifica unicamente a transação Pix e deve seguir o padrão:

E{ISPB_iniciadora}{YYYYMMDD}{HHMM}{11_chars_aleatorios}

Exemplo: E13935893202602180000AbCdEfGhIjK

ComponenteTamanhoDescrição
E1Prefixo fixo
ISPB8ISPB da instituição iniciadora (sem separadores)
YYYYMMDD8Data da transação
HHMM4Hora e minuto da transação (0000 para pagamentos agendados)
Aleatório11Sufixo alfanumérico único

Total: 32 caracteres.


Modalidades de Iniciação (localInstrument)

ValorDescrição
MANUInformação manual da conta (sem chave Pix)
DICTChave Pix (CPF, CNPJ, e-mail, telefone ou chave aleatória)
QRDNQR Code dinâmico
QRESQR Code estático
INICIniciação pela ITP

Response

{
  "data": {
    "paymentId": "pmt-abc123def456",
    "endToEndId": "E13935893202602180000AbCdEfGhIjK",
    "status": "PDNG",
    "amount": "0.01",
    "currency": "BRL",
    "date": "2026-02-18",
    "createdAt": "2026-02-18T10:00:00Z"
  }
}
CampoTipoDescrição
data.paymentIdstringID único do pagamento gerado
data.endToEndIdstringEndToEndId confirmado
data.statusstringStatus inicial: PDNG (pendente de liquidação)
data.amountstringValor confirmado
data.createdAtstringData/hora de criação (ISO 8601)

Códigos de Retorno

HTTPDescrição
200 OK / 201 CreatedPagamento criado e enviado para liquidação
400 Bad RequestParâmetros obrigatórios ausentes ou formato inválido
401 UnauthorizedToken inválido ou expirado
422 Unprocessable EntityDivergência com o consentimento, limite excedido ou consentimento não ativo

Pontos de Atenção

⚠️

amount vs. limites do consentimento: O valor informado em data.payment.amount deve ser menor ou igual ao transactionLimit definido no consentimento. Valores acima causam 422 PAGAMENTO_DIVERGENTE_CONSENTIMENTO.

⚠️

Acumulação de limites periódicos: O sistema acumula o total de pagamentos realizados no dia/semana/mês/ano e rejeita pagamentos que ultrapassem os limites periódicos definidos no consentimento.

⚠️

totalAllowedAmount: Quando a soma de todos os pagamentos executados atingir o totalAllowedAmount do consentimento, o consentimento é automaticamente marcado como CONSUMED e nenhum pagamento adicional será aceito.

⚠️

endToEndId único: Cada transação Pix deve ter um endToEndId único. Reutilizar o mesmo ID em chamadas distintas causará erro de duplicidade.

⚠️

lastLoginDateTime: Este campo é obrigatório para pagamentos automáticos como sinal de risco. Deve refletir o último login real do usuário na plataforma da ITP. Não utilize datas fixas ou estáticas em produção.

⚠️

date e endToEndId sincronizados: A data no endToEndId deve corresponder à date do pagamento. Divergências podem causar rejeição pelo arranjo Pix.

⚠️

Liquidação assíncrona: O pagamento é processado de forma assíncrona. O status inicial PDNG indica que o pagamento foi aceito para processamento, mas a liquidação efetiva ocorre em seguida. Utilize polling ou webhooks para acompanhar o status final (ACSC, RJCT).

⚠️

Sandbox: Em ambiente sandbox Bricks Demo, é esperado receber 422 PAGAMENTO_DIVERGENTE_CONSENTIMENTO. Isso é uma limitação do ambiente de testes e não representa erro de implementação.