Passer au contenu principal
GET
/
v3
/
account
/
balance
Obtenir le Solde du Compte
curl --request GET \
  --url https://api.oneclickdz.com/v3/account/balance \
  --header 'X-Access-Token: <api-key>'
{
  "success": true,
  "data": {
    "balance": 123
  },
  "meta": {
    "timestamp": "<string>"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.oneclickdz.com/llms.txt

Use this file to discover all available pages before exploring further.

Vue d’Ensemble

Obtenez votre solde de compte actuel en dinar algérien (DZD). Le solde représente les fonds disponibles pouvant être utilisés pour les recharges, les commandes et autres services.
Lorsque votre solde atteint un seuil bas, une notification sera envoyée à votre adresse e-mail enregistrée.

Réponse

success
boolean
requis
true pour les requêtes réussies
data
object
requis
meta
object

Exemple de Requête

curl --request GET \
  --url https://api.oneclickdz.com/v3/account/balance \
  --header 'X-Access-Token: YOUR_API_KEY'

Exemple de Réponse

{
  "success": true,
  "data": {
    "balance": 1326.13
  },
  "meta": {
    "timestamp": "2025-10-29T00:35:58.710Z"
  }
}

Cas d’Utilisation

Vérification Avant Transaction

Vérifiez les fonds suffisants avant de traiter des commandes

Affichage du Solde

Affichez le solde actuel dans l’interface utilisateur de votre application

Alertes de Solde Bas

Surveillez le solde et alertez en cas de niveau faible

Rapports Financiers

Suivez les variations du solde au fil du temps

Exemples d’Intégration

Validation Avant Transaction

async function canProcessTransaction(amount) {
  const response = await fetch(
    "https://api.oneclickdz.com/v3/account/balance",
    {
      headers: { "X-Access-Token": API_KEY },
    }
  );

  const data = await response.json();

  if (!data.success) {
    throw new Error("Failed to check balance");
  }

  const balance = data.data.balance;

  if (balance < amount) {
    throw new Error(
      `Insufficient balance. Required: ${amount} DZD, Available: ${balance} DZD`
    );
  }

  return true;
}

// Usage
try {
  await canProcessTransaction(500);
  // Proceed with transaction
} catch (error) {
  console.error(error.message);
  // Show error to user
}

Surveillance du Solde

class BalanceMonitor {
  constructor(apiKey, lowBalanceThreshold = 1000) {
    this.apiKey = apiKey;
    this.lowBalanceThreshold = lowBalanceThreshold;
    this.lastBalance = null;
  }

  async checkBalance() {
    const response = await fetch(
      "https://api.oneclickdz.com/v3/account/balance",
      {
        headers: { "X-Access-Token": this.apiKey },
      }
    );

    const data = await response.json();

    if (!data.success) {
      console.error("Failed to check balance:", data.error);
      return;
    }

    const currentBalance = data.data.balance;

    if (currentBalance < this.lowBalanceThreshold) {
      this.onLowBalance(currentBalance);
    }

    if (this.lastBalance !== null) {
      const change = currentBalance - this.lastBalance;
      if (Math.abs(change) > 100) {
        this.onBalanceChange(change, currentBalance);
      }
    }

    this.lastBalance = currentBalance;
    return currentBalance;
  }

  onLowBalance(balance) {
    console.warn(`⚠️ Low balance alert: ${balance} DZD`);
    this.sendNotification({
      type: "low_balance",
      balance: balance,
      threshold: this.lowBalanceThreshold,
    });
  }

  onBalanceChange(change, newBalance) {
    const changeType = change > 0 ? "increased" : "decreased";
    console.log(
      `Balance ${changeType} by ${Math.abs(change)} DZD. New balance: ${newBalance} DZD`
    );
  }

  sendNotification(data) {
    console.log("Notification:", data);
  }

  startMonitoring(intervalMinutes = 5) {
    this.checkBalance();
    setInterval(() => {
      this.checkBalance();
    }, intervalMinutes * 60 * 1000);
  }
}

// Usage
const monitor = new BalanceMonitor(API_KEY, 1000);
monitor.startMonitoring(5); // Check every 5 minutes

Bonnes Pratiques

Vérifiez toujours le solde suffisant avant d’initier des transactions
// ✅ Good
const balance = await getBalance();
if (balance >= requiredAmount) {
  await sendTopUp(...);
}

// ❌ Bad
await sendTopUp(...); // Might fail with NO_BALANCE error
Mettez en cache le solde pendant 30 à 60 secondes pour réduire les appels API
// Cache balance but invalidate after transactions
const balance = await balanceCache.getBalance();
await sendTopUp(...);
balanceCache.invalidateCache(); // Refresh after transaction
Implémentez une gestion des erreurs appropriée
async function getSafeBalance() {
  try {
    const response = await fetch('https://api.oneclickdz.com/v3/account/balance', {
      headers: { 'X-Access-Token': API_KEY }
    });
    
    const data = await response.json();
    
    if (!data.success) {
      console.error('Balance check failed:', data.error);
      return null;
    }
    
    return data.data.balance;
  } catch (error) {
    console.error('Network error:', error);
    return null;
  }
}
Configurer des alertes pour un solde bas
const LOW_BALANCE_THRESHOLD = 1000;

async function checkAndAlert() {
  const balance = await getBalance();
  
  if (balance < LOW_BALANCE_THRESHOLD) {
    await sendAlert({
      type: 'low_balance',
      balance: balance,
      message: `Balance is low: ${balance} DZD`
    });
  }
}

Réponses d’Erreur

{
  "success": false,
  "error": {
    "code": "INVALID_ACCESS_TOKEN",
    "message": "The provided access token is invalid"
  },
  "requestId": "req_abc123"
}
{
  "success": false,
  "error": {
    "code": "INTERNAL_SERVER_ERROR",
    "message": "Developer was notified and will check shortly"
  },
  "requestId": "req_abc123"
}

Endpoints Connexes

Liste des Transactions

Voir l’historique des transactions

Envoyer une Recharge Mobile

Envoyer une recharge mobile