Documentation

Transaction

CompteAuthentification requise

Abonnez-vous aux notifications d’achat et de vente de contrats, de dépôts et de retraits. Le paramètre loginid et certains champs de contrat sont supprimés, symbol est renommé en underlying_symbol, et action a moins de valeurs.

Comparaison rapide

AspectLegacy APINew APIAction
Point de terminaisontransactiontransactionAucun
Authentification requiseOuiOuiAucun
loginid paramètreFacultatifSuppriméRetirer des requêtes
Champ de symbolesymbolunderlying_symbolRenommez dans votre code
Champs barrierbarrier, high_barrier, low_barrierSuppriméCessez de lire les champs de barrière
display_nameRenvoyéSuppriméNe lisez plus display_name
Champs d’ordre limitestop_loss, stop_out, take_profitSuppriméCessez de lire ces champs
action valeurs8 valeurs4 valeursGérer moins de valeurs

Modifications majeures

1. loginid paramètre supprimé

Dans l’API Legacy, loginid sélectionnait le compte lorsque vous autorisiez plusieurs comptes. La nouvelle API ne l’accepte pas.

Modification requise : Supprimez loginid de vos requêtes transaction . Votre token sélectionne le compte.

2. symbol renommé en underlying_symbol

L’objet transaction renvoie le symbole sous le nom underlying_symbol au lieu de symbol.

Modification requise : Lisez underlying_symbol au lieu de symbol.

3. Champs barrier supprimés

barrier, high_barrier et low_barrier ne sont plus renvoyés.

Modification requise : Obtenez les barrières depuis proposal_open_contract à la place.

4. display_name supprimé

Le display_name du symbole n’est plus renvoyé.

Modification requise : Obtenez le nom du symbole depuis active_symbols à la place.

5. stop_loss, stop_out et take_profit supprimés

stop_loss, stop_out et take_profit ne sont plus renvoyés.

Modification requise : Obtenez les ordres limites depuis proposal_open_contract à la place.

6. Moins de valeurs action

action est buy, sell, deposit ou withdrawal. La nouvelle API ne renvoie plus escrow, adjustment, virtual_credit ni transfer.

Modification requise : Mettez à jour le code qui gère les valeurs que la New API ne renvoie plus.

Structure de la demande

Legacy APIexemple de demande
{
  "transaction": 1,
  "subscribe": 1,
  "loginid": "CR123456",
  "req_id": 1
}
New APIexemple de demande
{
  "transaction": 1,
  "subscribe": 1,
  "req_id": 1
}

Structure de réponse

Legacy APIexemple de réponse
{
  "echo_req": {
    "transaction": 1,
    "subscribe": 1,
    "loginid": "CR123456",
    "req_id": 1
  },
  "msg_type": "transaction",
  "req_id": 1,
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  },
  "transaction": {
    "action": "buy",
    "amount": -10,
    "balance": 9990,
    "contract_id": 11542203588,
    "currency": "USD",
    "date_expiry": 1760000300,
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3",
    "longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
    "purchase_time": 1760000000,
    "transaction_id": 11542203587,
    "transaction_time": 1760000000,
    "barrier": "S0P",
    "display_name": "Volatility 100 Index",
    "stop_loss": null,
    "stop_out": null,
    "symbol": "R_100",
    "take_profit": null
  }
}
New APIexemple de réponse
{
  "echo_req": {
    "transaction": 1,
    "subscribe": 1,
    "req_id": 1
  },
  "msg_type": "transaction",
  "req_id": 1,
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  },
  "transaction": {
    "action": "buy",
    "amount": -10,
    "balance": 9990,
    "contract_id": 11542203588,
    "currency": "USD",
    "date_expiry": 1760000300,
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3",
    "longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
    "purchase_time": 1760000000,
    "transaction_id": 11542203587,
    "transaction_time": 1760000000,
    "underlying_symbol": "R_100"
  }
}

Exemples de code

function watchTransactions(loginId) {
  ws.send(JSON.stringify({ transaction: 1, subscribe: 1, loginid: loginId }));

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

    const tx = response.transaction;
    console.log(tx.action, tx.amount, tx.symbol, tx.display_name, tx.barrier);
  };
}
Click to open live chat support. Get instant help from our support team.