CreateDeclarationShipment GraphQL 워크플로는 Japan Post 배송을 원시 입력부터 인쇄 가능한 라벨까지 한 번의 왕복으로 처리합니다.
CreateDeclarationShipment는 여섯 개의 *Workflow 뮤테이션을 하나의 GraphQL 요청으로 연결합니다. 각 단계는 이전 단계에서 제공한 데이터를 기반으로 하며, 모두 함께 제출되어 한 번의 왕복으로 완전한 배송을 생성할 수 있습니다:
partyCreateWorkflow → describe origin + destination parties
itemCreateWorkflow → describe the line items
cartonsCreateWorkflow → describe the physical packaging
shipmentRatingCreateWorkflow → record the carrier rate quote
landedCostCalculateWorkflow → calculate duties / taxes / fees
shipmentCreateWorkflow → create the shipment + label
Workflow 뮤테이션은 체인 방식으로 설계되었습니다: 한 단계의 ID를 다음 단계로 전달할 필요가 없으며, 단계별로 별도 요청을 보낼 필요도 없습니다. 전체 문서를 제출하면 최종 Shipment가 반환됩니다.
마지막 단계의 serviceLevel이 Japan Post 서비스 레벨(japan_post.*)이면, Zonos는 Verified Account의 Later Pay Number를 사용하여 귀하를 대신해 Japan Post Label API(code 52)를 호출하고, 라벨과 추적 번호를 생성하며, Declaration ID를 생성하고 연결합니다 — 모두 마지막 shipmentCreateWorkflow 단계 안에서 처리됩니다.
하나의 뮤테이션인 이유는? 각 단계는 이전 단계에 의존합니다(landed cost에는 품목과 당사자가 필요하고, 라벨에는 모든 것이 필요합니다). 하나의 GraphQL 문서로 묶으면 데이터 일관성이 유지되고 추가 왕복 5회를 피할 수 있습니다.
EU로 배송하시나요?
지원되는 EU 목적지에도 워크플로는 동일합니다. landedCostCalculateWorkflow에 설정할 IOSS 및 VAT 필드는 EU로 배송을 참조하세요.
2026년 10월 22일부터 미국행 배송에 필수입니다(채널 통합을 사용하는 경우 제외). Zonos 카탈로그의 SKU와 일치해야 합니다. 아래를 참조하세요.
productId
선택
내부 제품 ID.
measurements
선택
단위당 중량/치수.
HS code, country of origin, amount는 5단계에서 관세/세금 결과에 가장 큰 영향을 주는 세 필드입니다.
2026년 10월 22일부터: Zonos가 품목을 매칭하는 방법
2026년 10월 22일부터 Zonos는 각 품목의 카탈로그 레코드(HS code, 원산지, PGA 세부정보)를 사용하여 모든 미국행 우편 배송을 통관 신고(customs entry)로 제출합니다. Zonos는 다음 두 가지 방법 중 하나로 해당 레코드를 찾습니다.
주문과 카탈로그 항목을 동기화하는 채널 통합을 사용하는 경우: 채널의 주문에 Japan Post 추적 번호를 추가하세요. Zonos가 이를 다시 동기화하여 주문의 카탈로그 항목을 사용합니다. sku 전달은 권장되지만 필수는 아닙니다. 주문에 추적 번호가 없거나 아직 동기화되지 않은 경우(주문은 매시간 동기화됨)를 위한 백업 역할을 합니다.
채널 통합을 사용하지 않는 경우(CSV 또는 Catalog API로 카탈로그를 가져온 경우): 모든 품목에 sku를 전달하세요. Zonos 카탈로그에 있는 해당 품목의 SKU와 정확히 일치해야 합니다. 이 값이 없으면 Zonos가 품목을 PGA 데이터와 매칭할 수 없습니다.
마지막 단계 — Shipment 엔티티를 생성하고, carrier 라벨을 생성하며, (선택) commercial invoice / packing slip을 생성합니다.
Japan Post Verified Account의 경우, Zonos는 여기서 귀하를 대신해 Japan Post Label API(code 52)를 호출하고, Later Pay Number를 주입하며, Declaration ID를 생성하고 Japan Post가 반환한 추적 번호에 Declaration ID를 연결합니다.
주요 필드:
필드↕
상태↕
설명↕
serviceLevel
라벨 생성에 필수
발송할 Japan Post 서비스(예: japan_post.air.ems_merchandise). japan_post.* 서비스 레벨이어야 합니다.
generateLabel
선택
기본값 true; 라벨을 반환하려면 true여야 합니다.
contentsType
권장
통관 처리를 결정합니다. SALE_OF_GOODS, ECOMMERCE_GOODS, COMMERCIAL_GOODS, COMMERCIAL_SAMPLE, RETURNED_GOODS, GIFT, DOCUMENTS, OTHER 중 하나.
nonDelivery
선택
소포를 배송할 수 없을 때 Japan Post가 취할 조치. 아래 참고.
references
선택
라벨 및 commercial invoice에 인쇄되는 판매자 제공 참조 번호. 아래 참고.
contentsType의 경우, Verified Account 트래픽에서 가장 흔한 값은 ECOMMERCE_GOODS(소비자에게 판매, BtoC)와 COMMERCIAL_GOODS(기업 간 판매, BtoB)입니다. 이 값은 Zonos가 Japan Post 라벨 호출 시 전송하는 pkgType을 결정하므로, 선택에 따라 통관 신고서에 인쇄되는 내용이 달라집니다 — 단순한 라벨 표기 이상의 의미입니다.
nonDelivery 하위 입력
소포를 배송할 수 없는 경우 — 수취인이 수령을 거부하거나, 국경에서 반려되거나, 주소 오류로 배송 불가한 경우 — Japan Post가 취할 조치를 지정합니다.
option은 정확히 다음 네 가지 값만 허용합니다. RETURN 값은 존재하지 않습니다 — 소포가 반송되는 시점을 지정하려면 RETURN_AFTER_RETENTION 또는 RETURN_IMMEDIATELY를 사용하세요.
option↕
Dashboard 대응 항목↕
Japan Post의 동작↕
RETURN_AFTER_RETENTION
Return
목적지 우체국에서 보관 기간 동안 소포를 보관한 후 발송인에게 반송합니다.
RETURN_IMMEDIATELY
Return
보관 없이 즉시 소포를 발송인에게 반송합니다.
FORWARD
Redirection
소포를 다른 주소로 전달합니다. 추가 우편 요금이 부과됩니다.
ABANDON
Renounce
목적지에서 소포를 폐기합니다. 반송되는 것이 없으며 반송 요금도 없습니다.
API는 두 반송 변형을 각각 노출하지만, Dashboard의 Return 옵션은 두 가지를 모두 포괄합니다.
transportMethod는 AIR 또는 MOST_ECONOMICAL을 허용하며, 반송되는 소포가 돌아오는 방식을 지정합니다. 두 RETURN_* 옵션에만 적용됩니다 — Dashboard는 Return이 선택된 경우에만 대응하는 Return method 필드를 표시합니다.
서비스 레벨 코드는 언더스코어가 아니라 점(.)을 사용합니다. 오류 메시지나 내부 참조에서 언더스코어 형식(japan_post_air_parcel)을 볼 수도 있지만, 이는 유효한 입력이 아닙니다.
항공 서비스
코드↕
Japan Post 서비스↕
우편 종류↕
japan_post.air.ems_documents
EMS(서류)
1-0
japan_post.air.ems_merchandise
EMS(상품)
1-1
japan_post.air.parcel
국제 소포
1-5
japan_post.air.packet
International Air Packet
1-8
japan_post.air.small_packet
소형 소포
1-9
japan_post.air.printed_matter_registered
인쇄물, 등기
1-A
japan_post.air.printed_matter
인쇄물
1-B
japan_post.air.letter_registered
서신, 등기
1-C
japan_post.air.letter
서신
1-D
선편 서비스
코드↕
Japan Post 서비스↕
우편 종류↕
japan_post.surface.parcel
국제 소포
2-5
japan_post.surface.small_packet
소형 소포
2-9
japan_post.surface.printed_matter
인쇄물
2-B
japan_post.surface.letter
서신
2-D
유사 서비스 선택
소형 소포 vs. International Air Packet. 둘 다 2kg으로 제한됩니다. japan_post.air.packet은 Japan Post의 추적 가능한 소형 소포 서비스입니다. japan_post.air.small_packet은 추적이 불가능한 동등한 서비스입니다. 경량 소포에 추적 기능이 필요하면 japan_post.air.packet을 사용하세요.
등기 변형. 서신 및 인쇄물의 경우, 등기(書留) 버전의 서비스를 사용하면 추적 기능이 추가됩니다. japan_post.air.printed_matter와 japan_post.air.letter 자체에는 추적 기능이 포함되어 있지 않습니다.
사용 중단된 코드
japan_post.air.epacket_light는 International e-Packet Light였습니다. Japan Post는 2026년 6월 1일에 이 서비스명을 International Air Packet으로 변경하고, 모든 국가 및 지역으로 확대했습니다. 서비스 자체는 변경되지 않았습니다.
기존 코드는 여전히 정상적으로 해석되므로 기존 통합은 계속 작동하지만, 신규 작업에는 japan_post.air.packet을 사용하세요.
운송 방식 코드
japan_post.air, japan_post.surface, japan_post.economy_air, japan_post.custom도 해석되지만, 이는 특정 우편 상품이 아니라 운송 방식 또는 대체값을 나타냅니다. 일반적인 배송에는 위의 서비스 코드 중 하나를 사용하세요.
전송하는 코드 검증
인식되지 않는 serviceLevelCode는 오류를 발생시키지 않습니다. 요청은 errors 배열 없이 HTTP 200을 반환하고, serviceLevel은 null로 반환되며, shipping이 landed cost 총액에서 제외됩니다 — 따라서 응답은 정상처럼 보이지만 금액은 잘못됩니다.
총액을 신뢰하기 전에 항상 shipmentRatingCreateWorkflow.serviceLevel이 null이 아닌지 확인하세요.
현재 목록은 언제든지 다음과 같이 가져올 수 있습니다:
{
serviceLevels(carrier:"carrier_00004c9b-9431-4518-bfbc-b9f8476335b1"){
code
name
}}
이 쿼리는 carrier ID를 사용합니다. carrier 코드 japan_post를 전달하면 오류 없이 빈 목록이 반환됩니다.
유효성 검사 오류(필수 필드 누락, 잘못된 국가 코드 등)는 표준 GraphQL errors 배열로 반환되며 체인의 나머지를 중단합니다.
Japan Post 오류(라벨 생성 실패, 잘못된 주소 등)는 shipmentCreateWorkflow의 GraphQL 오류로 표시됩니다. 재시도가 필요하면 지원팀에 문의하세요 — 권장 경로는 수정된 입력으로 전체 뮤테이션을 다시 제출하는 것입니다.
VALIDATION_INVALID_TYPE_VARIABLE
{"errors":[{"message":"invalid type for variable: 'shipmentInput'","extensions":{"name":"shipmentInput","code":"VALIDATION_INVALID_TYPE_VARIABLE"}}]}
이 오류는 실제로 잘못된 필드가 아니라 변수 전체의 이름을 표시합니다. 거의 항상 해당 변수 안의 enum 값 하나가 자신의 enum 멤버가 아니라는 의미입니다 — 가장 흔한 경우는 nonDelivery.option, contentsType, 또는 serviceLevel입니다.
JSON 타입 문제가 아닙니다. boolean과 숫자에 따옴표를 붙이거나 제거해도 바뀌지 않습니다. payload가 거기까지 도달하지 못하고 enum 단계에서 먼저 거부되기 때문입니다.
각 단계는 독립적으로 보호됩니다. API key는 체인의 각 엔티티에 대한 write scope(ITEM_WRITE, CARTON_WRITE, SHIPMENT_RATING_WRITE, LANDED_COST_WRITE, SHIPMENT_WRITE)를 보유해야 합니다. Verified Account의 표준 판매자 역할은 이를 모두 부여합니다.
단일 배송 생성
단일 배송 생성
CreateDeclarationShipmentGraphQL 워크플로는 Japan Post 배송을 원시 입력부터 인쇄 가능한 라벨까지 한 번의 왕복으로 처리합니다.CreateDeclarationShipment는 여섯 개의*Workflow뮤테이션을 하나의 GraphQL 요청으로 연결합니다. 각 단계는 이전 단계에서 제공한 데이터를 기반으로 하며, 모두 함께 제출되어 한 번의 왕복으로 완전한 배송을 생성할 수 있습니다:Workflow뮤테이션은 체인 방식으로 설계되었습니다: 한 단계의 ID를 다음 단계로 전달할 필요가 없으며, 단계별로 별도 요청을 보낼 필요도 없습니다. 전체 문서를 제출하면 최종Shipment가 반환됩니다.마지막 단계의
serviceLevel이 Japan Post 서비스 레벨(japan_post.*)이면, Zonos는 Verified Account의 Later Pay Number를 사용하여 귀하를 대신해 Japan Post Label API(code 52)를 호출하고, 라벨과 추적 번호를 생성하며, Declaration ID를 생성하고 연결합니다 — 모두 마지막shipmentCreateWorkflow단계 안에서 처리됩니다.지원되는 EU 목적지에도 워크플로는 동일합니다.
landedCostCalculateWorkflow에 설정할 IOSS 및 VAT 필드는 EU로 배송을 참조하세요.엔드포인트 및 인증
이 체인의 모든 요청은 동일한 엔드포인트를 사용합니다. 헤더에 전달하는 값은 설정에 따라 다릅니다 — 해당 탭을 선택하세요.
URL:
헤더:
귀하의 Verified Account로 자체 주문을 발송합니다. 본인으로 인증하면 됩니다 — account key가 필요하지 않습니다.
확인 위치: Zonos Dashboard → Settings → Integrations → Account Key 섹션. API key 행의 token을 복사하면
credentialToken입니다.예제 요청
DDP로 미국에 발송하는 단일 Japan Post 소포에 대한
CreateDeclarationShipment요청 전체 — 뮤테이션, 변수, 응답 — 을 복사하여 수정할 수 있습니다. 각 입력은 아래 단계별 섹션에서 설명합니다.mutation CreateDeclarationShipment($partyInput: [PartyCreateWorkflowInput!]!$itemInput: [ItemCreateWorkflowInput!]!$cartonInput: [CartonCreateWorkflowInput!]!$shipmentRatingInput: ShipmentRatingCreateWorkflowInput!$landedCostInput: LandedCostWorkFlowInput!$shipmentInput: ShipmentCreateWorkflowInput!) {partyCreateWorkflow(input: $partyInput) {idtypelocation {line1localitypostalCodecountryCode}}itemCreateWorkflow(input: $itemInput) {idnameskuamountcurrencyCodehsCode}cartonsCreateWorkflow(input: $cartonInput) {idlengthwidthheightdimensionalUnitweightweightUnit}shipmentRatingCreateWorkflow(input: $shipmentRatingInput) {idamount}landedCostCalculateWorkflow(input: $landedCostInput) {idmethodcurrencyCodeamountSubtotals {dutiestaxesfeesshippinglandedCostTotal}}shipmentCreateWorkflow(input: $shipmentInput) {idtrackingDetails {number}shipmentCartons {label {url}}}}단계별 설명
아래 각 표의 상태 열은 다음 용어를 사용합니다:
1.
partyCreateWorkflow배송에 관련된 parties를 생성합니다 — 최소
ORIGIN(발송지)과DESTINATION(구매자/수취인)이 필요합니다.typeORIGIN과DESTINATION이 이 플로우에 필요한 두 가지 유형입니다. 그 외(CONSIGNEE,EXPORTER,IMPORTER_OF_RECORD,PAYOR등)도 존재하지만 여기서는 사용하지 않습니다.location.countryCodelocation.line1,locality,administrativeAreaCode,postalCodeperson.firstName,lastName,phoneperson.companyName,email예제 페이로드:
[ { "type": "DESTINATION", "location": { "countryCode": "US" }, "person": {} }, { "type": "ORIGIN", "location": { "countryCode": "JP" }, "person": {} } ]응답에는 생성된
PartyID와 해석된 주소 필드가 포함됩니다.2.
itemCreateWorkflow배송을 구성하는 line items를 생성합니다. commercial invoice에 표시되고 landed cost 계산을 주도하는 SKU입니다.
currencyCodequantityamounttotalAmount를 제공하지 않으면 필수.totalAmountamount대안;amount는totalAmount / quantity에서 계산됩니다.hsCodecountryOfOriginname,descriptioncustomsDescriptionskuproductIdmeasurementsHS code, country of origin, amount는 5단계에서 관세/세금 결과에 가장 큰 영향을 주는 세 필드입니다.
2026년 10월 22일부터 Zonos는 각 품목의 카탈로그 레코드(HS code, 원산지, PGA 세부정보)를 사용하여 모든 미국행 우편 배송을 통관 신고(customs entry)로 제출합니다. Zonos는 다음 두 가지 방법 중 하나로 해당 레코드를 찾습니다.
sku전달은 권장되지만 필수는 아닙니다. 주문에 추적 번호가 없거나 아직 동기화되지 않은 경우(주문은 매시간 동기화됨)를 위한 백업 역할을 합니다.sku를 전달하세요. Zonos 카탈로그에 있는 해당 품목의 SKU와 정확히 일치해야 합니다. 이 값이 없으면 Zonos가 품목을 PGA 데이터와 매칭할 수 없습니다.EU로 배송하시나요? EU 제품 식별자도 필요합니다.
3.
cartonsCreateWorkflow물리적 패키지 — item을 담는 박스, 폴리백, 봉투 — 를 생성합니다.
dimensionalUnitINCH또는CENTIMETER.weight,weightUnitlength,width,heighttypePACKAGE.각 carton은 6단계에서 carrier 라벨의 하나의 parcel이 됩니다. carton이 여러 개이면 carton당 추적 번호 하나씩인 멀티피스 배송입니다.
4.
shipmentRatingCreateWorkflow구매자에게 청구하는 배송 요금 견적을 기록합니다.
amount0을 전달.currencyCodeamount의 통화.serviceLevelCodejapan_post.air.parcel). 전체 목록은 Japan Post 서비스 레벨을 참고하세요.displayName이것은 checkout에서 구매자에게 제시된 요금입니다. landed cost 계산의 "shipping" 소계로 반영되어 관세·세금이 올바른 CIF 값 기준으로 계산됩니다.
5.
landedCostCalculateWorkflow목적지 국가에 대한 관세, 세금, 수수료 계산을 실행합니다. 이전 단계의 items, parties, 배송비를 사용합니다.
endUseNOT_FOR_RESALE또는FOR_RESALE. 일부 목적지는 상업용/개인용 end use에 따라 다른 요율을 적용합니다.tariffRateZONOS_PREFERRED. Zonos에 적용할 관세 출처/방법론을 지정합니다.calculationMethodDDP(구매자 선납) 또는DDU(구매자 착불). 선납에는DDP를 사용.LandedCost.amountSubtotals에 관세/세금 포함 여부를 결정합니다.currencyCodearrivalDate응답에는
amountSubtotals(duties,taxes,fees,shipping,landedCostTotal)가 포함됩니다 — checkout에서 구매자에게 표시하고 commercial invoice에 인쇄하는 수치입니다.6.
shipmentCreateWorkflow마지막 단계 —
Shipment엔티티를 생성하고, carrier 라벨을 생성하며, (선택) commercial invoice / packing slip을 생성합니다.Japan Post Verified Account의 경우, Zonos는 여기서 귀하를 대신해 Japan Post Label API(code 52)를 호출하고, Later Pay Number를 주입하며, Declaration ID를 생성하고 Japan Post가 반환한 추적 번호에 Declaration ID를 연결합니다.
주요 필드:
serviceLeveljapan_post.air.ems_merchandise).japan_post.*서비스 레벨이어야 합니다.generateLabeltrue; 라벨을 반환하려면true여야 합니다.contentsTypeSALE_OF_GOODS,ECOMMERCE_GOODS,COMMERCIAL_GOODS,COMMERCIAL_SAMPLE,RETURNED_GOODS,GIFT,DOCUMENTS,OTHER중 하나.nonDeliveryreferencesdeclaredValue/isDeclaredValueshipmentConsolidationIdcontentsType의 경우, Verified Account 트래픽에서 가장 흔한 값은ECOMMERCE_GOODS(소비자에게 판매, BtoC)와COMMERCIAL_GOODS(기업 간 판매, BtoB)입니다. 이 값은 Zonos가 Japan Post 라벨 호출 시 전송하는pkgType을 결정하므로, 선택에 따라 통관 신고서에 인쇄되는 내용이 달라집니다 — 단순한 라벨 표기 이상의 의미입니다.nonDelivery하위 입력소포를 배송할 수 없는 경우 — 수취인이 수령을 거부하거나, 국경에서 반려되거나, 주소 오류로 배송 불가한 경우 — Japan Post가 취할 조치를 지정합니다.
option은 정확히 다음 네 가지 값만 허용합니다.RETURN값은 존재하지 않습니다 — 소포가 반송되는 시점을 지정하려면RETURN_AFTER_RETENTION또는RETURN_IMMEDIATELY를 사용하세요.option↕RETURN_AFTER_RETENTIONRETURN_IMMEDIATELYFORWARDABANDONAPI는 두 반송 변형을 각각 노출하지만, Dashboard의 Return 옵션은 두 가지를 모두 포괄합니다.
transportMethod는AIR또는MOST_ECONOMICAL을 허용하며, 반송되는 소포가 돌아오는 방식을 지정합니다. 두RETURN_*옵션에만 적용됩니다 — Dashboard는 Return이 선택된 경우에만 대응하는 Return method 필드를 표시합니다.{ "nonDelivery": { "option": "RETURN_AFTER_RETENTION", "transportMethod": "MOST_ECONOMICAL" } }Dashboard의 Create label 대화상자에 있는 If undeliverable 선택 항목이 동일한 필드에 값을 씁니다. 따라서 Dashboard에서 생성한 라벨과 API로 생성한 라벨은 동일하게 동작합니다.
references하위 입력이 필드는 carrier 라벨 및/또는 commercial invoice에 인쇄됩니다. PO 번호, license 번호, 수취인 또는 세관이 확인해야 하는 자유 텍스트 비고를 표시하는 데 사용하세요.
invoiceNumberpurchaseOrderNumberlicenseNumbercertificateNumberpaymentConditionscustomsRemarkstaxCode응답
반환된
Shipment의 주요 필드는 다음과 같습니다:{ id trackingDetails { number } shipmentCartons { label { url labelImage } } }trackingDetails.number는 Japan Post 추적 번호입니다.label객체는 라벨을 두 가지 방식으로 반환할 수 있습니다 — 워크플로에 맞는 방식(또는 둘 다)을 요청하세요:urllabelImage필요한 필드만 선택하세요.
url을 요청하면 응답 크기가 작아지고,labelImage를 요청하면 전체 라벨이 inline으로 반환되어 가져오기 위한 두 번째 왕복이 필요 없습니다. 위 예제는url을 요청합니다.Japan Post 서비스 레벨
다음 코드 중 하나를
shipmentRatingCreateWorkflow의serviceLevelCode로 전달하세요.서비스 레벨 코드는 언더스코어가 아니라 점(.)을 사용합니다. 오류 메시지나 내부 참조에서 언더스코어 형식(
japan_post_air_parcel)을 볼 수도 있지만, 이는 유효한 입력이 아닙니다.항공 서비스
japan_post.air.ems_documents1-0japan_post.air.ems_merchandise1-1japan_post.air.parcel1-5japan_post.air.packet1-8japan_post.air.small_packet1-9japan_post.air.printed_matter_registered1-Ajapan_post.air.printed_matter1-Bjapan_post.air.letter_registered1-Cjapan_post.air.letter1-D선편 서비스
japan_post.surface.parcel2-5japan_post.surface.small_packet2-9japan_post.surface.printed_matter2-Bjapan_post.surface.letter2-D유사 서비스 선택
소형 소포 vs. International Air Packet. 둘 다 2kg으로 제한됩니다.
japan_post.air.packet은 Japan Post의 추적 가능한 소형 소포 서비스입니다.japan_post.air.small_packet은 추적이 불가능한 동등한 서비스입니다. 경량 소포에 추적 기능이 필요하면japan_post.air.packet을 사용하세요.등기 변형. 서신 및 인쇄물의 경우, 등기(書留) 버전의 서비스를 사용하면 추적 기능이 추가됩니다.
japan_post.air.printed_matter와japan_post.air.letter자체에는 추적 기능이 포함되어 있지 않습니다.사용 중단된 코드
japan_post.air.epacket_light는 International e-Packet Light였습니다. Japan Post는 2026년 6월 1일에 이 서비스명을 International Air Packet으로 변경하고, 모든 국가 및 지역으로 확대했습니다. 서비스 자체는 변경되지 않았습니다.기존 코드는 여전히 정상적으로 해석되므로 기존 통합은 계속 작동하지만, 신규 작업에는
japan_post.air.packet을 사용하세요.운송 방식 코드
japan_post.air,japan_post.surface,japan_post.economy_air,japan_post.custom도 해석되지만, 이는 특정 우편 상품이 아니라 운송 방식 또는 대체값을 나타냅니다. 일반적인 배송에는 위의 서비스 코드 중 하나를 사용하세요.전송하는 코드 검증
인식되지 않는
serviceLevelCode는 오류를 발생시키지 않습니다. 요청은errors배열 없이 HTTP 200을 반환하고,serviceLevel은null로 반환되며, shipping이 landed cost 총액에서 제외됩니다 — 따라서 응답은 정상처럼 보이지만 금액은 잘못됩니다.총액을 신뢰하기 전에 항상
shipmentRatingCreateWorkflow.serviceLevel이 null이 아닌지 확인하세요.현재 목록은 언제든지 다음과 같이 가져올 수 있습니다:
{ serviceLevels(carrier: "carrier_00004c9b-9431-4518-bfbc-b9f8476335b1") { code name } }이 쿼리는 carrier ID를 사용합니다. carrier 코드
japan_post를 전달하면 오류 없이 빈 목록이 반환됩니다.오류 처리
errors배열로 반환되며 체인의 나머지를 중단합니다.shipmentCreateWorkflow의 GraphQL 오류로 표시됩니다. 재시도가 필요하면 지원팀에 문의하세요 — 권장 경로는 수정된 입력으로 전체 뮤테이션을 다시 제출하는 것입니다.VALIDATION_INVALID_TYPE_VARIABLE{ "errors": [ { "message": "invalid type for variable: 'shipmentInput'", "extensions": { "name": "shipmentInput", "code": "VALIDATION_INVALID_TYPE_VARIABLE" } } ] }이 오류는 실제로 잘못된 필드가 아니라 변수 전체의 이름을 표시합니다. 거의 항상 해당 변수 안의 enum 값 하나가 자신의 enum 멤버가 아니라는 의미입니다 — 가장 흔한 경우는
nonDelivery.option,contentsType, 또는serviceLevel입니다.JSON 타입 문제가 아닙니다. boolean과 숫자에 따옴표를 붙이거나 제거해도 바뀌지 않습니다. payload가 거기까지 도달하지 못하고 enum 단계에서 먼저 거부되기 때문입니다.
잘못된 필드를 찾으려면 변수 안의 모든 enum 값 필드를 허용 값과 비교하세요:
nonDelivery.optionRETURN_AFTER_RETENTION,RETURN_IMMEDIATELY,FORWARD,ABANDON—RETURN은 없음nonDelivery.transportMethodAIR,MOST_ECONOMICALcontentsTypeSALE_OF_GOODS,ECOMMERCE_GOODS,COMMERCIAL_GOODS,COMMERCIAL_SAMPLE,RETURNED_GOODS,GIFT,DOCUMENTS,OTHERserviceLeveljapan_post.*서비스 레벨 코드모든 입력의 전체 enum 멤버는 API reference의 해당 타입 페이지에 나열되어 있습니다.
권한
각 단계는 독립적으로 보호됩니다. API key는 체인의 각 엔티티에 대한 write scope(
ITEM_WRITE,CARTON_WRITE,SHIPMENT_RATING_WRITE,LANDED_COST_WRITE,SHIPMENT_WRITE)를 보유해야 합니다. Verified Account의 표준 판매자 역할은 이를 모두 부여합니다.다음 단계
CartonCreateWorkflowInput ItemCreateWorkflowInput LandedCostWorkFlowInput PartyCreateWorkflowInput ShipmentCreateWorkflowInput ShipmentRatingCreateWorkflowInput
cartonsCreateWorkflow itemCreateWorkflow landedCostCalculateWorkflow partyCreateWorkflow shipmentCreateWorkflow shipmentRatingCreateWorkflow
이 페이지가 도움이 되었나요?