icare24.az

icare24.az: how we built a rental listings platform

A listings site for renting homes, vehicles, machinery and equipment: how it works, what's inside and what we paid attention to. The platform is for sale as a ready-made business.

Home page of Icare24.az
Icare24.az on a phone
Field
Rental listings
Site type
Listings platform
Coverage
Baku and all of Azerbaijan
Technology
Laravel
Moderation
Telegram bot

icare24.az is a rental listings site in Azerbaijan. Apartments, offices, cars, special machinery, electronics, wedding equipment and other items are rented out here by the day, week or month. The platform was built by the Shaftali.az team, and it's a good example of our website development work in Baku. Below we explain how the listings site works, what we built into it and which details are decisive when building a platform like this.

What icare24.az is and who it's for

The idea is simple. If you need something for a few days or a few months, renting it costs less than buying it. The owner, in turn, earns from property or equipment they aren't using. icare24.az brings the two sides together: the owner posts a listing for free, and the renter calls them directly or writes on WhatsApp. The site doesn't act as an intermediary and takes no commission: price, term and payment are agreed between the two sides.

Listings can be posted for any city in Azerbaijan, but most of them are in Baku. The categories are broad: vehicles and special machinery (truck cranes, forklifts, trucks), real estate (apartments, offices, commercial spaces, warehouses, daily rentals), electronics, construction tools, event and wedding equipment, clothing, children's items, musical instruments, medical equipment and services.

17main categories
89subcategories
3 pricesdaily, weekly and monthly
0%commission

How an owner posts a listing

Whether a listings site fills up depends on the listing form. If the form is hard, people leave the listing half-done. That's why on icare24.az we didn't make sign-up a separate step and built the form around the category.

  1. Choose a category First the main section is chosen, then the subcategory. You can also type “generator” or “gəlinlik” (wedding dress) into the search field, and the matching category appears right away. Sections with more listings sit higher in the list.
  2. Fill in the listing Title, description, city, price and up to 10 photos. The price can be given per day, week or month, or left as “negotiable”. Each category has its own extra fields, for example area (sq m) for real estate.
  3. The account is created in the same form No sign-up is required beforehand: name, email, phone and password are entered in that same form. Users who already have an account simply log in.
  4. The listing goes to moderation After the check, the listing appears on the site and the owner gets an email. If the listing is rejected, the email gives the reason, and the listing can be fixed and sent again.
  5. Manage the listing The “My listings” section shows the status of each listing, and from there a listing can be edited or deleted.

Whatever is typed into the form is saved as a draft in the browser, so the text isn't lost if the page is closed by accident. When the form stays open for a long time, its security token refreshes in the background, so someone who spends half an hour writing a listing doesn't get a “page expired” error when they send it. We also worked on photos separately. People upload very large photos from their phones, so the site automatically converts every image to WebP, scales the long side down to 1920 pixels and makes small versions for lists. Photos taken sideways on a phone are rotated automatically too.

We validate contact details as well. Phone numbers are only accepted in Azerbaijani format: +994 and an operator code (10, 12, 50, 51, 55, 60, 70, 77, 99). With one checkbox the owner indicates that their number is on WhatsApp, and in that case a WhatsApp button appears on the listing. Addresses from temporary email services aren't accepted, and an address whose domain can't receive mail is rejected too, because the moderation result is sent to the owner by email. The password is entered once, must be at least 8 characters, and an eye icon shows what was typed.

How a renter quickly finds what they need

Someone looking for a rental doesn't need to sign up. As soon as they type two letters into the search bar, matching listings appear in a dropdown with photo, price and city. The listings page has filters by category, city and price range, and new listings load on their own as you scroll down.

We adapted the search to Azerbaijani. Many people don't type the letters “ə”, “ş” and “ç” on their phones, so someone typing “kiraye” still finds listings with the word “kirayə” (rent). If the query contains a city name, for example “avtokran Bakı”, the system treats it as a city filter. In the search form, cities are sorted by the Azerbaijani alphabet, so a city starting with “Ş” comes after “S”, and Baku sits at the top of the list.

The home page shows only categories that have listings, sorted by the number of listings, with a feed of the latest listings below. The “Cities” page also shows only cities with active listings. We hide empty sections from visitors on purpose: on a new site that still has few listings, an empty category gives the visitor nothing and only wears them out.

