O consentimento recorrente é o objeto central do Pix Automático. Ele define as regras de toda a série de pagamentos futuros: quem é o recebedor, a periodicidade, os limites de valor e a vigência. Após criado, retorna uma authorizationUrl para que o usuário autorize a cobrança recorrente na sua instituição detentora.
Cada consentimento corresponde a uma série de pagamentos recorrentes (e não a um único pagamento como no Pix Instantâneo).
Criar Consentimento
POST /baas/v1/open/itp/automatic-payments/payment-initiation
Autenticação: Bearer Token (application_token)
Request
POST {{base_url}}/baas/v1/open/itp/automatic-payments/payment-initiation
Authorization: Bearer {{application_token}}
Content-Type: application/json
ID da payment initiation — usar como itp_payment_id nas chamadas subsequentes
authorizationUrl
string
URL para onde o usuário deve ser redirecionado para autorizar o consentimento
paymentInitiationApi
string
Sempre AUTOMATIC_PAYMENTS_V2 para este produto
ofConsent.consentId
string
URN do consentimento recorrente na detentora
ofConsent.status
string
Status inicial: AWAITING_AUTHORISATION
Códigos de Retorno
HTTP
Descrição
200 OK
Consentimento criado com sucesso
400 Bad Request
Parâmetros ausentes ou malformados
401 Unauthorized
Token inválido ou expirado
422 Unprocessable Entity
Data inválida, conflito entre campos de valor, brandId inativo
Pontos de Atenção
⚠️
startDateTime e referenceStartDate — regra D+2: Ambas as datas devem ser pelo menos 2 dias úteis após a criação do consentimento. Datas no mesmo dia ou D+1 são rejeitadas com 422. Gere sempre essas datas dinamicamente.
⚠️
fixedAmount vs. variável: São mutuamente exclusivos. Nunca envie fixedAmount junto com minimumVariableAmount ou maximumVariableAmount no mesmo request.
⚠️
isRetryAccepted: false: Desabilita completamente as retentativas automáticas. Se o pagamento falhar, nenhuma nova tentativa será realizada pela detentora. Use true para habilitar o fluxo de tentativas intradia e extradia.
⚠️
contractId: É o identificador do contrato do ponto de vista do recebedor. Deve ser único por relação recebedor-pagador. Contratos duplicados para o mesmo par podem causar conflito no consentimento.
⚠️
contractDebtor ≠ loggedUser: O devedor do contrato pode ser uma empresa diferente do usuário pagador autenticado. Esse cenário é comum em cobranças B2B onde a empresa paga por um serviço, mas quem autoriza na detentora é um funcionário com acesso.
⚠️
Guarde o id retornado: O id da payment initiation é necessário para executar pagamentos (/payments), consultar e cancelar o consentimento.