DOCS

稅務豁免

將美國銷售稅免稅證明同步至客戶檔案。

如果您銷售給轉售商、政府機關或非營利組織,這些買方會持有免稅證明,使他們在特定州免繳銷售稅。Zonos 會將這些證明儲存在客戶檔案中,以便在結帳時識別出享有免稅資格的買方。

豁免是按司法管轄區記錄的。在南卡羅來納州享有免稅資格的客戶,並不會自動在德克薩斯州也享有免稅資格,因此客戶持有證明的每個州都是一筆獨立的記錄,各自擁有自己的日期和證明編號。

豁免會附加至現有客戶,因此同步需要兩次呼叫:先建立客戶,再同步其證明。兩者都以您自己的客戶 ID 為索引鍵——也就是您在 Checkout 其他地方使用的相同 customerId。Zonos 從不要求您儲存內部 ID。

此功能僅適用於自訂 API 整合。

豁免尚未套用至 landed cost 報價

您現在就可以同步及管理豁免,這些記錄會儲存在客戶檔案中。從 landed cost 的稅金中扣除豁免的 功能即將推出,因此目前同步的豁免尚不會變更向購物者報價的稅金。現在就先同步,可確保該功能 推出時,您的證明已經就緒。

建立或更新客戶 

checkoutCustomerUpsert 會建立客戶檔案,如果該 customerId 已存在對應檔案,則會更新它。與 checkoutCustomerProfileAuthenticate 不同,此操作不需要購物者在場,因此您可以提前佈建您的客戶清單。完整的欄位行為請參閱在沒有購物者的情況下建立或更新檔案。

1mutation checkoutCustomerUpsert($input: CheckoutCustomerProfileInput!) {
2 checkoutCustomerUpsert(input: $input) {
3 customerId
4 email
5 name
6 phone
7 }
8}

因為它是以 customerId 進行比對,重複呼叫只會更新同一筆檔案,而不會建立重複項目。您可以放心地在每次同步時,對整個客戶清單執行此操作。

同步稅務豁免 

checkoutCustomerTaxExemptionsSync 可一次接受多位客戶。每個項目都會取代該客戶完整的豁免集合。

1mutation checkoutCustomerTaxExemptionsSync(
2$input: [CheckoutCustomerTaxExemptionSyncInput!]!
3) {
4 checkoutCustomerTaxExemptionsSync(input: $input) {
5 customerId
6 accepted {
7 id
8 countryCode
9 administrativeArea
10 effectiveAt
11 expiresAt
12 exemptionReason
13 }
14 rejected {
15 code
16 message
17 administrativeArea
18 effectiveAt
19 }
20 }
21}

省略 expiresAt 表示該證明沒有到期日。省略 exemptionReason 則預設為 UNSPECIFIED。

同步的運作方式 

每次同步都遵循三項規則。

清單具有權威性。 taxExemptions 是客戶的完整集合,而非變更清單。任何已在記錄中、但未出現在清單裡的豁免都會被移除——這就是撤銷的證明停止生效的方式。傳送部分清單會在無聲無息間移除清單未列出的所有項目。

每筆記錄都代表一項豁免。 沒有辦法記錄客戶在某處「不」享有免稅資格——請參閱下方的注意事項。

移除所有豁免即為傳送空清單。 若要清除客戶的證明,請以 "taxExemptions": [] 傳送。若在請求內容中完全省略該客戶,則其現有記錄將維持不變。

僅傳送客戶享有免稅資格的司法管轄區

Zonos 沒有「不豁免」的記錄——司法管轄區不是在清單中,就是不在清單中。如果您的系統會將免稅 與非免稅的司法管轄區儲存在一起,請在同步前先篩選出免稅的項目。非免稅記錄與真正的證明無法 區分,因此會被接受而非拒絕,該客戶將被視為在該州享有免稅資格。

免稅原因 

exemptionReason 說明客戶享有免稅資格的原因。此欄位為選填,預設為 UNSPECIFIED,但值得花心力提供——原因請見下方。