What's on a listing page

  • a photo gallery, the price and its unit (day, week, month) or “Price negotiable”;
  • the listing number, date and view count: a view is counted once per session, and bots and the owner's own views aren't counted;
  • a “Call” button and, if the owner wants, a WhatsApp button;
  • the owner block: an avatar with the first letter of their name, the sign-up date and a link to a page with all their active listings;
  • safety tips: don't share documents, card details or SMS codes, and don't transfer money in advance for an item you haven't seen;
  • a “Report” button: the contact form opens with the listing number and link already filled in;
  • city, category, last updated date, and at the bottom of the page similar listings from the same category, from the same city where possible.

There's a help button in the corner of the site. From it you can open “I can't find what I'm looking for”, “How do I post a listing?”, the report and feedback sections, or write on WhatsApp. Someone who can't find what they need writes what they're looking for and in which city, and the team lets them know when a suitable listing turns up.

How only real rental listings stay on the site

The biggest problem of listings sites is low-quality listings: sale ads get posted on a rental site, the same listing is repeated several times, the wrong category is chosen. On icare24.az every new listing and every edited listing goes to review first.

We moved the moderator's work to Telegram. As soon as a new listing comes in, the bot sends a message with the photo, title, price and description, with “Approve” and “Reject” buttons underneath. When rejecting, the moderator picks a ready reason: it's a sale ad, wrong category, poor photos, duplicate listing or other. The decision goes to the owner by email right away. This way the daily review is done from a phone, and the admin panel is only opened when a listing needs editing.

We used the same approach to check teacher profiles on the Tutor.az tutoring platform, where the bot sends every new teacher sign-up to the admin with approve and reject buttons.

The owner's dashboard and listing statuses

In the “My listings” section, listings are grouped by status: active, in moderation, rejected, rented out and hidden. A rejected listing also shows the reason. Listings can be searched by title or number, which is handy for companies with many listings.

We gave the “Rented out” status separate thought. A listing like this drops out of the lists, but its page stays open for 90 days: visitors see that it's already rented and can move on to similar listings in one click. After 90 days, or when a listing is deleted, the page doesn't show a bare error: visitors see similar listings, and Google gets a 410 response saying the listing has been removed for good. Here's what happens to a listing's page in each status:

Listing statusIn listsPage opens for visitorsIn Google's index
ActiveShownOpensYes
In moderation, rejected or hiddenNot shownOnly for the owner and adminNo
Rented out (first 90 days)Not shownWith a note and similar listingsNo (noindex)
After 90 days or deletedNot shownSimilar listings, 410 responseRemoved

What we did for Google on the listings site

Most visitors to listings sites come from Google search, and people type specific things: “truck crane rental Baku”, “office for rent in Baku”. That's why the site has category, city and “category + city” pages, for example /elanlar/xususi-texnika/baki. On top of that:

  • a category or city page is opened for indexing only when it has at least 3 active listings, and empty pages and filtered lists don't go to Google;
  • every listing's title and description tags are built automatically from the listing name, city and price, at a length that fits in search results;
  • Azerbaijani letters in URLs are converted to Latin equivalents (e instead of ə, s instead of ş, c instead of ç), and titles written in Russian or old Azerbaijani Cyrillic also get a readable Latin URL;
  • Schema.org markup: price and unit (day, week, month) for listings, breadcrumbs, listing lists and the questions page;
  • the sitemap is split into parts and includes listing images as well;
  • search engines are notified right away about new and changed listings through the IndexNow protocol;
  • when a listing's title changes, the old URL redirects to the new one with a 301, so shared links keep working;
  • owner pages and listing forms are closed to indexing, and only listing and category pages go to Google;
  • an llms.txt file for AI assistants with short information about the site, categories and cities.

We do this kind of setup for other sites too as part of our SEO service.

A site that opens fast even on weak mobile internet

Listings sites are usually opened on a phone, and mobile internet isn't fast everywhere. So we kept the pages light:

  • images are in WebP and served at a size that fits each screen (from 240 to 1000 pixels), and images further down load only when they get close to the screen;
  • the font is hosted on the site's own server and contains only the letters needed, including Azerbaijani ones;
  • there are no third-party scripts: the site loads only its own files, which helps both speed and security.

Security and spam protection

