Overview
Returns product types/denominations with real-time pricing and stock availability.
Prices are personalized to your account. Remove cost before showing to
users.
Path Parameters
Product ID from /catalog endpoint
Response
Array of product type/denomination objects
Type ID (use when placing orders)
Type/denomination name (e.g., “100 DA”, “1000 DA”)
Your price (includes discount)
Available stock (0 = out of stock)
Examples
curl https://api.oneclickdz.com/v3/gift-cards/checkProduct/507f1f77bcf86cd799439011 \
-H "X-Access-Token: YOUR_API_KEY"
Response Example
{
"success": true,
"data": {
"productId": "507f1f77bcf86cd799439011",
"productTitle": "PlayStation Network",
"types": [
{
"id": "type_001",
"name": "PSN 500 DA",
"price": 490,
"quantity": 150
},
{
"id": "type_002",
"name": "PSN 1000 DA",
"price": 980,
"quantity": 87
},
{
"id": "type_003",
"name": "PSN 2000 DA",
"price": 1960,
"quantity": 0
}
]
},
"meta": {
"timestamp": "2025-10-29T01:00:00.000Z"
},
"requestId": "req_1730163600_xyz789"
}
Apply Your Markup
function applyMarkup(types, markupPercent = 5) {
return types
.filter((t) => t.quantity > 0)
.map((t) => ({
id: t.id,
name: t.name,
price: Math.ceil(t.price * (1 + markupPercent / 100)),
available: true,
}));
}
// Usage
const customerPrices = applyMarkup(data.types, 5); // 5% markup
Best Practices
Check Stock
Verify quantity > 0 before displaying
Apply Markup
Add your profit margin to price
Hide Price
Never show wholesale price to customers
Update Regularly
Refresh stock periodically