A payment initiation é o objeto central do Sweeping Accounts. Ela define as regras do consentimento recorrente: quem é o recebedor, quais os limites de valor por transação e por período, e qual o teto total autorizado. Após criada, retorna uma authorizationUrl para onde o usuário deve ser redirecionado para aprovar o consentimento na detentora de conta.
Criar Payment Initiation
POST /v1/open/itp/sweeping-accounts/payment-initiation
Cria uma nova payment initiation de Sweeping Accounts.
Autenticação: Bearer Token (application_token)
Request
POST /v1/open/itp/sweeping-accounts/payment-initiation
Authorization: Bearer {{application_token}}
Content-Type: application/json
ID da payment initiation. Usar como paymentInitiationId nas chamadas subsequentes
authorizationUrl
string
URL para onde o usuário deve ser redirecionado para aprovar o consentimento
status
string
Status inicial: PENDING
createdAt
string
Data/hora de criação (ISO 8601)
Códigos de Retorno
HTTP
Descrição
200 OK / 201 Created
Payment initiation criada com sucesso
400 Bad Request
Parâmetros inválidos ou ausentes
401 Unauthorized
Token inválido ou expirado
422 Unprocessable Entity
Regras de negócio violadas (ex: CPF divergente, limites incoerentes)
Pontos de Atenção
⚠️
Identidade do creditor: O cpfCnpj do creditor deve ser idêntico ao loggedUser.document.identification. O Sweeping Accounts é exclusivamente para transferências entre contas do mesmo titular. Divergências causam rejeição imediata.
⚠️
Coerência dos limites periódicos: Os valores de transactionLimit devem respeitar a hierarquia: day ≤ week ≤ month ≤ year. O mesmo vale para quantityLimit. Limites inconsistentes resultam em erro 422.
⚠️
totalAllowedAmount: Este é o teto absoluto do consentimento. Quando a soma de todos os pagamentos executados atingir esse valor, o consentimento expira automaticamente. Planeje esse valor com cuidado para não interromper o fluxo do cliente antes do esperado.
⚠️
redirectUrl: A URL de callback deve estar pré-registrada e acessível. Em sandbox, pode-se usar http://localhost:8080/callback. Em produção, utilize um domínio válido com HTTPS.
⚠️
startDateTime: A vigência do consentimento começa nesta data. Transações de pagamento só podem ser executadas após esta data. Use sempre UTC (sufixo Z).
⚠️
Guarde o id retornado: O paymentInitiationId é necessário para todas as operações subsequentes: consulta, execução de pagamentos e cancelamento.