Masa Ödemeleri — POST /plugin-api/tables/update-payments ⏳ Yakında

Dine-in masanın TÜM ödemelerini değiştirir — FULL REPLACE (packets/update-payments'ın masa karşılığı). Ödeme kuralları paket ucuyla birebir aynı: id'ler tenant'ın gerçek ödeme yöntemlerine karşı doğrulanır. Hiçbir uç masayı KAPATMAZ.

← API Uçları · Masa kalemleri: tables/update-orders · Paket karşılığı: packets/update-payments.

YAKINDA — henüz canlı değil. Sözleşme yayına hazır; uç runtime'a henüz deploy edilmedi (sandbox'ta 404). Yayınlanınca bu not kaldırılacak.

İstek

POST {RESTOMENUM_BASE}/plugin-api/tables/update-payments
Authorization: Bearer <apiKey>

{
  "tableId": "tbl-7a3f...",                       // ZORUNLU — açık masanın doc id'si
  "payments": [                                    // ZORUNLU — masanın YENİ ödeme listesi (FULL REPLACE)
    { "price": 268, "id": "cash", "title": "Nakit", "isDiscount": false }
  ]
}
  • Scope: orders:write · write rate-limit.
  • payments masanın tüm ödemelerini değiştirir. Satır: { price, id, title?, isDiscount? }.
  • tableId: açık masa doc id'si — tables/open'dan al.

Yanıt

{ "success": true, "data": { "tableId": "tbl-7a3f...", "paid": 268 } }

Ödeme yöntemi doğrulaması (packets ile birebir)

Kurallar packets/update-payments ile aynı. Önce payment-methods/list (payment_methods:read).

SatırKural
Normal (isDiscount yok/false)id tenant'ın yöntemi OLMALI. title/cash/noreport yöntem kaydından türetilir (gönderilen title yok sayılır).
İndirim (isDiscount:true)Doğrulamadan muaf (serbest id); title zorunlu.

Kurallar & hatalar

Durummessage
Normal satır id'si tenant'ın yöntemi değilunknown_payment_method (400)
Tenant'ta hiç ödeme yöntemi yokno_payment_methods_configured (400)
Yeni paid total'ı aşıyorPaid (X) exceeds total (Y). (400)
Geçersiz gövdejoi doğrulama mesajı (400)
Masa yok / kapanmışTable not found (404)