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

使用Ebay API更新变体商品库存与价格的问题求助

eBay变体商品库存更新问题解决方案

一、bulkUpdatePriceQuantity接口报错原因及修正

bulkUpdatePriceQuantity属于Inventory API,支持变体商品,报错"SKU不存在"通常是以下原因:

  • 子变体SKU未在eBay Inventory系统中创建独立的Inventory Item/Offer,或是SKU拼写错误
  • 请求中的offerId与对应子变体的Offer不匹配,需确保每个子变体的offerId是其自身的Offer ID(而非父商品的)
  • 子变体未正确关联到父商品的Inventory Item组

二、ReviseFixedPriceItem接口调用失败修正

该接口属于Trading API,支持批量更新变体库存,你的请求存在以下问题及修正方案:

1. JSON请求及C#代码修正

错误点:

  • Authorization头格式错误:应为Bearer {token}而非TOKEN {token}
  • URL缺少必要参数:需指定callname、siteid、version
  • 请求体缺少API版本字段

修正后的C#代码:

using (var client = new HttpClient())
{
    // 修正认证头格式
    client.DefaultRequestHeaders.Add("Authorization", "Bearer " + EBAY_TOKEN);
    client.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/json; charset=utf-8");
    client.DefaultRequestHeaders.Add("X-EBAY-C-MARKETPLACE-ID", "EBAY_IT");
    client.DefaultRequestHeaders.Add("Accept", "application/json");
    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

    System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
    // 修正URL,添加必要参数(siteid=101对应意大利站点,version用最新版本)
    var url = $"https://api.ebay.com/ws/api.dll?callname=ReviseFixedPriceItem&siteid=101&version=1199";

    // 修正请求体,添加Version字段
    var requestBody = new
    {
        Version = "1199",
        RequesterCredentials = new { eBayAuthToken = EBAY_TOKEN },
        Item = new
        {
            ItemID = "115809802256",
            Variations = new
            {
                Variation = new[]
                {
                    new { SKU = "STALLION_0", Quantity = 4 }
                }
            }
        }
    };

    string _jsonContent = JsonConvert.SerializeObject(requestBody);
    HttpContent _httpContent = new StringContent(_jsonContent, Encoding.UTF8, "application/json");

    var response = client.PostAsync(url, _httpContent).Result;
    response.EnsureSuccessStatusCode();
    var resp = response.Content.ReadAsStringAsync().Result;
}

2. XML请求及C#代码修正

错误点:

  • URL未指定callname等接口参数,导致eBay未识别调用的接口
  • 编码使用ASCII,会导致非ASCII字符乱码
  • XML请求体缺少RequesterCredentials认证节点
  • 未添加必要请求头(如API版本、站点信息)

修正后的XML请求体:

<?xml version="1.0" encoding="UTF-8"?>
<ReviseFixedPriceItemRequest xmlns="urn:ebay:apis:eBLBaseComponents">
    <RequesterCredentials>
        <eBayAuthToken>你的eBay令牌</eBayAuthToken>
    </RequesterCredentials>
    <Version>1199</Version>
    <ErrorLanguage>it_IT</ErrorLanguage>
    <WarningLevel>Low</WarningLevel>
    <Item>
        <ItemID>115711360327</ItemID>
        <Variations>
            <Variation>
                <SKU>07000-129-M_39</SKU>
                <Quantity>0</Quantity>
            </Variation>
            <Variation>
                <SKU>07000-129-M_40</SKU>
                <Quantity>1</Quantity>
            </Variation>
            <!-- 其他变体省略 -->
        </Variations>
    </Item>
</ReviseFixedPriceItemRequest>

修正后的C#代码:

var xml = "上面的XML内容";
var request = (HttpWebRequest)WebRequest.Create("https://api.ebay.com/ws/api.dll?callname=ReviseFixedPriceItem&siteid=101&version=1199");
// 修正编码为UTF8
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(xml);
request.ContentType = "text/xml; charset=utf-8";
request.ContentLength = bytes.Length;
request.Method = "POST";
// 添加必要请求头
request.Headers.Add("X-EBAY-API-VERSION", "1199");
request.Headers.Add("X-EBAY-API-SITEID", "101");

using (Stream requestStream = request.GetRequestStream())
{
    requestStream.Write(bytes, 0, bytes.Length);
}

using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
    if (response.StatusCode == System.Net.HttpStatusCode.OK)
    {
        using (Stream responseStream = response.GetResponseStream())
        {
            string responseStr = new StreamReader(responseStream).ReadToEnd();
            return responseStr;
        }
    }
    return null;
}

三、替代接口推荐

如果更倾向于使用Inventory API,可以选择:

  • updateInventoryItem:单独更新单个变体的库存,只需指定子变体SKU和库存数量
  • bulkUpdateInventoryItem:批量更新多个变体的库存,请求格式更简洁,无需关联Offer ID

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 20:44:56