Този документ засега е само на турски.

İndirimler

Kampanya ve kupon kodlarını Admin API ile yönet: yüzde, tutar, ücretsiz kargo, X al Y öde ve kademeli indirim. Doğrulama kuralları panelle aynıdır.

Uçlar

Yöntem ve adres Kapsam Ne yapar
GET /discounts discounts.read En yeniden listeler
GET /discounts/{id} discounts.read Tek kampanya
POST /discounts discounts.write Ekler, 201 döner
PUT /discounts/{id} discounts.write Tam kayıtla günceller
DELETE /discounts/{id} discounts.write Siler, 204 döner

PUT tam kayıt ister: kampanya kuralları birbirine bağlıdır, kısmi değişiklik yanlış kampanya üretebilir. Önce GET ile oku, değiştir, tamamını gönder.

Kupon oluşturma

bash
curl -X POST "https://piyodo.com/api/store/v1/discounts" \
  -H "Authorization: Bearer psk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Kış indirimi",
    "code": "KIS20",
    "type": "percent",
    "value": 20,
    "applies_to": "all",
    "min_subtotal": "500.00",
    "ends_at": "2026-12-31",
    "usage_limit": 100,
    "per_customer_limit": 1
  }'

Türler

type Ne yapar Gerekli alanlar
percent Yüzde indirim value: 1 ile 100 arası tam sayı
amount Tutar indirimi value: ana birimde tutar
free_shipping Ücretsiz kargo
bxgy X al Y öde buy_qty (varsayılan 2), get_qty (varsayılan 1), en çok 20
tiered Sepet tutarına göre kademeli yüzde tiers: [{"min": "500.00", "percent": 10}], en çok 10 kademe

Alanlar

Alan Not
name Zorunlu, en çok 80 karakter
type Zorunlu
applies_to Zorunlu: all, collection, products
target_ids collection ya da products için kimlikler, en çok 200
code Harf, rakam, -, _; en çok 32. Büyük harfe çevrilir, mağazada benzersizdir. Boşsa kampanya kendiliğinden uygulanır
coupon_only true ise yalnız kuponla geçerli
min_subtotal En düşük sepet tutarı
starts_at, ends_at Başlangıç ve bitiş tarihi
usage_limit Toplam kullanım sınırı
per_customer_limit Müşteri başına sınır, en çok 1000
customer_group_ids Yalnız bu müşteri gruplarına
combinable Diğer kampanyalarla birleşebilir mi, varsayılan true
is_active Varsayılan true

Yanıt

json
{
  "data": {
    "id": "01J...",
    "name": "Kış indirimi",
    "code": "KIS20",
    "type": "percent",
    "live": true,
    "is_active": true,
    "value": 20,
    "min_subtotal": "500.00",
    "applies_to": "all",
    "target_ids": [],
    "buy_qty": null,
    "get_qty": null,
    "tiers": [],
    "customer_group_ids": [],
    "per_customer_limit": 1,
    "combinable": true,
    "coupon_only": false,
    "usage_limit": 100,
    "used_count": 0,
    "starts_at": null,
    "ends_at": "2026-12-31T00:00:00+00:00",
    "created_at": "2026-11-05T10:00:00+00:00",
    "updated_at": "2026-11-05T10:00:00+00:00"
  }
}

value yüzdede tam sayı, tutarda ondalık metin ("50.00"), diğer türlerde null döner. live şu an geçerli olup olmadığını söyler: açık mı, tarih aralığında mı, kullanım sınırı dolmamış mı.