A free listings site attracts bots too. That's why we built protection in several layers:

  • every form has a trap field people can't see, and a form filled in too quickly isn't accepted;
  • the number of listings one user or IP address can post in a short time is limited;
  • login is temporarily locked after several wrong passwords, and this rule is stricter for the admin login;
  • an IP address that exceeds the limits repeatedly is temporarily blocked: the site still opens for it, but forms can't be sent from it;
  • Telegram alerts arrive for admin logins, failed admin attempts, sudden spikes in sign-ups and new listings, and IP blocks.

The site has security headers (CSP, HSTS) in place. Posting, search, login and moderation are covered by more than 1,300 automated tests, and on top of that 29 Playwright test files check the site in a real browser. The tests run on their own before every deploy to the server: if one fails, the deploy stops and the files don't go to the server.

How the site is managed from the admin panel

The site's owner has a separate admin panel. There you can manage:

  • the overview: the number of all listings, active listings, listings awaiting moderation and users;
  • listings: approve, reject, edit, change status, bulk actions and posting a listing on a customer's behalf;
  • categories and each category's own fields (number, dropdown list, checkbox and so on), and making a field required;
  • cities, users, their roles and deactivating accounts;
  • messages from the contact form, marking them as answered and exporting to a CSV file;
  • the “About us” page, contact details and regenerating the sitemap with one button.

Managing category fields from the panel means that when an “event hall” needs a guest count field or a “generator” needs a power field, there's no need to call a developer. The size of the admin panel is one of the things that affects the price of a listings site the most. All our rates are on the prices page.

What to prepare before ordering a listings site

On icare24.az all parts of the site are tied together. The listing form affects moderation, moderation affects email notifications, and a listing's status affects SEO pages and the sitemap. So when ordering a platform like this, you need answers to these questions before any code is written:

  • how the categories will be structured and which fields each category needs;
  • who will review listings, by what rules and how quickly, and which listings will be rejected;
  • which cities the site will have and which pages will be open to Google;
  • what happens to a listing's page when it's deleted or rented out;
  • texts for “About us”, questions and safety tips, the logo and contact details;
  • how the site will open on a phone and on weak internet.

The same logic applies to real estate portals, car listings and service platforms. You can see more website examples we've built in our portfolio.

icare24.az is for sale

icare24.az is for sale as a ready, working business. The platform is complete and can be put to use without any extra preparation: the listing form, Telegram moderation, search, owner dashboard, admin panel and SEO setup described above all work. The price is set by negotiation. When handing the site over to a real buyer, we can provide support and technical help.

Want to buy it? Write to us through the inquiry form or call 077-388-42-42: we'll show you the platform and discuss the terms.

Frequently asked questions

Is posting a listing on icare24.az free?

Yes. Listings are posted for free and no sign-up is required beforehand; the account is created in the listing form. A listing appears on the site after it passes moderation.

Does icare24.az take a commission?

No. The renter talks to the owner directly by phone or on WhatsApp, and the price and terms are agreed between them.

Is icare24.az for sale? How can I buy it?

Yes, the platform is for sale as a ready, working business. The price is set by negotiation. If you're interested, write through the inquiry form or call 077-388-42-42.

What technology is icare24.az built with?

The site is written in PHP on the Laravel framework. Moderation runs through a Telegram bot, notifications go by email, and images are converted to WebP on the server automatically.

Do you need a developer to add a new category or field?

No. Categories, subcategories and their fields (number, dropdown list, checkbox) are added from the admin panel, and making a field required is also set there.

How can a listings site be protected from spam listings?

On icare24.az every listing goes through moderation, forms have a trap field for bots, the number of listings one user can post is limited, and an IP address that exceeds the limit repeatedly is temporarily blocked.

How long does it take to build a listings site like this?

Portal and listings platform projects usually take 1–2 months or more and are built in stages. The exact timeline depends on the scope of categories, the user dashboard, moderation and integrations.

How much does a listings site cost?

Portals and listings platforms start at 1,500 AZN. The final amount depends on the features: user dashboard, moderation, search and filters, SEO pages, Telegram and email integrations. Domain, hosting and SSL are free for the first year, and basic SEO setup is included in the price. Corporate email is also set up free of charge.

Need a listings site or a platform?

Describe your idea briefly: we'll plan the categories, users and main features together, work out the timeline and price, and give you a call. Phone: 077-388-42-42, email: contact@shaftali.az.

Get a quote

Other projects

All projects

Send a request

Leave your name and number and we will call you back.

What do you need?