Kode error
error.code adalah kunci yang stabil; error.message boleh ditampilkan ke pengguna.
Pada hasil sinkronisasi (per transaksi)
Section titled “Pada hasil sinkronisasi (per transaksi)”Hasil sales/sync dan orders/sync memberi status per operationId.
status |
Arti | Tindakan |
|---|---|---|
synced / recorded |
Tersimpan | Hapus dari outbox |
recorded_with_review |
Tersimpan, menu berubah saat transaksi | Segarkan menu |
replayed / duplicate |
Sudah pernah tersimpan | Anggap selesai |
conflict (IDEMPOTENCY_CONFLICT) |
ID dipakai isi berbeda | Status gagal; buang atau coba transaksi baru |
rejected |
Ditolak validasi; lihat code |
Status gagal; tampilkan pesan |
error (WRITE_FAILED) |
Gagal menulis sementara | Tetap antre |
Kode rejected: TOTAL_MISMATCH, PAYMENT_MISMATCH, PAYMENT_INVALID, DISCOUNT_REASON_REQUIRED, DISCOUNT_EXCEEDS_SUBTOTAL, STAFF_REQUIRED, TABLE_REQUIRED, ORDER_TYPE_INVALID, VALIDATION.
Pada respons HTTP
Section titled “Pada respons HTTP”| Kode | HTTP | Arti |
|---|---|---|
UNAUTHORIZED |
401 | Token tidak ada/salah/dicabut. Perangkat: layar pairing |
STAFF_SESSION_INVALID |
401 | Sesi PIN kedaluwarsa: login ulang |
FORBIDDEN |
403 | Peran tidak cukup |
NOT_FOUND |
404 | Tidak ada atau milik tenant lain |
NO_PRODUCT_FOUND |
404 | Lookup tidak menemukan produk (bukan error sistem) |
CONFLICT |
409 | Duplikat (email, label meja, dll.) |
INVALID_TRANSITION |
409 | Transisi status dapur/terima tidak sah |
ALREADY_PAID, ORDER_VOIDED |
409 | Aksi bayar tidak berlaku |
SHIFT_OPEN, SHIFT_CLOSED |
409 | Aturan shift |
STOCK_NOT_TRACKED |
409 | Penyesuaian pada produk tanpa pelacakan |
VALIDATION, INVALID_BODY |
422 | Input tidak valid |
ITEM_UNAVAILABLE, MODIFIER_INVALID |
422 | Self-order: menu berubah |
PAYLOAD_TOO_LARGE |
413 | Foto > 5 MB, audio > 1 MB, sync > 50 |
UNSUPPORTED_MEDIA |
415 | Format foto/audio tidak didukung |
LOCKED, RATE_LIMITED |
429 | Terlalu banyak percobaan |
UNAVAILABLE, VOICE_UNAVAILABLE |
503 | Fitur belum aktif (mis. suara) |
ApiError di @smash-pos/core memetakan status ke kind: auth, conflict, validation, network, server, unknown.