Classifieds Portal Development on 1C-Bitrix
We often encounter a scenario where a client wants to launch a classifieds portal but loses users at the listing submission stage. Our experience shows that designing a classifieds portal on 1C-Bitrix should start with the user scenario, not the database. A person wants to sell a sofa — takes a photo, writes a description, visits the site, and hits a 30-field form. They give up and go to Avito. If the portal loses users at submission, everything else (moderation, search, monetization) is irrelevant. We've seen that 90% of users abandon a form if it has more than 5 required fields. So the first step is to design a 3-step submission form with autosave.
The Form Submission Problem
In a recent project for a real estate classifieds portal, the initial form had 25 fields. After our redesign to a 3-step wizard with 5 fields per step and autosave via localStorage + AJAX every 30 seconds, completion rates jumped from 40% to 85%. This single change doubled active listings within a month.
Content Model Architecture
A classifieds portal is a catalog of user-generated content with categories, each having its own attribute set. A car is described by make, model, year, mileage. An apartment by area, floor, number of rooms. A smartphone by model, condition, storage.
In 1C-Bitrix, this is implemented using infoblocks with user-defined properties. Two approaches exist:
- Single infoblock — all listings in one, category defined by section. Dynamic properties via frontend logic.
- Separate infoblocks for each major category (auto, real estate, services). The second approach is preferable: clean property schemas, indexes tuned for filters, no empty fields.
| Feature | Single infoblock | Separate infoblocks |
|---|---|---|
| Property flexibility | Medium (logic required) | High (each infoblock its own schema) |
| Filter performance | Lower with >10 properties | Higher (indexes on specific fields) |
| Moderation complexity | Similar | Similar |
Each listing element contains:
- title, description, price (with currency)
- category + subcategory (sections, up to 4 levels)
- photos (multiple file property, up to 20 images)
- geolocation (city, district — reference or coordinates)
- contacts (hidden until authorization)
- status: draft, pending moderation, active, sold, removed, blocked
- type: private / business
- placement period and expiration date
Why Category Selection Matters
The submission form should be step-by-step: choose category → fill fields → upload photos → preview → publish. Each step minimizes cognitive load. Autosave through localStorage + AJAX every 30 seconds saves progress if the tab is closed.
We implement a custom component based on bitrix:iblock.element.add.form or a fully custom form using REST API. The second option gives full control over UX: inline validation, progress bar, client-side image cropping.
Content Moderation
Without moderation, the portal fills with spam on day one. We implement a multi-level system:
| Check type | Timing | Implementation |
|---|---|---|
| Stop words | On save | OnBeforeIBlockElementAdd |
| Duplicate photo | On upload | Perceptual hash, compare with database |
| Duplicate text | On save | Shingles or MinHash |
| Phone number in text | On save | Regex filter |
| Manual moderation | After submission | Queue in admin with bulk actions |
| Abuse reports | After publication | Counter with auto-hide threshold |
For new users, we enable pre-moderation (first 5 listings); for experienced users, post-moderation. The moderator interface with keyboard shortcuts speeds up processing.
Search Performance
Search is the primary navigation method. A user sets parameters: "apartment, 2 rooms, Minsk, up to $50,000". Faceted filters on standard CIBlockElement::GetList work up to ~10,000 listings. For 100,000+ listings, we use Elasticsearch: it provides autocomplete, typo correction, synonym search ("one-bedroom" → "1-bedroom"). Elasticsearch is 10x faster for filtering on multiple properties.
Geo-filtering is implemented via coordinates and radius on a map. Saved searches with new listing notifications — through Bitrix agents.
Monetization and Personal Account
The personal account includes: my listings, favorites, internal messaging (contacts hidden until deal), notifications, reviews, balance.
Monetization is built on paid services: listing promotion, highlighted listings, VIP placement, increased photo limits. Subscriptions for sellers with unlimited listings and statistics. Payments via the "E-Store" module and payment systems (YooKassa, CloudPayments). Recurring payments for subscriptions — via card tokenization.
1C-Bitrix documentation recommends using infoblocks v2.0 for catalogs with more than 10,000 elements.
Development cost is calculated individually, based on feature scope and expected load.
SEO and Scalability
Generate unique title/description from properties: "{Title} — buy in {City}". Human-friendly URLs: /category/subcategory/id-slug/. Filters — separate landing pages with meta tags. noindex for empty categories. Microdata Product according to Schema.org.
Performance: composite cache, faceted index, CDN for images with resizing, queues via agents or RabbitMQ. At loads above 500 RPS, we add a read replica.
Development Process
- Analysis: requirements gathering, form prototyping, content model definition.
- Design: database architecture, infoblock schema, caching setup.
- Development: custom components, payment integration, search setup.
- Testing: load testing up to 1000 RPS, moderation testing, usability tests for submission form.
- Deployment: production rollout, monitoring setup, data migration.
Example Docker configuration for local development
FROM php:8.1-fpm RUN docker-php-ext-install mysqli pdo_mysql What's Included?
- Content model and database architecture
- Step-by-step submission form with autosave
- Moderation system (auto + manual)
- Elasticsearch search with faceted filters
- Personal account and internal messaging
- Monetization (paid services, subscriptions)
- SEO templates, human-friendly URLs, sitemap
- Administration documentation
- Client team training
- 3 months post-launch support
Our team has 10+ years of experience in 1C-Bitrix development and over 50 successful projects. We guarantee stable portal operation and optimization for high loads. Contact us to discuss your project. Request classifieds portal development or get a consultation.

