Content API cho phép bạn chỉ định thuế và thông tin vận chuyển sẽ áp dụng cho tất cả sản phẩm trong một tài khoản thông qua các dịch vụ shippingsettings và accounttax. Nếu muốn cung cấp thông tin chính xác hơn, bạn có thể chỉ định thuế và phí vận chuyển ở cấp mặt hàng thông qua dịch vụ products.
Để biết thông tin về các chính sách của Google và toàn bộ các lựa chọn để chỉ định thuế và phí vận chuyển, hãy xem các bài viết sau đây trong Trung tâm trợ giúp:
Xin lưu ý rằng thuộc tính tax
và do đó, việc sử dụng dịch vụ accounttax chỉ áp dụng cho các sản phẩm nhắm đến Hoa Kỳ.
Các dịch vụ accounttax và shippingsettings của Content API phản ánh chức năng của giao diện người dùng Merchant Center.
Ví dụ đơn giản
Đối với phí vận chuyển là 8 EUR ở Pháp và dựa trên mức phí của hãng vận chuyển ở Hoa Kỳ, trong đó mỗi dịch vụ vận chuyển mất từ 3 đến 7 ngày để giao hàng:
PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id> { "accountId": <account_id>, "services": [ { "name": "Livraison Prioritaire", "deliveryCountry": "FR", "currency": "EUR", "rateGroups": [ { "singleValue": { "flatRate": { "currency": "EUR", "value": "8" } } } ], "active": true, "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 } }, { "name": "UPS in US", "deliveryCountry": "US", "currency": "USD" "rateGroups": [ { "singleValue": { "carrierRateName": "ups" }, "carrierRates": [ { "name": "ups", "carrierName": "UPS", "carrierService": "Ground", "originPostalCode": "10011" } ] } ], "active": true, "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 }, } ] }
Để truy xuất tên và dịch vụ của nhà mạng hiện có, hãy sử dụng phương thức getsupportedcarriers.
Ví dụ phức tạp
Để tạo chương trình khuyến mãi vận chuyển miễn phí ở các tiểu bang xung quanh New York (bằng cách không tính phí vận chuyển), hãy sử dụng UPS cho phần còn lại của Hoa Kỳ và để áp dụng một mức thuế khác cho từng tiểu bang của Hoa Kỳ, hãy sử dụng các yêu cầu đối với dịch vụ accounttax và shippingsettings của Content API như sau. Trước tiên, hãy định cấu hình chế độ cài đặt thông tin vận chuyển:
PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id> { "accountId": <account_id>, "services": [ { "name": "Eligible for free shipping", "deliveryCountry": "US", "rateGroups": [ { "mainTable": { "rowHeaders": { "locations": [ { "locationIds": ["21167"] }, // NY { "locationIds": ["21164", "21139"] } // NJ, CT ] }, "rows": [ { "cells": [ { "flatRate": { "currency": "USD", "value": "0" } } ] }, { "cells": [ { "flatRate": { "currency": "USD", "value": "0" } } ] } ] } } ], "active": true, "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 }, "currency": "USD" }, { "name": "UPS in US", "deliveryCountry": "US", "rateGroups": [ { "singleValue": { "carrierRateName": "UPS mainland" }, "carrierRates": [ { "name": "UPS mainland", "carrierName": "UPS", "carrierService": "Ground", "originPostalCode": "10011", // currently only US, AU, and DE postal codes "percentageAdjustment": "1.05", "flatAdjustment": { "currency": "USD", "value": "0.75" } } ] } ], "active": true, "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 }, "currency": "USD" } ], "postalCodeGroups": [ { "name": "More cities", // An alternative using postal codes "country": "US", "postalCodeRanges": [ { "postalCodeRangeBegin": "94041" }, { "postalCodeRangeBegin": "94042" }, { "postalCodeRangeBegin": "94043", "postalCodeRangeEnd": "94045" }, { "postalCodeRangeBegin": "9405*" }, { "postalCodeRangeBegin": "9406*", "postalCodeRangeEnd": "9408*" } ] } ] }
Xin lưu ý rằng bạn có thể dùng mã vị trí để biểu thị các khu vực hành chính.
Tiếp theo, hãy định cấu hình các khoản thuế:
PUT /content/v2.1/<merchant_id>/accounttax/<account_id> { "accountId": <account_id>, "rules": [ { "country": "US", // currently only US is supported, may be omitted "locationId": 21167, "useGlobalRate": true, "shippingTaxed": false }, { "locationId": 21137, "useGlobalRate": false, "shippingTaxed": true, "ratePercent": "2.15" } // ... ] }
Lưu ý: mức phí của hãng vận chuyển chỉ có ở Hoa Kỳ, Đức và Úc. Các nhóm vị trí hiện được hỗ trợ ở Hoa Kỳ và Úc.
Quy tắc vận chuyển phức tạp: bảng hai chiều và bảng phụ
Để xác định chương trình khuyến mãi vận chuyển là 70.000 VND ở Hoa Kỳ, 30.000 VND hoặc 50.000 VND cho các đơn đặt hàng nặng hơn 4,5 kg ở Thành phố New York, tuỳ thuộc vào giá của đơn đặt hàng và miễn phí cho các đơn đặt hàng có trọng lượng thấp hơn, hãy sử dụng thông tin sau:
PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id> { "accountId": <account_id>, "services": [ { "name": "Custom shipping rules", "deliveryCountry": "US", "rateGroups": [ { "mainTable": { "rowHeaders": { "postalCodeGroupNames": [ "NYC", "all other locations" ] }, "columnHeaders": { "weights": [ { "unit": "lb", "value": "10" }, { "unit": "lb", "value": "infinity" } ] }, "rows": [ { "cells": [ { "flatRate": { "value": "0", "currency": "USD" } }, { "subtableName": "NYC large packages" } ] }, { "cells": [ { "flatRate": { "value": "7", "currency": "USD" } }, { "flatRate": { "value": "7", "currency": "USD" } } ] } ] }, "subtables": [ { "name": "NYC large packages", "rowHeaders": { "prices": [ {"value": "100", "currency": "USD"}, {"value": "infinity", "currency": "USD"}] }, "rows": [ { "cells": [ { "flatRate": { "value": "3", "currency": "USD" } } ] }, { "cells": [ { "flatRate": { "value": "5", "currency": "USD" } } ] } ] } ] } ], "active": true, "currency": "USD", "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 } } ], "postalCodeGroups": [ { "name": "NYC", // Approximation of NYC using postal codes "country": "US", "postalCodeRanges": [ { "postalCodeRangeBegin": "10000", postalCodeRangeEnd: "11999" } ] } ] }
Quy tắc vận chuyển phức tạp: chia nhãn vận chuyển cho nhiều dịch vụ
Trong shippingsettings, mỗi dịch vụ vận chuyển chỉ có thể chứa tối đa 20 nhóm mức phí vận chuyển. Vì nhóm mức phí vận chuyển được dùng để phân biệt các mức phí vận chuyển thông qua nhãn vận chuyển, nên điều này có thể cho thấy rằng bạn chỉ có thể thực thi 20 mức phí vận chuyển riêng biệt thông qua nhãn vận chuyển. Tuy nhiên, bạn có thể có tối đa 20 dịch vụ vận chuyển cho mỗi quốc gia. Bằng cách tách các mức phí được phân biệt bằng nhãn vận chuyển trên nhiều dịch vụ cho cùng một quốc gia, bạn có thể phân biệt tối đa 400 mức phí vận chuyển riêng biệt thông qua nhãn vận chuyển.
Lưu ý: Nếu bạn có nhiều dịch vụ, thì mỗi sản phẩm cho một quốc gia nhất định sẽ được kiểm tra dựa trên tất cả dịch vụ vận chuyển cho quốc gia đó để tính mức phí vận chuyển có thể có. Nếu nhiều dịch vụ trả về các mức phí khác nhau cho cùng một sản phẩm, thì mức phí thấp nhất sẽ được sử dụng.
Ví dụ dưới đây chia 40 nhãn vận chuyển sử dụng các mức phí riêng biệt thành 2 dịch vụ khác nhau. Ví dụ này ẩn các thông tin khác của tài nguyên thông tin vận chuyển, chẳng hạn như mức phí thực tế, sau dấu ba chấm.
PUT /content/v2.1/<merchant_id>/shippingsettings/<account_id> { "accountId": <account_id>, "services": [ { "name": "labels_0_19", "deliveryCountry": "US", "active": true, "currency": "USD", "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 } "rateGroups": [ { "applicableShippingLabels": ["shipping_label_0"], ... } { "applicableShippingLabels": ["shipping_label_1"], ... } { "applicableShippingLabels": ["shipping_label_2"], ... } { "applicableShippingLabels": ["shipping_label_3"], ... } { "applicableShippingLabels": ["shipping_label_4"], ... } { "applicableShippingLabels": ["shipping_label_5"], ... } { "applicableShippingLabels": ["shipping_label_6"], ... } { "applicableShippingLabels": ["shipping_label_7"], ... } { "applicableShippingLabels": ["shipping_label_8"], ... } { "applicableShippingLabels": ["shipping_label_9"], ... } { "applicableShippingLabels": ["shipping_label_10"], ... } { "applicableShippingLabels": ["shipping_label_11"], ... } { "applicableShippingLabels": ["shipping_label_12"], ... } { "applicableShippingLabels": ["shipping_label_13"], ... } { "applicableShippingLabels": ["shipping_label_14"], ... } { "applicableShippingLabels": ["shipping_label_15"], ... } { "applicableShippingLabels": ["shipping_label_16"], ... } { "applicableShippingLabels": ["shipping_label_17"], ... } { "applicableShippingLabels": ["shipping_label_18"], ... } { "applicableShippingLabels": ["shipping_label_19"], ... } ] }, { "name": "labels_20_39", "deliveryCountry": "US", "active": true, "currency": "USD", "deliveryTime": { "minTransitTimeInDays": 3, "maxTransitTimeInDays": 7 } "rateGroups": [ { "applicableShippingLabels": ["shipping_label_20"], ... } { "applicableShippingLabels": ["shipping_label_21"], ... } { "applicableShippingLabels": ["shipping_label_22"], ... } { "applicableShippingLabels": ["shipping_label_23"], ... } { "applicableShippingLabels": ["shipping_label_24"], ... } { "applicableShippingLabels": ["shipping_label_25"], ... } { "applicableShippingLabels": ["shipping_label_26"], ... } { "applicableShippingLabels": ["shipping_label_27"], ... } { "applicableShippingLabels": ["shipping_label_28"], ... } { "applicableShippingLabels": ["shipping_label_29"], ... } { "applicableShippingLabels": ["shipping_label_30"], ... } { "applicableShippingLabels": ["shipping_label_31"], ... } { "applicableShippingLabels": ["shipping_label_32"], ... } { "applicableShippingLabels": ["shipping_label_33"], ... } { "applicableShippingLabels": ["shipping_label_34"], ... } { "applicableShippingLabels": ["shipping_label_35"], ... } { "applicableShippingLabels": ["shipping_label_36"], ... } { "applicableShippingLabels": ["shipping_label_37"], ... } { "applicableShippingLabels": ["shipping_label_38"], ... } { "applicableShippingLabels": ["shipping_label_39"], ... } ] } ], "postalCodeGroups": [ ... ] }
Bạn cũng có thể cần chia nhãn vận chuyển trên các nhóm mức phí ngay cả khi các nhãn vận chuyển có cùng mức phí vận chuyển, vì mỗi nhóm mức phí chỉ có thể có 30 nhãn vận chuyển trong trường applicableShippingLabels
. Ví dụ: nếu tất cả nhãn vận chuyển đều có cùng cấu trúc phí, thì shippingsettings
có thể xử lý tối đa 12.000 nhãn vận chuyển cho một quốc gia: 30 nhãn vận chuyển cho mỗi nhóm mức phí, 20 nhóm mức phí cho mỗi dịch vụ vận chuyển và 20 dịch vụ vận chuyển cho mỗi quốc gia.
Để biết thêm thông tin, hãy xem tài liệu tham khảo về accounttax và shippingsettings.