Skip to main content
Tüm isteklerde X-Tenant header’ı zorunludur. İşlemler yalnızca belirtilen tenant’a ait satışlar ile sınırlandırılmıştır.

Endpoint özeti

Tüm parametreler, alanlar ve örnek istek/yanıtlar için API Referansı sekmesine bakın.

Satış kavramı

Satış, bir müşteriye sunulan tedavi veya ürün kalemlerini, uygulanan iskontoları, KDV’yi ve ödeme durumunu bir arada tutan finansal kayıttır. Her satır kalemi (items) bir tedavi (Treatment) veya ürün (Product) olabilir.

İş kuralları

Hesaplanan alanlar: sub_total, total_discount, total_tax, total_price alanları sunucu tarafında hesaplanır. İstek gövdesinde gönderilseler dahi yok sayılır.
invoiced durumundaki satış: Satış invoiced statüsündeyse yalnızca notes alanı güncellenebilir; diğer alanlara yapılan güncelleme reddedilir.
items güncellemesi: PUT isteğinde items gönderilirse mevcut satır kalemleri tamamen silinip yeni gönderilen kalemlerle değiştirilir.
Ödeme varsa işlem: Satışta taksit veya ödeme kaydı mevcutsa PUT isteği updateOrCreateSaleTransaction() çağırmaz.

Ödeme ekleme (POST /sales/{id}/payments)

Satışa yeni bir ödeme/tahsilat kaydı ekler. Yanıt { sale_id, remaining_balance, transaction } yapısında döner.

Stok düşümü (POST /sales/{id}/stock-deduct)

Yalnızca manuel modda çalışır: Stok düşümü yalnızca tenant ayarlarında StockDeductionMode::Never seçiliyse kullanılabilir. Otomatik modda 422 döner.
Aşağıdaki durumlarda da 422 döner:
  • Satış cancelled statüsündeyse
  • Stok daha önce bu satış için zaten düşüldüyse
  • Satışta Product tipi kalem yoksa

Yetkilendirme

Uygulama izinleri (permissions)

Token scope’ları (Passport)