值↕適用於↕
RESALE為轉售而非自用所購買的商品
FEDERAL_GOVERNMENT美國聯邦機構或部門
STATE_LOCAL_GOVERNMENT州機關、郡、市鎮或學區
TRIBAL_GOVERNMENT聯邦承認的部落或部落成員
CHARITABLE慈善非營利組織
RELIGIOUS_ORGANIZATION教會或其他宗教組織
EDUCATIONAL_ORGANIZATION學校或大學
DIRECT_PAY持有直接繳稅許可證並自行繳納稅款的買方
OTHER其他任何情況,包括外國外交官、農業生產、工業生產及直接郵購
UNSPECIFIED未提供原因

原因可分為兩大類,而這項區別十分重要。以身分為基礎的原因——政府、慈善、宗教、教育——無論買方購買什麼,都能使其享有免稅資格。以用途為基礎的原因,尤其是 RESALE,僅涵蓋符合資格的商品:轉售證明涵蓋買方將轉售的存貨,而不涵蓋同一筆訂單中的辦公家具。

如果未提供原因,Zonos 便無法區分這兩者,只能將整筆訂單視為免稅,而這對轉售證明來說是最難站得住腳的作法。如果您大部分的豁免都屬於轉售性質,將 RESALE 設為預設值、再個別列出例外情況,通常比逐一為每位客戶分類要省事得多。

免稅參考編號 

exemptionReference 是印在客戶免稅文件上的編號。依州別及豁免類型不同,這可能是轉售或賣家許可證號碼、州免稅證明編號、直接繳稅許可證號碼,或聯邦稅籍編號。

每筆記錄都必須提供此欄位。請完全依照證明上顯示的樣式儲存並傳送——格式因司法管轄區而異(SR EAA 12-345678、85-8012345678C-9、12-3456789),Zonos 除了去除前後的空白字元外,會保留您傳送的原始值。請勿變更大小寫,也不要移除連字號或空格。

基於隱私考量,exemptionReference 可以傳送,但在讀回豁免資料時不會傳回,因為其中可能包含 聯邦稅籍編號。

遭拒絕的記錄 

記錄會逐筆進行驗證。遭拒絕的記錄會回報在 rejected 中,不會導致批次中其餘記錄失敗,也不會影響該司法管轄區已在記錄中的豁免。

代碼↕原因↕
UNKNOWN_CUSTOMER沒有客戶符合 customerId。請先建立客戶
UNKNOWN_JURISDICTIONadministrativeArea 不是可識別的美國州、特區或領地
INVALID_DATE_RANGEexpiresAt 沒有晚於 effectiveAt
MISSING_EXEMPTION_REFERENCEexemptionReference 為空
DUPLICATE_JURISDICTION同一請求內容中有兩筆記錄的國家、地區與生效日期皆相同。系統會保留第一筆

未知的客戶會被拒絕而非自動建立,因此輸入錯誤的 customerId 會直接顯示在回應中,而不會建立一個永遠對應不到真實買方的檔案。

只有美國的行政區域會經過驗證。其他國家的行政區劃分則會依傳送內容原樣接受。

讀回與移除 

讀回客戶的豁免資料,以確認同步已成功套用:

1query checkoutCustomerTaxExemptions($customerId: String!) {
2 checkoutCustomerTaxExemptions(customerId: $customerId) {
3 countryCode
4 administrativeArea
5 effectiveAt
6 expiresAt
7 exemptionReason
8 }
9}

若要移除某位客戶的所有豁免——例如當他們關閉帳戶時——請使用 checkoutCustomerTaxExemptionsDelete。無論該客戶是否有任何豁免記錄,此操作都會回傳 SUCCESS,因此可以安全地重複呼叫。

1mutation checkoutCustomerTaxExemptionsDelete($customerId: String!) {
2 checkoutCustomerTaxExemptionsDelete(customerId: $customerId)
3}
預約演示

這個頁面有幫助嗎?


獲取支持·法律文件·© 2026 Zonos
在此頁面: