có một mối quan hệ chung giữa giá cả, số lượng, chiết khấu, thuế và các quy định của họ.
Assume:
x is the price
y is the percentage
s is the rounded sub-total
2 Directions
A) incl. Tax => excl. Tax => incl. Tax
B) excl. => incl. => excl.
Vấn đề quan trọng là tổng phụ được làm tròn mà tôi đang tính với max. Lỗi. 2 chữ số phân số có nghĩa là 5 * 10 ^ -3
A) x * 10 ^ 2 / (y + 10 ^ 2) // s * (y + 10 ^ 2) / 10 ^ 2
B) x * (y + 10 ^ 2) / 10 ^ 2 // s * 10 ^ 2 / (10 ^ 2 + y)
A)
Subtotal precision 2 fractional digits:
5*10^-3*(y+10^2)/10^2 => (y+10^2)/10^2<1 => no y
3 fractional digits:
5*10^-4*(y+10^2)/10^2 => (y+10^2)/10^2<10 => y<900
4 fractional digits:
5*10^-5*(y+10^2)/10^2 => (y+10^2)/10^2<10^2 => y<90900
(must be a very bad country)
......
B)
Subtotal precision 2 fractional digits:
(5*10^-3)*10^2/(10^2+y) => 10^2/(10^2+y)<1 => every y
Nếu bạn muốn tính toán với giảm giá hoặc thuế và muốn tính toán lại giá, lời giải thích tiếp theo có thể thú vị cho bạn. Xin lưu ý vì tôi không biết bất kỳ trường hợp nào ở mặt trước, có thể có một tính toán thực tập. A) Tổng => Thuế / Chiết khấu => Tổng B) Thuế / Chiết khấu => Tổng => Thuế / Chiết khấu
A) x * y / 10 ^ 2 // s * 10 ^ 2 / y
B) x * 10 ^ 2 / y // s * y / 10 ^ 2
A) Subtotal precision 2 fractional digits:
(5*10^-3)*10^2/y => 10^2/y < 1 => y>10^2
Subtotal precision 3 fractional digits:
(5*10^-4)*10^2/y => 10^2/y < 10 => y>10
Subtotal precision 4 fractional digits:
... 10^2/y < 10^2 => y>1
Với độ chính xác là 2 chữ số, bạn phải có một tỷ lệ KHÔNG CÓ SỐ TIỀN LÃI. Ví dụ: Tổng: 15,15 thuế suất: 0,3% => thuế 0,04545 => làm tròn 0,0455 thuế: 0,0455 => tổng: 15,17
B) Subtotal precision 2 fractional digits:
(5*10^-3)*y/10^2 => y/10^2 < 1 => y < 10^2
nếu a là độ chính xác, thì phải nhỏ hơn y + 2.
Xin lưu ý nếu bạn xử lý số lượng. Lỗi sẽ được nhân lên. Vì vậy, nếu bạn có tối đa 10 ^ 5, bạn phải có độ chính xác là 7. Điều này chỉ đáng lo ngại, nếu bạn đang tính toán với bù!
BỔ SUNG (9.10.2013 Phiên bản Magento 1.7.0.2) Brutto <=> Netto và Thuế // Mỹ <=> Bộ Châu Âu cũ là số nguyên (Cents) và ánh xạ
f (x) = round (a * x) a> 1 là không tính toán. Theo lời của tôi: Không phải cho mỗi giá bao gồm. tồn tại một giá excl. hoặc đôi khi có 2 giá bao gồm. cho một giá excl. hoặc Bạn có thể nhận được 2 kết quả khác nhau tùy thuộc vào cách bạn tính toán
Ví dụ thực tế từ Đức:
Bạn cố gắng nhập một giá bao gồm. thuế: 19,95 Bạn nhận được 16,76 (2 chữ số) khi giá của bạn không bao gồm. các loại thuế (19%). Nếu bạn tính thuế 19% bạn nhận được (16,76 * 0,19) 3,18. (Lưu ý: 19,95 * 019 / 1,19 ~ 3.19)
Vì vậy, có sự khác biệt 1 Cent. 16,76 => 19,94 16,77 => 19,96
Không có giá 19,95 ở Mỹ - vùng đất của netto.
Vì vậy, tính toán với giá gốc càng xa càng tốt. Để bao gồm giá sử dụng giá nhập và các loại thuế (số bị hỏng).
PayPal có kiểm tra gian lận này - bây giờ tôi không chắc chắn - nhưng PayPal chỉ thêm số magento cung cấp cho nó. xem http://fabiankrueger.de/blog/magento-und-paypayl-rundungsfehler/
Nếu điều này không đúng và PayPal tính lại Thuế hoặc Tổng, vấn đề này không thể giải quyết được, nếu không thì giá - sai hoặc đúng - được hiển thị trước trong Magento . Giải quyết nó ở đó. Đối với tôi nó dường như làm việc.