Thành tiền và số lượng
Thành tiền khách trả là gốc của mỗi dòng. Quy tắc số lượng và làm tròn theo từng nhóm thuế suất.
Khách trả bao nhiêu thì hóa đơn ghi đúng bấy nhiêu. NexERP không tự làm lệch thành tiền.
Mọi con số tiền là số nguyên đồng, làm tròn lên từ 0,5 (HALF-UP).
Thuế suất KKKNT, KCT, 0
quantitycó thể bỏ trống. Khi đóquantity = amount / unit_price, làm tròn 6 chữ số lẻ.Nếu gửi
quantity, nó có tối đa 6 chữ số lẻ.quantity × unit_pricelàm tròn đến đồng phải bằng đúngamount.Lệch 1 đồng cũng bị từ chối với mã
line.amount_anchor_mismatch. Không có dung sai.Đơn giá từ 1.000.000 đồng trở lên mà số lượng có phần lẻ thì bị từ chối với mã
line.amount_anchor_scale. Sai số của 6 chữ số lẻ khi đơn giá lớn có thể làm lệch đồng.
Ví dụ: "3.742515" lít × 26.720 đồng = 100.000,0008 đồng, làm tròn thành 100.000 đồng, khớp amount.
Thuế suất 5, 8, 10
Bắt buộc gửi
quantity, tối đa 4 chữ số lẻ.quantity × unit_pricephải bằng đúngamount, không làm tròn.Vi phạm một trong hai điều trên thì bị từ chối với mã
line.amount_anchor_taxable_unsupported.unit_pricelà giá đã gồm thuế. NexERP tách thuế ngược theo từng đơn vị. Thuế của dòng là phần còn lại, nên tiền hàng cộng thuế luôn bằng đúngamount.
Lưu ý
quantityluôn là chuỗi trong JSON, ví dụ"3.742515". Lý do: số JSON hay bị đọc thành số thực nhị phân và sai ở chữ số cuối.Bán theo số tiền ("đổ 100.000 đồng") với dòng KKKNT, KCT, 0 thì bỏ trống
quantityvà chỉ gửiamount.