Autenticação: obrigatória — JWT via
Authorization: Bearer <access_token>. O usuário precisa ter acesso à account_id ou ser superusuário. Valores são sempre informados como inteiros em centavos de BRL, salvo indicação contrária.created_at) são definidos no momento do provisionamento e não podem ser alterados pelo usuário. As “mutações” disponíveis são ações de movimentação de dinheiro, cada uma gerando novos lançamentos em vez de alterar a própria conta virtual.
Endpoints de ação
POST …/virtualaccounts/{id}/deposit/
Gera um link de pagamento via PIX para reforço de saldo. Corpo: { "amount": <decimal>, "name": "<string>" }. Retorna { "id": "<online_sell_id>" }.
POST …/virtualaccounts/{id}/pay/
Solicita o pagamento de um boleto bancário. Corpo: bank_slip_code, target_date (YYYY-MM-DD), amount (centavos). Cria um lançamento de saída com status PLANNED e o registro de pagamento associado. Retorna os dados do pagamento.
POST …/virtualaccounts/{id}/transfer/
Solicita uma transferência. O corpo deve incluir transfer_type (TED, BETWEEN_ACCOUNTS ou PIX) e os campos correspondentes:
- TED —
receiver_name,receiver_tax_id,receiver_tax_id_type(PF/PJ),receiver_bank,receiver_agency,receiver_account,receiver_account_type(CHECKING_ACCOUNT/SAVINGS_ACCOUNT),amount,target_date. - BETWEEN_ACCOUNTS —
destination_account(UUID de outra conta virtual),amount. A operação é atômica: gera um lançamento de saídaPAIDna conta de origem e um lançamento de entradaPAIDna conta de destino, ambos vinculados à mesma transferência. - PIX —
receiver_name,receiver_tax_id,pix_key,pix_key_type(CPF,CNPJ,EMAIL,PHONE,RANDOM),amount,target_date.
GET …/virtualaccounts/{id}/known-transfer-destinations/
Retorna os 10 destinatários TED mais utilizados (status PAID) desta conta virtual, enriquecidos com usage_count e last_used_at. Útil para pré-preencher uma interface de “transferências recentes”.
Erros
| Status | Quando |
|---|---|
405 | PATCH/PUT/DELETE na URL de detalhe. Utilize os endpoints de ação acima. |
400 | Corpo da ação inválido (por exemplo, target_date ausente em uma TED, destination_account ausente em uma transferência entre contas, saldo insuficiente). |
403 | O usuário não tem acesso à account_id. |