You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Amazon SP-API确认发货时无法设置「配送服务」字段的问题

亚马逊SP-API设置追踪号后「配送服务」字段为空的问题

我在使用亚马逊SP-API时,通过以下代码设置订单追踪号:

public bool UpdateTrackingNumber(DtoShipment dto)
{
    ConfirmShipmentOrderItemsList orderItems = new ConfirmShipmentOrderItemsList();
    foreach (OrderItem item in dto.LstOrderItem)
    {
        orderItems.Add(new ConfirmShipmentOrderItem(item.OrderItemId, item.Quantity));
    }
    ConfirmShipmentRequest confirmShipmentRequest = new ConfirmShipmentRequest()
    {
        MarketplaceId = getMarketPlaceId(dto.CountryCode),
        PackageDetail = new PackageDetail()
        {
            TrackingNumber = dto.TrackingNumber,
            CarrierName = dto.CarrierName,  // "DPD Home 0-31.5kg"
            CarrierCode = dto.CarrierCode,  // "DPD"
            PackageReferenceId = "1",
            ShipDate = DateTime.UtcNow,
            OrderItems = orderItems
        }
    };
    AmazonConnection _connAmazon = createAmazonConnection("marketplaceId");
    return _connAmazon.Orders.ConfirmShipment(dto.AmazonOrderId, confirmShipmentRequest);
}

这段代码能成功设置追踪号,但订单的「配送服务」字段始终为空。想确认是否可以通过这个ConfirmShipment方法同时设置该字段?


补充说明

  • 编辑1:手动在亚马逊后台设置追踪号时,「承运人」会自动选中"DPD",「配送服务」自动选中「其他」,下方显示"DPD Home 0-31.5kg"。
  • 编辑2:通过API设置时,追踪号和承运人已正常设置,但「配送服务」字段仍为空。而手动操作只需输入追踪号并确认发货,所有相关字段都会自动填充。
  • 编辑3:感谢@Charlieface的建议,修改代码后问题解决,调整后的PackageDetail代码如下:
PackageDetail = new PackageDetail()
{
    TrackingNumber = dto.TrackingNumber,
    CarrierName = "",
    CarrierCode = dto.CarrierCode,  // "DPD"
    PackageReferenceId = "1",
    ShipDate = DateTime.UtcNow,
    OrderItems = orderItems,
    ShippingMethod = dto.CarrierName  // "DPD Home 0-31.5kg"
}

内容的提问来源于stack exchange,提问作者Muzaffer Galata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 12:16:15