Developer documentation
Estimate the per-unit economics of importing an overseas product and selling it in Japan—without asking the user to assemble a duty, tax, FX, logistics, and marketplace spreadsheet.
The important answer comes first. Selling price, total cost, profit, margin, break-even price, minimum recommended price, confidence, and recommendation precede the detailed assumptions.
Calculate with four familiar facts
curl -X POST https://api.japanapistore.com/v1/profitability/calculate \
-H "Authorization: Bearer ${JAPAN_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"product_name": "Wireless earbuds",
"category": "Electronics",
"origin_country": "CN",
"cost": {"amount": 15, "currency": "USD"},
"selling_price": {"amount": 5980, "currency": "JPY"},
"channel": "amazon_jp"
}'Request
product_name and cost are the minimum standalone input. A full sellability_response can supply the product identity instead. Category, origin, HS code, selling price, freight, logistics, fees, and rates are optional accuracy upgrades.
View exact request schema
{
"$id": "ProfitabilityRequest",
"additionalProperties": false,
"anyOf": [
{
"required": [
"product_name"
]
},
{
"required": [
"sellability_response"
]
}
],
"type": "object",
"required": [
"cost"
],
"properties": {
"product_name": {
"minLength": 1,
"maxLength": 160,
"type": "string"
},
"category": {
"anyOf": [
{
"const": "Food",
"type": "string"
},
{
"const": "Beverage",
"type": "string"
},
{
"const": "Supplement",
"type": "string"
},
{
"const": "Cosmetics",
"type": "string"
},
{
"const": "Pharmaceutical",
"type": "string"
},
{
"const": "Quasi-drug",
"type": "string"
},
{
"const": "Medical Device",
"type": "string"
},
{
"const": "Electrical Appliance",
"type": "string"
},
{
"const": "Electronics",
"type": "string"
},
{
"const": "Battery",
"type": "string"
},
{
"const": "Toy",
"type": "string"
},
{
"const": "Baby Product",
"type": "string"
},
{
"const": "Clothing",
"type": "string"
},
{
"const": "Textile",
"type": "string"
},
{
"const": "Chemical",
"type": "string"
},
{
"const": "Detergent",
"type": "string"
},
{
"const": "Household Product",
"type": "string"
},
{
"const": "Furniture",
"type": "string"
},
{
"const": "Kitchenware",
"type": "string"
},
{
"const": "Container / Packaging",
"type": "string"
},
{
"const": "Agricultural Product",
"type": "string"
},
{
"const": "Plant",
"type": "string"
},
{
"const": "Animal Product",
"type": "string"
},
{
"const": "Pet Product",
"type": "string"
},
{
"const": "Pet Food",
"type": "string"
},
{
"const": "Alcohol",
"type": "string"
},
{
"const": "Tobacco / Nicotine",
"type": "string"
},
{
"const": "Vehicle / Parts",
"type": "string"
},
{
"const": "Machinery",
"type": "string"
},
{
"const": "Radio Equipment",
"type": "string"
},
{
"const": "Luxury Goods",
"type": "string"
},
{
"const": "Wildlife Product",
"type": "string"
},
{
"const": "General Goods",
"type": "string"
},
{
"const": "Unknown",
"type": "string"
}
]
},
"origin_country": {
"minLength": 2,
"maxLength": 80,
"type": "string"
},
"hs_code": {
"minLength": 4,
"maxLength": 16,
"pattern": "^[0-9. -]+$",
"type": "string"
},
"target_market": {
"const": "JP",
"type": "string"
},
"cost": {
"additionalProperties": false,
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"minimum": 0,
"maximum": 1000000000,
"type": "number"
},
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
}
}
},
"selling_price": {
"additionalProperties": false,
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"minimum": 0,
"maximum": 1000000000,
"type": "number"
},
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
}
}
},
"channel": {
"anyOf": [
{
"const": "amazon_jp",
"type": "string"
},
{
"const": "rakuten",
"type": "string"
},
{
"const": "yahoo_japan",
"type": "string"
},
{
"const": "own_ec",
"type": "string"
}
]
},
"international_shipping": {
"additionalProperties": false,
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"minimum": 0,
"maximum": 1000000000,
"type": "number"
},
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"source": {
"anyOf": [
{
"const": "official",
"type": "string"
},
{
"const": "provided",
"type": "string"
},
{
"const": "estimated",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
}
}
},
"insurance": {
"additionalProperties": false,
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"minimum": 0,
"maximum": 1000000000,
"type": "number"
},
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"source": {
"anyOf": [
{
"const": "official",
"type": "string"
},
{
"const": "provided",
"type": "string"
},
{
"const": "estimated",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
}
}
},
"customs_clearance": {
"additionalProperties": false,
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"minimum": 0,
"maximum": 1000000000,
"type": "number"
},
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"source": {
"anyOf": [
{
"const": "official",
"type": "string"
},
{
"const": "provided",
"type": "string"
},
{
"const": "estimated",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
}
}
},
"domestic_logistics": {
"additionalProperties": false,
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"minimum": 0,
"maximum": 1000000000,
"type": "number"
},
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"source": {
"anyOf": [
{
"const": "official",
"type": "string"
},
{
"const": "provided",
"type": "string"
},
{
"const": "estimated",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
}
}
},
"other_costs": {
"maxItems": 20,
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"name",
"amount",
"currency"
],
"properties": {
"name": {
"minLength": 1,
"maxLength": 80,
"type": "string"
},
"amount": {
"minimum": 0,
"maximum": 1000000000,
"type": "number"
},
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"source": {
"anyOf": [
{
"const": "official",
"type": "string"
},
{
"const": "provided",
"type": "string"
},
{
"const": "estimated",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
}
}
}
},
"exchange_rates": {
"maxItems": 40,
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"currency",
"jpy_per_unit"
],
"properties": {
"currency": {
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Za-z]{3}$",
"type": "string"
},
"jpy_per_unit": {
"exclusiveMinimum": 0,
"maximum": 1000000,
"type": "number"
},
"as_of": {
"format": "date",
"type": "string"
},
"source": {
"anyOf": [
{
"const": "official",
"type": "string"
},
{
"const": "provided",
"type": "string"
},
{
"const": "estimated",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
}
}
}
},
"customs": {
"additionalProperties": false,
"type": "object",
"properties": {
"duty_rate_percent": {
"minimum": 0,
"maximum": 1000,
"type": "number"
},
"import_tax_rate_percent": {
"anyOf": [
{
"const": 8,
"type": "number"
},
{
"const": 10,
"type": "number"
}
]
},
"preferential_origin_qualified": {
"type": "boolean"
}
}
},
"fees": {
"additionalProperties": false,
"type": "object",
"properties": {
"platform_fee_percent": {
"minimum": 0,
"maximum": 100,
"type": "number"
},
"payment_fee_percent": {
"minimum": 0,
"maximum": 100,
"type": "number"
},
"fixed_fee_jpy": {
"minimum": 0,
"maximum": 1000000,
"type": "number"
}
}
},
"assumptions": {
"additionalProperties": false,
"type": "object",
"properties": {
"monthly_orders": {
"minimum": 1,
"maximum": 10000000,
"type": "integer"
},
"target_margin_percent": {
"minimum": 0,
"maximum": 80,
"type": "number"
},
"calculation_date": {
"format": "date",
"type": "string"
}
}
},
"sellability_response": {
"$id": "SellabilityResponse",
"additionalProperties": false,
"type": "object",
"required": [
"request_id",
"success",
"status",
"reason",
"guidance",
"confidence",
"normalized_product",
"missing_information",
"requirements",
"restrictions",
"rules_checked",
"authorities_checked",
"official_sources",
"additional_checks",
"data_freshness",
"usage",
"disclaimer"
],
"properties": {
"request_id": {
"pattern": "^req_[a-f0-9]{32}$",
"type": "string"
},
"success": {
"const": true,
"type": "boolean"
},
"status": {
"anyOf": [
{
"const": "SELLABLE",
"type": "string"
},
{
"const": "SELLABLE_WITH_CONDITIONS",
"type": "string"
},
{
"const": "REVIEW_REQUIRED",
"type": "string"
},
{
"const": "NOT_SELLABLE",
"type": "string"
}
]
},
"decision": {
"anyOf": [
{
"const": "SELLABLE",
"type": "string"
},
{
"const": "SELLABLE_WITH_CONDITIONS",
"type": "string"
},
{
"const": "REVIEW_REQUIRED",
"type": "string"
},
{
"const": "NOT_SELLABLE",
"type": "string"
}
]
},
"reason": {
"type": "string"
},
"guidance": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"const": "high",
"type": "string"
},
{
"const": "medium",
"type": "string"
},
{
"const": "low",
"type": "string"
}
]
},
"confidence_score": {
"minimum": 0,
"maximum": 100,
"type": "integer"
},
"confidence_method": {
"const": "deterministic_weighted_rules_v1",
"type": "string"
},
"provisional": {
"type": "boolean"
},
"summary": {
"type": "string"
},
"normalized_product": {
"additionalProperties": false,
"type": "object",
"required": [
"product_name",
"category",
"intended_use",
"origin_country",
"destination_country"
],
"properties": {
"product_name": {
"type": "string"
},
"category": {
"anyOf": [
{
"const": "Food",
"type": "string"
},
{
"const": "Beverage",
"type": "string"
},
{
"const": "Supplement",
"type": "string"
},
{
"const": "Cosmetics",
"type": "string"
},
{
"const": "Pharmaceutical",
"type": "string"
},
{
"const": "Quasi-drug",
"type": "string"
},
{
"const": "Medical Device",
"type": "string"
},
{
"const": "Electrical Appliance",
"type": "string"
},
{
"const": "Electronics",
"type": "string"
},
{
"const": "Battery",
"type": "string"
},
{
"const": "Toy",
"type": "string"
},
{
"const": "Baby Product",
"type": "string"
},
{
"const": "Clothing",
"type": "string"
},
{
"const": "Textile",
"type": "string"
},
{
"const": "Chemical",
"type": "string"
},
{
"const": "Detergent",
"type": "string"
},
{
"const": "Household Product",
"type": "string"
},
{
"const": "Furniture",
"type": "string"
},
{
"const": "Kitchenware",
"type": "string"
},
{
"const": "Container / Packaging",
"type": "string"
},
{
"const": "Agricultural Product",
"type": "string"
},
{
"const": "Plant",
"type": "string"
},
{
"const": "Animal Product",
"type": "string"
},
{
"const": "Pet Product",
"type": "string"
},
{
"const": "Pet Food",
"type": "string"
},
{
"const": "Alcohol",
"type": "string"
},
{
"const": "Tobacco / Nicotine",
"type": "string"
},
{
"const": "Vehicle / Parts",
"type": "string"
},
{
"const": "Machinery",
"type": "string"
},
{
"const": "Radio Equipment",
"type": "string"
},
{
"const": "Luxury Goods",
"type": "string"
},
{
"const": "Wildlife Product",
"type": "string"
},
{
"const": "General Goods",
"type": "string"
},
{
"const": "Unknown",
"type": "string"
}
]
},
"intended_use": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"origin_country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"hs_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"destination_country": {
"const": "JP",
"type": "string"
}
}
},
"missing_information": {
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"field",
"label",
"question"
],
"properties": {
"field": {
"type": "string"
},
"label": {
"type": "string"
},
"question": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "CRITICAL",
"type": "string"
},
{
"const": "HIGH",
"type": "string"
},
{
"const": "MEDIUM",
"type": "string"
},
{
"const": "LOW",
"type": "string"
}
]
},
"reason": {
"type": "string"
}
}
}
},
"requirements": {
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"type",
"name",
"authority",
"rule_id"
],
"properties": {
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"authority": {
"type": "string"
},
"rule_id": {
"type": "string"
}
}
}
},
"restrictions": {
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"name",
"authority",
"rule_id"
],
"properties": {
"name": {
"type": "string"
},
"authority": {
"type": "string"
},
"rule_id": {
"type": "string"
}
}
}
},
"rules_checked": {
"type": "array",
"items": {
"type": "string"
}
},
"authorities_checked": {
"type": "array",
"items": {
"type": "string"
}
},
"official_sources": {
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"source_id",
"source_name",
"organization",
"official_url",
"version",
"last_checked_at",
"retrieved_at",
"effective_from",
"update_frequency",
"status",
"fallback_used"
],
"properties": {
"source_id": {
"type": "string"
},
"source_name": {
"type": "string"
},
"organization": {
"type": "string"
},
"official_url": {
"format": "uri",
"type": "string"
},
"version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"last_checked_at": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"retrieved_at": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"effective_from": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
]
},
"update_frequency": {
"type": "string"
},
"status": {
"type": "string"
},
"fallback_used": {
"type": "boolean"
}
}
}
},
"additional_checks": {
"type": "array",
"items": {
"type": "string"
}
},
"data_freshness": {
"additionalProperties": false,
"type": "object",
"required": [
"engine",
"phase4_version",
"regulatory_version",
"customs_version",
"assessed_at"
],
"properties": {
"engine": {
"const": "phase4",
"type": "string"
},
"phase4_version": {
"type": "string"
},
"regulatory_version": {
"type": "string"
},
"customs_version": {
"type": "string"
},
"assessed_at": {
"format": "date-time",
"type": "string"
}
}
},
"usage": {
"additionalProperties": false,
"type": "object",
"required": [
"counted",
"channel"
],
"properties": {
"counted": {
"type": "boolean"
},
"channel": {
"anyOf": [
{
"const": "anonymous_demo",
"type": "string"
},
{
"const": "api_key",
"type": "string"
}
]
}
}
},
"disclaimer": {
"type": "string"
}
}
}
}
}Response
The result is compact at the top and auditable below it. Every calculated input is recorded as official, provided, estimated, or default.
View exact response schema
{
"$id": "ProfitabilityResponse",
"additionalProperties": false,
"type": "object",
"required": [
"request_id",
"success",
"status",
"estimated_selling_price_jpy",
"estimated_total_cost_jpy",
"estimated_profit_jpy",
"profit_margin_percent",
"break_even_price_jpy",
"recommended_min_price_jpy",
"confidence",
"recommendation",
"summary",
"cost_breakdown",
"assumptions",
"confidence_factors",
"missing_fields",
"warnings",
"sellability",
"data_freshness",
"sources",
"metadata",
"disclaimer"
],
"properties": {
"request_id": {
"pattern": "^req_[a-f0-9]{32}$",
"type": "string"
},
"success": {
"const": true,
"type": "boolean"
},
"status": {
"anyOf": [
{
"const": "HIGHLY_PROFITABLE",
"type": "string"
},
{
"const": "PROFITABLE",
"type": "string"
},
{
"const": "LOW_MARGIN",
"type": "string"
},
{
"const": "BREAK_EVEN",
"type": "string"
},
{
"const": "UNPROFITABLE",
"type": "string"
},
{
"const": "INSUFFICIENT_DATA",
"type": "string"
}
]
},
"estimated_selling_price_jpy": {
"type": "number"
},
"estimated_total_cost_jpy": {
"type": "number"
},
"estimated_profit_jpy": {
"type": "number"
},
"profit_margin_percent": {
"type": "number"
},
"break_even_price_jpy": {
"type": "number"
},
"recommended_min_price_jpy": {
"type": "number"
},
"confidence": {
"minimum": 0,
"maximum": 100,
"type": "integer"
},
"recommendation": {
"anyOf": [
{
"const": "ENTER_MARKET",
"type": "string"
},
{
"const": "CONSIDER_WITH_CONDITIONS",
"type": "string"
},
{
"const": "REVIEW_BEFORE_ENTRY",
"type": "string"
},
{
"const": "DO_NOT_ENTER",
"type": "string"
}
]
},
"summary": {
"type": "string"
},
"cost_breakdown": {
"additionalProperties": false,
"type": "object",
"required": [
"product_cost_jpy",
"international_shipping_jpy",
"insurance_jpy",
"customs_duty_jpy",
"import_tax_jpy",
"customs_clearance_jpy",
"domestic_logistics_jpy",
"platform_fee_jpy",
"payment_fee_jpy",
"fixed_channel_fee_jpy",
"other_costs_jpy"
],
"properties": {
"product_cost_jpy": {
"type": "number"
},
"international_shipping_jpy": {
"type": "number"
},
"insurance_jpy": {
"type": "number"
},
"customs_duty_jpy": {
"type": "number"
},
"import_tax_jpy": {
"type": "number"
},
"customs_clearance_jpy": {
"type": "number"
},
"domestic_logistics_jpy": {
"type": "number"
},
"platform_fee_jpy": {
"type": "number"
},
"payment_fee_jpy": {
"type": "number"
},
"fixed_channel_fee_jpy": {
"type": "number"
},
"other_costs_jpy": {
"type": "number"
}
}
},
"assumptions": {
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"field",
"value",
"provenance",
"classification",
"reason"
],
"properties": {
"field": {
"type": "string"
},
"value": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"provenance": {
"anyOf": [
{
"const": "official",
"type": "string"
},
{
"const": "provided",
"type": "string"
},
{
"const": "estimated",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
},
"classification": {
"anyOf": [
{
"const": "CONFIRMED",
"type": "string"
},
{
"const": "CONDITIONAL",
"type": "string"
},
{
"const": "USER_INPUT",
"type": "string"
},
{
"const": "ASSUMPTION",
"type": "string"
},
{
"const": "MISSING",
"type": "string"
}
]
},
"reason": {
"type": "string"
},
"source_id": {
"type": "string"
}
}
}
},
"confidence_factors": {
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"field",
"weight",
"classification",
"awarded_points",
"reason"
],
"properties": {
"field": {
"type": "string"
},
"weight": {
"minimum": 1,
"maximum": 100,
"type": "integer"
},
"classification": {
"anyOf": [
{
"const": "CONFIRMED",
"type": "string"
},
{
"const": "CONDITIONAL",
"type": "string"
},
{
"const": "USER_INPUT",
"type": "string"
},
{
"const": "ASSUMPTION",
"type": "string"
},
{
"const": "MISSING",
"type": "string"
}
]
},
"awarded_points": {
"minimum": 0,
"maximum": 100,
"type": "number"
},
"reason": {
"type": "string"
}
}
}
},
"missing_fields": {
"type": "array",
"items": {
"type": "string"
}
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"sellability": {
"additionalProperties": false,
"type": "object",
"required": [
"supplied",
"status",
"request_id",
"reused_fields",
"requirement_count",
"restriction_count"
],
"properties": {
"supplied": {
"type": "boolean"
},
"status": {
"anyOf": [
{
"anyOf": [
{
"const": "SELLABLE",
"type": "string"
},
{
"const": "SELLABLE_WITH_CONDITIONS",
"type": "string"
},
{
"const": "REVIEW_REQUIRED",
"type": "string"
},
{
"const": "NOT_SELLABLE",
"type": "string"
}
]
},
{
"type": "null"
}
]
},
"request_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"reused_fields": {
"type": "array",
"items": {
"type": "string"
}
},
"requirement_count": {
"minimum": 0,
"type": "integer"
},
"restriction_count": {
"minimum": 0,
"type": "integer"
}
}
},
"data_freshness": {
"additionalProperties": false,
"type": "object",
"required": [
"engine",
"tariff_version",
"fx_version",
"fx_period_start",
"fx_period_end",
"fx_retrieved_at",
"fx_source_url",
"fx_status",
"fee_version",
"fee_checked_at",
"calculated_at"
],
"properties": {
"engine": {
"const": "profitability-v1",
"type": "string"
},
"tariff_version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"fx_version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"fx_period_start": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
]
},
"fx_period_end": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
]
},
"fx_retrieved_at": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
]
},
"fx_source_url": {
"anyOf": [
{
"format": "uri",
"type": "string"
},
{
"type": "null"
}
]
},
"fx_status": {
"anyOf": [
{
"const": "CURRENT",
"type": "string"
},
{
"const": "STALE",
"type": "string"
},
{
"const": "MISSING",
"type": "string"
}
]
},
"fee_version": {
"type": "string"
},
"fee_checked_at": {
"format": "date",
"type": "string"
},
"calculated_at": {
"format": "date-time",
"type": "string"
}
}
},
"sources": {
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"source_id",
"source_name",
"organization",
"official_url",
"version",
"effective_from",
"checked_at"
],
"properties": {
"source_id": {
"type": "string"
},
"source_name": {
"type": "string"
},
"organization": {
"type": "string"
},
"official_url": {
"format": "uri",
"type": "string"
},
"version": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"effective_from": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
]
},
"checked_at": {
"format": "date",
"type": "string"
}
}
}
},
"metadata": {
"additionalProperties": false,
"type": "object",
"required": [
"target_market",
"channel",
"currency",
"calculation_method"
],
"properties": {
"target_market": {
"const": "JP",
"type": "string"
},
"channel": {
"anyOf": [
{
"const": "amazon_jp",
"type": "string"
},
{
"const": "rakuten",
"type": "string"
},
{
"const": "yahoo_japan",
"type": "string"
},
{
"const": "own_ec",
"type": "string"
}
]
},
"currency": {
"const": "JPY",
"type": "string"
},
"calculation_method": {
"const": "deterministic_cost_model_v1",
"type": "string"
}
}
},
"disclaimer": {
"type": "string"
}
}
}Deterministic calculation
customs_value = product_cost + international_shipping + insurance
customs_duty = customs_value × duty_rate
import_tax = (customs_value + customs_duty) × 8% or 10%
total_cost = landed_cost + domestic_logistics + channel_fees + other_costs
profit = selling_price - total_cost
margin = profit / selling_priceBreak-even and recommended prices solve for variable channel fees instead of simply adding them after the fact.
Sellability compatibility
Pass the existing response unchanged as sellability_response. Profitability reuses its normalized product, HS code, origin, status, and request ID. NOT_SELLABLE produces a DO_NOT_ENTER recommendation even when the numeric margin is positive; the math remains visible.
Confidence
Confidence is deterministic. Official/current tariff and FX matches, provided selling price and freight, category, origin, and a supplied Sellability response add known weights. Defaults add fewer points. missing_fields tells the caller which additions improve the result.
Official sources
Limits and disclaimer
This is a planning estimate, not a customs filing, tax return, carrier quote, or platform invoice. Specific/compound tariff lines, origin qualification, alcohol/excise tax, FBA dimensional fees, advertising, returns, storage, and tax-credit treatment need explicit inputs or specialist confirmation.