Endpoint: GET /uniconta/seller/{account_id}/virtualaccounts/{id}/
Autenticação: obrigatória — JWT via Authorization: Bearer <access_token>. O usuário precisa ter acesso à account_id ou ser superusuário.
Retorna o detalhe da conta virtual. O payload inclui o balance em tempo real (centavos de BRL), calculado como:
balance = SOMA(entradas IN com status PAID) − SOMA(saídas OUT com status PAID) − SOMA(saídas OUT com status WAITING_CONFIRMATION)

Auto-provisionamento

Se id == account_id, a chamada é interpretada como uma solicitação da conta virtual “principal” da sub-conta e dispara o provisionamento automático antes de serializar a resposta. Ou seja, um simples GET em …/virtualaccounts/{account_id}/ é suficiente para criar o registro caso ainda não exista, desde que a conta seja uma sub-conta. Para qualquer outro id, o registro precisa existir previamente.

Parâmetros de caminho

account_id
string (uuid)
required
Identificador unificado da conta do vendedor.
id
string (uuid)
required
Identificador da conta virtual. Use id == account_id para referenciar a conta virtual principal da sub-conta.

Resposta

id
string (uuid)
Identificador da conta virtual.
balance
integer
Saldo atual em centavos de BRL. 1000 significa R$ 10,00. Pode ser 0. Inclui entradas PAID menos saídas PAID e WAITING_CONFIRMATION.
created_at
string (datetime)
Timestamp ISO 8601.
updated_at
string (datetime)
Timestamp ISO 8601.
{
  "id": "9c2a1f3e-7d8b-4a1c-9f2e-0b6a5d4c1e10",
  "balance": 158400,
  "created_at": "2026-04-12T14:01:33-03:00",
  "updated_at": "2026-05-11T08:42:10-03:00"
}

Erros

StatusQuando
401Cabeçalho Authorization ausente ou inválido.
403O usuário não tem acesso à account_id.
404A conta virtual não existe (e id != account_id, portanto não é auto-provisionada).
400Auto-provisionamento solicitado para uma conta que não é sub-conta.

Exemplos

curl https://api.dlpay.cloud/uniconta/seller/9c2a1f3e-7d8b-4a1c-9f2e-0b6a5d4c1e10/virtualaccounts/9c2a1f3e-7d8b-4a1c-9f2e-0b6a5d4c1e10/ \
  -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJh..."