Documentación
Endpoints de cuenta

Saldo

CuentaRequiere autenticación

Obtenga el saldo actual de la cuenta y, opcionalmente, suscríbase a las actualizaciones de saldo en tiempo real. La nueva API devuelve solo el saldo de la cuenta que selecciona su token.

Comparación rápida

AspectoLegacy APINew APIAcción
EndpointbalancebalanceNinguno
Requiere autenticaciónSíSíNinguno
account parámetroOpcionalEliminadoEliminar de las solicitudes
loginid parámetroOpcionalEliminadoEliminar de las solicitudes
accounts en la respuestaSe devuelve cuando account es allEliminadoSolicite cada cuenta por separado
total en la respuestaSe devuelve cuando account es allEliminadoSume los saldos usted mismo

Cambios importantes

1. account parámetro eliminado

En la API heredada, account eligió qué saldo devolver: current, all o un ID de inicio de sesión específico. La New API no lo acepta y devuelve el saldo de la cuenta que selecciona su token.

Cambio obligatorio: Elimine account de sus solicitudes de balance .

2. loginid parámetro eliminado

En la API heredada, loginid seleccionaba la cuenta cuando autorizaba varias cuentas. La nueva API no lo acepta.

Cambio obligatorio: Elimine loginid de sus solicitudes de balance . Su token selecciona la cuenta.

3. accounts eliminado de la respuesta

La Legacy API devolvía un objeto accounts con el saldo, la moneda, el estado y el tipo de cada cuenta cuando enviaba account configurado en all. La New API no lo devuelve.

Cambio obligatorio: Solicite el saldo de cada cuenta con el token de esa cuenta.

4. total eliminado de la respuesta

La API Legacy devolvía un objeto total con los saldos sumados de Deriv y las cuentas reales y demo de MT5. La API New no lo devuelve.

Cambio obligatorio: Sume los saldos de sus cuentas si necesita un total.

Estructura de solicitud

Legacy APIejemplo de solicitud
{
  "balance": 1,
  "account": "all",
  "loginid": "CR123456",
  "subscribe": 1,
  "req_id": 1
}
New APIejemplo de solicitud
{
  "balance": 1,
  "subscribe": 1,
  "req_id": 1
}

Estructura de respuesta

Legacy APIejemplo de respuesta
{
  "balance": {
    "accounts": {
      "CR123456": {
        "balance": 10000.5,
        "converted_amount": 10000.5,
        "currency": "USD",
        "demo_account": 0,
        "status": 1,
        "type": "deriv"
      }
    },
    "balance": 10000.5,
    "currency": "USD",
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3",
    "loginid": "CR123456",
    "total": {
      "deriv": {
        "amount": 10000.5,
        "currency": "USD"
      }
    }
  },
  "echo_req": {
    "balance": 1,
    "account": "all",
    "loginid": "CR123456",
    "subscribe": 1,
    "req_id": 1
  },
  "msg_type": "balance",
  "req_id": 1,
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  }
}
New APIejemplo de respuesta
{
  "balance": {
    "balance": 10000.5,
    "currency": "USD",
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3",
    "loginid": "CR123456"
  },
  "echo_req": {
    "balance": 1,
    "subscribe": 1,
    "req_id": 1
  },
  "msg_type": "balance",
  "req_id": 1,
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  }
}

Ejemplos de código

function getBalances(loginId) {
  ws.send(JSON.stringify({ balance: 1, account: "all", loginid: loginId, subscribe: 1 }));

  ws.onmessage = (event) => {
    const response = JSON.parse(event.data);
    if (response.msg_type !== "balance" || !response.balance) return;

    console.log("Balance:", response.balance.balance, response.balance.currency);
    const accounts = response.balance.accounts ?? {};
    Object.keys(accounts).forEach((id) => {
      console.log("Account " + id + ": " + accounts[id].balance);
    });
  };
}
Click to open live chat support. Get instant help from our support team.