1C-Bitrix Integration with Avito: XML Feed, API & Automation

Entering Avito is often delayed due to format incompatibilities and strict moderation rules. We develop integration of 1C-Bitrix with Avito via XML feed and API, automating the upload and management of listings. Our team delivers the project turnkey—from audit to support—ensuring stable operation and compliance with all platform requirements.

Our competencies:

Frequently Asked Questions

1C-Bitrix Integration with Avito

We regularly encounter situations where an online store on 1C-Bitrix is already running, but entering Avito is delayed due to format incompatibility and moderation complexities. Avito is not a classic marketplace but a classifieds board with marketplace elements. This determines the integration specifics: products are uploaded as listings via XML feed (Avito Autoload), management is done through the personal account or REST API. The main challenge is that each Avito category has its own set of fields and moderation rules, different from any other marketplace.

Our experience shows that a properly configured integration pays off within the first months by automating routine operations. We guarantee correct handling of category fields and compliance with all Avito requirements.

Two Integration Channels

1. Avito Autoload (XML Feed). The primary method for mass upload. The seller places an XML file on their server and specifies the URL in Avito settings: Professional tools → Autoload. Avito parses the feed on a schedule (every few hours).

2. Avito API (https://api.avito.ru/). REST API for managing listings, statistics, messages. Authorization via OAuth 2.0 (client_id + client_secret → access_token).

For integration with 1C-Bitrix, we typically use a combination: feed for catalog upload + API for status monitoring and automation.

Avito Autoload Feed Format

The Avito XML feed has its own schema, incompatible with YML:

<Ads formatVersion="3" target="Avito.ru">
  <Ad>
    <Id>unique_id</Id>
    <Category>Consumer Electronics</Category>
    <AdType>Product purchased for resale</AdType>
    <Title>Samsung Galaxy S24 smartphone</Title>
    <Description>Description text</Description>
    <Price>79990</Price>
    <Images>
      <Image url="https://site.ru/photo1.jpg"/>
      <Image url="https://site.ru/photo2.jpg"/>
    </Images>
    <Address>Moscow, Primernaya St., 1</Address>
    <ContactMethod>By phone and messages</ContactMethod>
    <!-- Category-specific fields -->
    <GoodsType>Phones</GoodsType>
    <Brand>Samsung</Brand>
    <Model>Galaxy S24</Model>
  </Ad>
</Ads>

Category fields are the main challenge. For the "Consumer Electronics" category, you need GoodsType, Brand, Model. For "Clothing" — Size, Gender, ClothingType. For "Auto Parts" — OEMPartNumber, Brand, PartType. The full list of categories and fields is available in the Avito Autoload documentation.

Generating the Feed from Bitrix Information Block

There is no standard export profile for Avito in Bitrix. Implementation: Custom PHP script — file /local/avito_feed.php, run by cron or accessible via URL. Logic:

  1. Get information block elements via CIBlockElement::GetList() with active and stock filters.
  2. For each element, determine the Avito category. Mapping is stored in a separate element property (PROPERTY_AVITO_CATEGORY) or in a mapping table of information block section → Avito category.
  3. Depending on the category, generate a set of specific tags.
  4. Assemble XML and write to file.

Field mapping:

Avito tag Bitrix field Note
<Id> Element ID or article Must be stable — changing ID creates a new listing
<Title> NAME Up to 50 characters for most categories
<Description> DETAIL_TEXT Up to 7500 characters, limited HTML
<Price> Catalog price Integer, dollars
<Images> DETAIL_PICTURE + multiple property Up to 10 photos, minimum 400×300
<Address> Fixed or from property Must match the address in the Avito profile

Problem with <Id>. Avito identifies a listing by <Id>. If the ID changes (e.g., during catalog reindexing in Bitrix), Avito will create a new listing and delete the old one. Views, statistics, and reviews are lost. Use article or external code (XML_ID), not the numeric element ID.

Problem with <Address>. Avito links a listing to an address. The address in the feed must exactly match one of the addresses specified in the seller's profile. Mismatch leads to listing rejection.

How to Set Up an XML Feed for Avito Without Errors?

When setting up the feed, it is important to provide category and field mapping for each product group. If your catalog contains 2000 products and moderation takes 2 hours on average, manual processing becomes impossible. We automate this process through custom mapping tables.

Avito API: Management and Automation

The API is used for tasks the feed does not cover:

  • Get listing statistics. GET /core/v1/items/{item_id}/stats — views, calls, messages. Data can be saved to an information block user property for performance analysis.
  • Manage listings. PUT /core/v1/items/{item_id} — update fields without reloading the feed.
  • Get messages. GET /messenger/v3/accounts/{user_id}/chats — automate replies or forward to Bitrix24 CRM.
  • Activate/deactivate. When a product runs out, deactivate the listing via API faster than waiting for feed update.

Handling SKUs

Avito does not support product variations within one listing. Each SKU (size, color) is a separate listing. For an online store with a size grid, this means:

  • T-shirt S, M, L, XL — 4 listings in the feed.
  • Each with a unique <Id> (e.g., ARTICLE_SIZE).
  • Each with size indicated in title or description.

When generating the feed, we iterate over the SKU information block and create a separate <Ad> for each offer with non-zero stock. This significantly increases feed size — for a catalog of 1000 products with 4 sizes, that's 4000 listings.

Limits and Moderation

Avito limits the number of listings: free limit depends on category (usually 1–5), then paid listing packages. For online stores, the "For Business" tariff provides increased limits.

Moderation of each listing takes 1–24 hours. Common rejection reasons: duplicates (identical photos or descriptions), prohibited items, category mismatch, spammy description.

What's Included in the Integration Work?

  • Audit of the current catalog and SKU structure in 1C-Bitrix.
  • Development of an XML feed generation module with category and field mapping.
  • Configuration of image export and error handling.
  • Connection of Avito API for monitoring and automation (optional).
  • Testing the feed on a test Avito account, fixing issues.
  • Documentation of the process and staff training.
  • Support after launch for 1 month.
Examples of common integration mistakes - Using the numeric information block ID as `` — leads to statistics loss upon reindexing. - Missing mandatory category fields — listing fails moderation. - Address mismatch between feed and Avito profile. - Exceeding the listing limit without subscribing to the "For Business" tariff.

Integration Timeline

Scenario Timeline
Simple feed, one category, up to 200 products 3–5 days
Multiple categories, field mapping, 1000+ products 1–1.5 weeks
Full integration: feed + API + statistics + CRM 1.5–2 weeks

If you need turnkey 1C-Bitrix integration with Avito, contact us — we will evaluate your project and prepare a commercial proposal. In our work, we use certified solutions and guarantee compliance with all Avito requirements.