Passer au contenu principal
POST
/
v3
/
gift-cards
/
placeOrder
Passer une Commande
curl --request POST \
  --url https://api.oneclickdz.com/v3/gift-cards/placeOrder \
  --header 'Content-Type: application/json' \
  --header 'X-Access-Token: <api-key>' \
  --data '
{
  "productId": "<string>",
  "typeId": "<string>",
  "quantity": 123
}
'

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

Créez des commandes pour des cartes cadeaux et des produits numériques. Les cartes sont livrées numériquement via l’endpoint /checkOrder.
Avant de commander : Vérifiez le stock via /checkProduct et vérifiez le solde du compte.

Corps de la requête

productId
string
requis
ID du produit depuis /catalog
typeId
string
requis
ID du type depuis /checkProduct
quantity
integer
requis
Nombre de cartes à commander (minimum : 1)

Exemples

curl https://api.oneclickdz.com/v3/gift-cards/placeOrder \
  -X POST \
  -H "Content-Type: application/json" \
  -H "X-Access-Token: YOUR_API_KEY" \
  -d '{
    "productId": "507f1f77bcf86cd799439011",
    "typeId": "type_001",
    "quantity": 2
  }'

Réponse de succès

{
  "success": true,
  "data": {
    "orderId": "6901616fe9e88196b4eb64b3"
  },
  "meta": {
    "timestamp": "2025-10-29T01:00:00.000Z"
  },
  "requestId": "req_1730163600_abc123"
}

Liste de vérification avant commande

1

Vérifier le stock

const product = await checkProduct(productId);
const type = product.types.find(t => t.id === typeId);
if (!type || type.quantity < quantity) {
  throw new Error('Insufficient stock');
}
2

Vérifier le solde

const balance = await getBalance();
const totalCost = type.price * quantity;
if (balance < totalCost) {
  throw new Error('Insufficient balance');
}
3

Passer la commande

const order = await placeOrder({ productId, typeId, quantity });
4

Interroger pour les cartes

const result = await pollOrder(order.orderId);

Réponses d’erreur

Paramètres de requête invalides
Produit en rupture de stock
Solde insuffisant

Traitement

Les commandes sont définitives une fois passées. Sauvegardez orderId immédiatement.
La plupart des commandes sont traitées en quelques secondes. Interrogez /checkOrder/:orderId toutes les 5 à 10 secondes jusqu’à ce que le statut soit FULFILLED ou REFUNDED.

Liens utiles

Vérifier la Commande

Obtenir les cartes lorsque livrées

Vérifier le Produit

Vérifier le stock au préalable