申告価格と品目税率から輸入関税を計算
この関税計算ツールは、お客様が用意した税率表から品目を検索し、申告価格に該当する割合を適用します。採用した税率と関税見積額を返すため、計算内容を確認して再現できます。品目分類、官公庁の税率検索、税金の加算、免税判定は行いません。配送に適した値を入力し、結果は税関の確定額ではなく計画用の目安としてご利用ください。
無料で実行
申告価格と品目別税率表をご用意ください
まず、計画するケースで課税標準にする申告価格を入力してください。通貨記号や桁区切りを含めず、0以上の数値にします。次に、各行に重複しない品目名と0以上の rate_percent がある表をご用意ください。配送品目は、大文字・小文字や空白も含め、表の1行と完全に一致する必要があります。厳密に照合することで、名称が似ていても法的には異なる分類を誤って採用することを防ぎます。税率は百分率で入力します。rate_percent の 7.5 は7.5パーセントを表し、0.075ではありません。為替レートは取得しないため、すべての金額には同じ通貨をお使いください。計算前に、申告価格、分類、税率表が仕向国と出荷日に適用できるかをご確認ください。評価規則、原産地優遇、免税、税率改定によって課税標準や割合が変わる場合があります。
計算方法と結果をご確認ください
ツールは表から完全一致する品目を探し、その税率を取得して、申告価格に rate_percent を掛けて100で割ります。つまり、関税見積額は申告価格×rate_percent÷100です。結果には declared_value、品目、duty_rate_percent、estimated_duty が含まれるため、第三者も検索をやり直さず入力内容を監査できます。すべての税関が同じ端数処理を行うとは限らないため、アルゴリズムでは丸めません。これにより決定的な計算値を保ち、必要に応じてお客様の会計処理で適用規則に従って丸められます。税率または申告価格が0なら見積額も0です。品目が見つからない場合は既定税率を仮定せず、入力エラーを返します。同一品目が複数ある表も、税率が同じであっても曖昧なため受け付けません。
陸揚げ費用の計画に組み込んでください
この結果は陸揚げ費用の一項目として使用し、税関への最終支払額とはみなさないでください。実際の輸入費用には輸入VATや売上税、物品税、反ダンピング措置、通関、取扱いなどが加わる場合があります。税関によっては請求額だけでなく、運賃、保険、ロイヤルティー、その他の調整を含む課税価格を用います。原産地優遇や少額免税で負担が減る場合もありますが、判定に必要な情報はここでは収集しません。計画の根拠として、使用した税率表を見積結果と一緒に保存してください。商品カタログでは品目または分類ごとに計算し、明細単位か一送品単位かを確認してから合計します。分類、価格、原産地、仕向地、通貨、適用税率が変わったら再計算してください。手動確認にはブラウザーが便利で、購買やチェックアウト、レポートを自動化するAPI は1回 $0.002 です。
活用例
陸揚げ費用を計画する
調達候補を比較する前に、確認済み税率を仕入先の申告価格へ適用できます。
商品台帳の前提を確認する
EC価格設定で使う品目表から算出された関税額を検証できます。
手計算を監査する
採用税率と関税額を併記し、結果を税率表の行まで追跡できます。
よくある質問
どの計算式を使いますか?
declared_value に duty_rate_percent を掛け、100で割ります。
正しい品目分類や税率を検索しますか?
いいえ。配送品目と適用する品目別税率表はお客様がご用意ください。
品目が表にない場合はどうなりますか?
不足している品目を示す入力エラーを返し、既定税率への置換は行いません。
税金、通関手数料、送料も含まれますか?
いいえ。お客様が入力した申告価格と割合による関税だけを計算します。
どの通貨を使えばよいですか?
評価に必要な通貨を選び、申告価格と算出関税の両方で統一してください。
API の料金はいくらですか?
API は1回 $0.002 です。手動見積もり用のブラウザー版は端末内で動作します。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/ecom/customs-duty-estimate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"declared_value":1250,"category":"footwear","duty_rates":[{"category":"books","rate_percent":0},{"category":"footwear","rate_percent":12.5}]}'const res = await fetch("https://api.kit.forhosting.com/ecom/customs-duty-estimate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"declared_value": 1250,
"category": "footwear",
"duty_rates": [
{
"category": "books",
"rate_percent": 0
},
{
"category": "footwear",
"rate_percent": 12.5
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/ecom/customs-duty-estimate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"declared_value": 1250,
"category": "footwear",
"duty_rates": [
{
"category": "books",
"rate_percent": 0
},
{
"category": "footwear",
"rate_percent": 12.5
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/ecom/customs-duty-estimate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"declared_value":1250,"category":"footwear","duty_rates":[{"category":"books","rate_percent":0},{"category":"footwear","rate_percent":12.5}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"declared_value":1250,"category":"footwear","duty_rates":[{"category":"books","rate_percent":0},{"category":"footwear","rate_percent":12.5}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/ecom/customs-duty-estimate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"declared_value": 1250,
"category": "footwear",
"duty_rates": [
{
"category": "books",
"rate_percent": 0
},
{
"category": "footwear",
"rate_percent": 12.5
}
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "ecom.customs_duty_estimate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_items | 500 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |