Layihələr və Planlar üçün XML Feed

1. Feed Məqsədi

XML feed daşınmaz əmlak layihələri və tipik planlar haqqında strukturlaşdırılmış məlumatları ötürür. Məqsədi qəbul edən sistemin layihə kartlarını avtomatik yaratmasına və yeniləməsinə, qiymətləri, statusları, qalereyaları, rahatlıqları, ödəniş şərtlərini, EOI-ni və developer-lərin marketinq promo materiallarını göstərməsinə imkan verməkdir.

Feed planları toplanmış formada ötürür: bir plan qeydi tipik planı və həmin tip üzrə mövcud vahidlərin sayını təsvir edir. Bu, konkret mənzillərin, ofislərin və ya sahələrin siyahısı deyil.

  • realty-feed: bütün XML feed-in kök konteyneri. Əsas ID: —
  • offers: bir layihə və ya kompleks. Əsas ID: complex-id
  • layouts: layihə daxilində tipik plan. Əsas ID: id
  • payment_plans: layihə üçün bir ödəniş seçimi. Əsas ID: id
  • eoi_item: bir EOI şərti. Əsas ID: —
  • stock: marketing kampaniyası, xəbər və ya developer-dən promo mesaj. Əsas ID: —

1.1 XML Feed Nədir

XML feed daşınmaz əmlak layihələri və tipik planlar haqqında məlumatları ehtiva edən strukturlaşdırılmış fayldır. Buraya agentlik saytında və ya kataloqda obyektləri göstərmək üçün lazım olan təsvirlər, fotolar, qiymətlər, ünvanlar, statuslar, spesifikasiyalar, rahatlıqlar və digər məlumatlar daxildir.

Sadə dillə desək, XML feed daşınmaz əmlakla bağlı məlumat axınıdır; qəbul edən sistem onu mütəmadi olaraq yükləyir, oxuyur və obyekt kartlarını avtomatik yeniləmək üçün istifadə edir.

Alnair məlumatları təqdim edir. Saytın hazırlanması, kataloqun qurulması, CRM inteqrasiyası və import məntiqi isə müştəri və ya müştərinin texniki komandası tərəfindən idarə olunur.

1.2 Agentliyə Nə Lazımdır

XML feed-dən istifadə etmək üçün agentliyin XML-i mütəmadi yükləyə, strukturunu analiz edə və öz sistemində məlumatları yeniləyə bilən texniki infrastrukturu olmalıdır.

  • Vebsayt və ya obyekt kataloqu: feed-dən gələn layihə və planların göstəriləcəyi məkan.
  • Texniki komanda və ya developer: XML yüklənməsi, analiz edilməsi və importun qurulması.
  • XML parser: XML strukturunu oxuyur və daxili məlumat modelinə çevirir.
  • Import modulu: layihə və planların yaradılması, yenilənməsi və deaktiv edilməsi.
  • Tapşırıq planlayıcısı: cron və ya scheduler vasitəsilə müntəzəm import icrası.
  • Xəta loqlaşdırma: naməlum enum dəyərləri, boş sahələr və yükləmə xətalarının izlənməsi.

1.3 Agentlik XML Feed-dən Necə İstifadə Edir

Tipik iş axını belə görünür:

  1. Agentlik sistemi XML-i şəxsi veb keçiddən yükləyir.
  2. XML diaqnostika və yenidən emal üçün xam snapshot kimi saxlanılır.
  3. Parser realty-feed, offers, layouts strukturunu və daxili blokları oxuyur.
  4. Import modulu yeni layihə və planlar yaradır və ya mövcud olanları yeniləyir.
  5. Yeni feed-dən yoxa çıxan obyektlər qeyri-aktiv kimi işarələnir.
  6. Agentlik vebsaytı yenilənmiş layihə kartlarını, qiymətləri, qalereyaları və statusları göstərir.

Əsas inteqrasiya imkanları:

  • Avtomatik yeniləmələr: layihə və planlar əl ilə müdaxilə olmadan yenilənir.
  • Obyekt səhifələrinin yaradılması: feed məlumatları layihə və plan kartlarında istifadə olunur.
  • Yenilənmiş qiymətlər və statuslar: vebsayt XML yeniləmələrini plan üzrə alır.
  • Filtrlər və axtarış: rayon, qiymət, obyekt növü, otaq sayı və sahə üzrə filtrasiya mümkündür.
  • Media qalereyaları: layihə fotoları, tematik qalereyalar və plan şəkilləri interfeysdə göstərilə bilər.

2. XML-in Ümumi Strukturu

<realty-feed>
  <generation-date>2026-06-17T12:06:39+04:00</generation-date>
  <offers>...</offers>
  <offers>...</offers>
</realty-feed>

  • realty-feed: obyekt. Köklü feed bloku.
  • generation-date: datetime. XML-in yaradılma tarixi və vaxtı. Məlumatların aktuallığını yoxlamaq üçün istifadə olunur.
  • offers: object[]. Layihə və ya komplekslərin siyahısı. Hər offers bloku layihə məlumatlarını və onun planlarını ehtiva edir.

2.1 Feed-ə Giriş və Yükləmə Limitləri

Feed müştəriyə şəxsi veb keçid vasitəsilə təqdim olunur. Keçid müştəriyə məxsusdur və qəbul edən sistem tərəfindən XML-i avtomatik yükləmək üçün istifadə olunur.

Şəxsi keçid Alnair hesabında administrator üçün əlçatandır. Administrator bu keçidi müştərinin texniki komandasına import qurulması üçün verə bilər.

  • Giriş növü: şəxsi veb keçid. Müştəri üçün fərdi XML feed URL-i.
  • Keçidi haradan almaq olar: Alnair hesabı. Keçid müştəri administratoru üçün əlçatandır.
  • Feed yenilənmə tezliyi: hər 4 saatdan bir. XML məlumatları Alnair tərəfində 4 saatda bir yenilənir.
  • Minimum yükləmə intervalı: saatda bir dəfədən çox olmamalıdır. Qəbul edən sistem feed-ə saatda bir dəfədən artıq müraciət etməməlidir.
  • Limit aşılması: girişin bloklanması. Sorğular çox tez-tez olarsa, feed-ə giriş müvəqqəti bloklana bilər.

Tövsiyə olunan inteqrasiya məntiqi: cron və ya scheduler vasitəsilə planlı yükləmə qurun, son alınmış XML-i saxlayın və feed-i hər səhifə açılışında sorğulamayın. Optimal rejim feed-i saatda bir dəfədən çox olmayaraq yükləməkdir, yeni məlumatların təxminən hər 4 saatdan bir göründüyünü nəzərə almaqla.

3. Layihə: <offers>

offers feed-in əsas obyektidir. Burada layihənin təsviri, developer, məkan, tikinti və satış statusu, qiymətlər, media, rahatlıqlar, ödəniş planları, EOI, marketinq promoları və tipik planlar yer alır.

<offers>
  <complex-id>5646</complex-id>
  <type>layihə</type>
  <logo>https://...</logo>
  <photo>https://...</photo>
  <title>...</title>
  <description>...</description>
  <price_on_request>1</price_on_request>
  <status>...</status>
  <construction_start_at>2025-01-01T00:00:00+04:00</construction_start_at>
  <construction_progress>15</construction_progress>
  <planned_completion_at>2027-12-31T00:00:00+04:00</planned_completion_at>
  <predicted_completion_at>2027-12-31T00:00:00+04:00</predicted_completion_at>
  <amenities>...</amenities>
  <developer>...</developer>
  <city>Dubai</city>
  <address>...</address>
  <latitude>25.000000</latitude>
  <longitude>55.000000</longitude>
  <districts>...</districts>
  <album>...</album>
  <albums>...</albums>
  <constructions_count>1</constructions_count>
  <for_sale_count>10</for_sale_count>
  <price>...</price>
  <br_prices>...</br_prices>
  <updated_at>2026-06-17T10:53:20+04:00</updated_at>
  <is_sold_out>0</is_sold_out>
  <payment_plans>...</payment_plans>
  <sales_status>...</sales_status>
  <stocks>...</stocks>
  <eoi>...</eoi>
  <service_charge>...</service_charge>
  <assignment>...</assignment>
  <is_limited_publication>0</is_limited_publication>
  <layouts>...</layouts>
</offers>

  • complex-id: integer. Alnair-də unikal layihə ID-si. Upsert üçün xarici layihə ID-si kimi istifadə edin.
  • type: enum. Üst səviyyəli obyekt növü: project və ya compound. Xam dəyəri saxlayın və üst səviyyəli layihə kimi import edin.
  • logo: url. Layihə loqosu. Brendinqdə göstərin, örtük kimi istifadə etməyin.
  • photo: url. Əsas layihə şəkli / örtük. Örtük və hero şəkli kimi istifadə edin.
  • title: localized object. Layihə adı en/ru/ar-da. İnterfeys dilinə uyğun göstərin.
  • description: localized HTML. Layihə təsviri en/ru/ar-da. Təhlükəsiz render edin; HTML CDATA daxilindədir.
  • price_on_request: 0/1. Qiymətin gizlədilməsi bayrağı. 1 olduqda “Sorğu əsasında qiymət” göstərin.
  • status: object. Tikinti statusu. sales_status ilə qarışdırmayın.
  • construction_start_at: datetime. Tikintinin başlanma tarixi. Doldurulubsa göstərin.
  • construction_progress: decimal. Tikintinin tamamlanma faizi. Faiz kimi göstərin.
  • planned_completion_at: datetime. Layihənin planlaşdırılmış tamamlanma tarixi. Təslim tarixi kimi istifadə edin.
  • predicted_completion_at: datetime. Proqnozlaşdırılan tamamlanma tarixi. Yenilənmiş tamamlanma tarixi kimi istifadə oluna bilər.
  • amenities: object. Layihənin rahatlıqları və xüsusiyyətləri. Açara görə xəritələndirin.
  • developer: object. Layihə developer-i. Adı və loqonu saxlayın.
  • city / address: string. Layihənin şəhəri və ünvanı. Məkan məlumatında istifadə edin.
  • latitude / longitude: decimal. Koordinatlar. Xəritə üçün istifadə edin.
  • districts: object. Layihə rayonları. Filtrlər və layihə kartı üçün istifadə edin.
  • album: object. Əsas kateqoriyasız layihə qalereyası. Ümumi qalereya kimi göstərin.
  • albums: object. Tematik layihə qalereyaları. Başlığa görə qruplaşdırın.
  • for_sale_count: integer. Layihədə mövcud vahidlərin sayı. Mövcudluq kimi göstərilə bilər.
  • price: object. Layihə üzrə ümumi qiymət diapazonu. price_on_request=1 olduqda gizlədin.
  • br_prices: object[]. Yataq otağı sayına və ya kateqoriyaya görə qiymətlər. Filtrlər və siyahılar üçün istifadə edin.
  • updated_at: datetime. Layihə yenilənmə tarixi. Sinxronizasiya üçün istifadə edin.
  • is_sold_out: 0/1. Tam satılıb bayrağı. sales_status ilə birlikdə istifadə edin.
  • payment_plans: object[]. Developer-dən ödəniş seçimləri. Ödəniş variantları kimi göstərin.
  • sales_status: localized object. Layihənin satış statusu. Satış mərhələsini müəyyən edir.
  • stocks: object. Developer-dən marketinq kampaniyaları və promo mesajlar. Promo blokları kimi göstərin.
  • eoi: object. Maraq bildirişi. Yalnız Presale (EOI) üçün göstərin.
  • service_charge: object. Xidmət haqqı. Dəyər doldurulubsa göstərin.
  • assignment: decimal. Təyinat şərti. Boşdursa, göstərilməmiş sayılır.
  • is_limited_publication: 0/1. Nəşr məhdudiyyəti. 1 olduqda icazəsiz ictimai paylaşmayın.
  • layouts: object[]. Layihənin tipik planları. Layihənin uşaq obyektləri kimi import edin.

4. Lokalizə Olunmuş Sahələr

Lokalizə olunmuş sahələrin strukturu eynidir: tag daxilində ingilis, rus və ərəb dəyərləri ötürülür.

<title>
  <en>Layihə Adı</en>
  <ru>Название проекта</ru>
  <ar>اسم المشروع</ar>
</title>

  • en: İngilis dəyəri. Tövsiyə olunan ehtiyat variant.
  • ru: Rus dəyəri.
  • ar: Ərəb dəyəri.

Ehtiyat qaydası:

  1. Əgər doldurulubsa, interfeys dilindən istifadə edin.
  2. Lazım olan dil boşdursa, en istifadə edin.
  3. en boşdursa, ru istifadə edin.
  4. ru boşdursa, ar istifadə edin.
  5. Hər şey boşdursa, sahəni göstərməyin.

5. Statuslar

5.1 Tikinti Statusu: <status>

Tikinti statusu layihənin fiziki vəziyyətini göstərir. Satış mövcudluğunu bildirmir.

<status>
  <key>development_stage_progress</key>
  <en>Tikintidədir</en>
  <ru>Строится</ru>
  <ar>قيد الإنشاء</ar>
</status>

  • Scheduled: layihə planlaşdırılıb.
  • In Progress: tikinti davam edir.
  • Ready: layihə tamamlanıb.
  • Stopped: tikinti dayandırılıb.

5.2 Satış Statusu: <sales_status>

Satış statusu layihənin kommersiya mərhələsini göstərir: elan, presale, launch, aktiv satış və ya tam satılıb.

  • Preliminary Info: layihə haqqında ilkin məlumat.
  • Announcement: layihə elan olunub.
  • Presale (EOI): EOI toplama prosesi gedir.
  • Launch: satışların başlanması.
  • On Sale: layihə satınalma üçün açıqdır.
  • Sold Out: layihə tam satılıb.
  • Pending: status yenilənməni gözləyir.

6. Developer və Məkan

Bu bloklar developer brendini və layihənin coğrafi yerləşməsini göstərmək üçün lazımdır.

<developer>
  <title>
    <en>Developer Adı</en>
    <ru>Developer Adı</ru>
    <ar>Developer Adı</ar>
  </title>
  <logo>https://...</logo>
</developer>
<city>Dubai</city>
<address>Layihə Ünvanı, Dubai</address>
<latitude>25.01809076</latitude>
<longitude>55.13354525</longitude>
<districts>
  <district>Jumeirah Village Triangle (JVT)</district>
</districts>

  • developer.title: localized object. Developer adı.
  • developer.logo: url. Developer loqosu.
  • city: string. Şəhər.
  • address: string. Ünvan.
  • latitude / longitude: decimal. Xəritə üçün koordinatlar.
  • districts.district: string[]. Layihə rayonları.

7. Qiymətlər

7.1 Layihə Qiyməti: <price>

Layihə səviyyəsindəki qiymət layihədə mövcud təkliflər üçün ümumi qiymət aralığını göstərir.

<price>
  <min>815462</min>
  <max>2089780</max>
  <min_usd>222009</min_usd>
  <max_usd>568942</max_usd>
  <currency>AED</currency>
</price>

  • min: decimal. Minimum qiymət.
  • max: decimal. Maksimum qiymət.
  • min_usd: decimal. USD ilə minimum qiymət.
  • max_usd: decimal. USD ilə maksimum qiymət.
  • currency: enum. Əsas valyuta, adətən AED.

price_on_request = 1 olduqda, price doldurulsa belə, dəqiq qiymətlər ictimai şəkildə göstərilmir.

7.2 Kateqoriyaya görə Qiymətlər: <br_prices>

br_prices qiymətləri və sahələri yataq otağı sayına və ya obyekt növünə görə qruplaşdırır. Bu, filtrlər və qısa layihə kartları üçün faydalıdır.

<br_prices>
  <key>1</key>
  <count>7</count>
  <min_price>1070564</min_price>
  <max_price>1289674</max_price>
  <min_price_m2>17204</min_price_m2>
  <max_price_m2>18483</max_price_m2>
  <currency>AED</currency>
  <min_area><m2>57.92</m2><ft2>623.45</ft2></min_area>
  <max_area><m2>74.17</m2><ft2>798.36</ft2></max_area>
</br_prices>

  • studio: studiyalar.
  • 1-6: yataq otağı sayı.
  • villa: villalar.
  • townhouse: townhouse-lar.
  • n: aid deyil / qeyri-yaşayış kateqoriyası / digər.

8. Media

Feed-də media bir neçə növə bölünür. Bunları məqsədi nəzərə almadan bir qalereyada birləşdirmək olmaz: bir şəkil layihə örtüyü, digəri loqo, başqası promo şəkli, digəri isə mərtəbə planı ola bilər.

  • logo: offers.logo. Layihə loqosu. Layihə brendində göstərin; örtük kimi istifadə etməyin.
  • photo: offers.photo. Əsas layihə şəkli / örtük. Kartda örtük şəkli və layihə səhifəsində hero şəkli kimi istifadə edin.
  • album.image: offers.album.image. Əsas kateqoriyasız layihə qalereyası. Ümumi layihə qalereyasında göstərin.
  • albums.album.images.image: offers.albums.album.images.image. Tematik layihə qalereyası. albums.album.title-a görə qruplaşdırın.
  • developer.logo: offers.developer.logo. Developer loqosu. Developer blokunda göstərin.
  • stocks.stock.logo: offers.stocks.stock.logo. Marketinq kampaniyası şəkli. Promo blokunun daxilində göstərin.
  • layouts.album.image: offers.layouts.album.image. Müəyyən tipik planın qalereyası. Plan səviyyəsində göstərin.
  • levels_photos.level_photo.image: offers.layouts.levels_photos.level_photo.image. Səviyyə üzrə plan şəkli. Mərtəbə planı kimi istifadə edin.

<photo>https://...</photo>
<album>
  <image>https://...</image>
</album>
<albums>
  <album>
    <title><en>İnfrastruktur</en><ru>Инфраструктура</ru><ar>...</ar></title>
    <images>
      <image>https://...</image>
    </images>
  </album>
</albums>

  • Layihə təqdimatı: layihə təqdimatı şəkilləri.
  • Tikinti gedişi: tikinti gedişini əks etdirən fotolar.
  • Bitirmə nümunələri: bitirmə nümunələri.
  • İnfrastruktur: layihə infrastrukturu.
  • Görüntü: mənzərələr və ətraf mühit.

Hər layihədə bütün kateqoriyalar mütləq olmaya bilər. Kateqoriya başlığı boşdursa, şəkillər kateqoriyasız import edilə və ya ümumi qalereyaya yerləşdirilə bilər.

Hazırkı strukturdə ayrıca history/story XML teqi yoxdur. Xəbərlər, promo mesajlar və layihə marketinq materialları stocks vasitəsilə ötürülür. Tikinti tarixçəsi üçün, əgər albums-də mövcuddursa, Construction progress kateqoriyasından istifadə oluna bilər.

9. Rahatlıqlar

amenities layihənin rahatlıqlarını və xüsusiyyətlərini təsvir edir. İnteqrasiya üçün key-dən istifadə etmək daha yaxşıdır, göstərim üçün isə lokalizə olunmuş dəyərlərdən istifadə olunmalıdır.

<amenities>
  <amenity>
    <key>project_facilities_gym</key>
    <en>Gym</en>
    <ru>Тренажёрный зал</ru>
    <ar>صالة رياضية</ar>
  </amenity>
</amenities>

  • amenities: object. Rahatlıqlar konteyneri.
  • amenity: object. Bir rahatlıq.
  • key: enum. Texniki açar.
  • en / ru / ar: string. Rahatlığın üç dildə adı.

projecet_hotel_license açarında yazı xətası var, amma o Hotel License kimi xəritələndirilməlidir. Alias-ı dəstəkləmək və importu pozmamaq tövsiyə olunur.

10. Marketinq Promoları: <stocks>

stocks developer-lərin marketinq kampaniyaları, xəbərləri və promo mesajlarıdır. Buraya xüsusi qiymətlər, endirimlər, launch şərtləri, EOI elanları, müvəqqəti ödəniş təklifləri və reklam materialları daxil ola bilər. Bu blok inventar ehtiyatı deyil və vahid mövcudluğunu müəyyən etmir.

<stocks>
  <stock>
    <title>...</title>
    <description>...</description>
    <start_at>2025-06-26T00:00:00+04:00</start_at>
    <end_at/>
    <logo>https://...</logo>
  </stock>
</stocks>

  • stocks: object. Marketinq mesajları konteyneri.
  • stock: object. Bir kampaniya, xəbər və ya promo elan.
  • title: localized object. Promo başlığı.
  • description: localized HTML. Promo təsviri.
  • start_at: datetime. Başlama tarixi.
  • end_at: datetime. Bitmə tarixi; boş ola bilər.
  • logo: url. Promo şəkli.

Obyekt mövcudluğu üçün stocks deyil, for_sale_count, layouts.sale_units_count və sales_status istifadə edin.

11. EOI

EOI Expression of Interest deməkdir. Bu blok Presale (EOI) statuslu layihələr üçün ilkin maraq və ya depozit şərtlərini təsvir edir.

<eoi>
  <is_eoi_return>0</is_eoi_return>
  <eoi_items>
    <eoi_item>
      <price>100000</price>
      <percent/>
      <description>
        <en>2 Otaq üçün EOI məbləği</en>
        <ru>Сумма EOI для 2-комнатных</ru>
        <ar>...</ar>
      </description>
    </eoi_item>
  </eoi_items>
</eoi>

  • is_eoi_return: 0/1/boş. 0 = geri qaytarılmır, 1 = geri qaytarılır, boş = göstərilməyib.
  • eoi_items: object. EOI şərtləri konteyneri.
  • eoi_item: object. Bir EOI şərti.
  • price: decimal. Sabit EOI məbləği.
  • percent: decimal. İstifadə olunursa, EOI faizi.
  • description: localized object. Şərhin təsviri.
  • sales_status.en = Presale (EOI) və eoi_items doldurulub: EOI-ni göstərin.
  • Digər sales_status-lar: EOI-ni gizlədin.

12. Xidmət Haqqı və Təyinat

<service_charge>
  <value>172.22</value>
  <unit>sq. m</unit>
  <currency>AED</currency>
</service_charge>
<assignment>40.00</assignment>

  • service_charge.value: xidmət haqqı məbləği. Boşdursa bloku göstərməyin.
  • service_charge.unit: hesablama vahidi, adətən sq. m. Boş ola bilər.
  • service_charge.currency: valyuta, adətən AED. Boş ola bilər.
  • assignment: təyinatın mümkün olduğu faiz. Boş = məlumat göstərilməyib, məhdudiyyət deyil.

13. Ödəniş Planları: <payment_plans>

payment_plans developer tərəfindən obyekt üçün ödəniş seçimlərini təsvir edir. Bir layihədə bir neçə ödəniş planı ola bilər. Hər plan ödənişi mərhələlər üzrə bölür: rezervasiya, tikinti, təhvil və təhvil sonrası. Komissiyalar və əlavə ödənişlər ayrıca ötürüldüyü üçün ümumi faiz 100%-dən çox ola bilər. Məsələn, 104% obyekt qiymətinin 100%-i + 4% DLD haqqı demək ola bilər.

  • Basic: id, title, currency. Plan identifikatoru, adı və valyuta. title sərbəst mətndir, enum deyil.
  • Booking: on_booking_percent, on_booking_fix, on_booking_payments_count, on_booking_fees. Rezervasiya mərhələsində ödənişlər və haqlar.
  • Construction: on_construction_percent, on_construction_fix, on_construction_payments_count, on_construction_fees. Tikinti zamanı ödənişlər.
  • Handover: on_handover_percent, on_handover_fix, on_handover_payments_count, on_handover_fees. Obyekt təhvilində ödənişlər.
  • Post-handover: post_handover_percent, post_handover_fix, on_post_handover_payments_count, on_post_handover_fees. Təhvil sonrası ödənişlər.
  • ROI: roi_percent, roi_fix, roi_payments_count, roi_fees. ROI və ya zəmanətli gəlir sxemləri üçün sahələr.
  • Əlavə haqlar: additional, additional_percent, additional_fix, additional_fix_m2. DLD Fee kimi əlavə ödənişlər.
  • Periodlar: period_after_handover, period_after_roi. Təkrarlanan ödənişlərin tezliyi.
  • Cəmlər: price_total, fees_included_total. Planın ümumi məbləği və daxil olan haqlar.

14. Planlar: <layouts>

layouts layihə daxilində tipik planı təsvir edir. Bu, konkret mənzil və ya ofis deyil, toplanmış vahid növüdür.

  • id: integer. Unikal plan ID-si. Xarici plan ID-si kimi istifadə edin.
  • title: localized object. Plan adı. İnterfeys dilinə uyğun göstərin.
  • project_id: integer. Ana layihə ID-si. offers.complex-id ilə əlaqələndirin.
  • building_name: localized object. Bina adı. Boşdursa göstərməyin.
  • price_on_request: 0/1. Qiymətin gizlədilməsi bayrağı. 1 olduqda qiyməti göstərməyin.
  • area_min / area_max: object. Sahə diapazonu. m2 və ft2.
  • area_balcony_min / area_balcony_max: object. Balkon sahəsi diapazonu. Boş ola bilər.
  • type: localized object. Obyekt növü. Unit type reference-ə baxın.
  • sale_units_count: integer. Bu növdə mövcud vahidlərin sayı. Bu, lot siyahısı deyil.
  • album: object. Plan qalereyası. Plan səviyyəsində göstərin.
  • levels_photos: object. Səviyyələr üzrə şəkillər. Mərtəbə planı kimi istifadə edin.
  • floors_count: integer. Səviyyə sayı. 1, 2, 3 və s.
  • rooms_count: localized object. Otaq sayı. Rooms count reference-ə baxın.
  • price: object. Plan üzrə qiymət aralığı. price_on_request=1 olduqda gizlədin.
  • is_limited_publication: 0/1. Nəşr məhdudiyyəti. 1 olduqda ictimai şəkildə gizlədin.

15. Enum Dəyər İstinadları

  • Project type: project, compound.
  • Sales status: Preliminary Info, Announcement, Presale (EOI), Launch, On Sale, Sold Out, Pending.
  • Construction status: Scheduled, Ready, Stopped, In Progress.
  • Unit type: Apartment, Villa, Townhouse, Duplex, Triplex, Penthouse, Retail, Office, Suite.
  • Rooms count: Studio, 1 BR, 2 BR, 3 BR, 4 BR, 5 BR, 6 BR, 7 BR, 8 BR, NA.
  • BR price key: studio, 1, 2, 3, 4, 5, 6, villa, townhouse, n.
  • Gallery category: Layihə təqdimatı, Tikinti gedişi, Bitirmə nümunələri, İnfrastruktur, Görüntü.
  • Currency: AED.
  • Service charge unit: sq. m.
  • Boolean flags: 0, 1; bəzi sahələr üçün boş dəyər də mümkündür.

Feed-də istinad siyahısında olmayan dəyər varsa, import uğursuz olmamalıdır. Dəyər xam formada saxlanmalı, naməlum kimi xəritələnməli və baxış üçün loqlaşdırılmalıdır.

16. Boş Dəyərlər

Boş dəyər “göstərilməyib” deməkdir, 0 deyil. Boş teqlər <field/> və ya <field></field> kimi görünə bilər.

  • assignment: təyinat şərti göstərilməyib.
  • service_charge.value: xidmət haqqı göstərilməyib.
  • eoi.is_eoi_return: EOI-nin geri qaytarılıb-qaytarılmadığı göstərilməyib.
  • area_balcony_min.m2: balkon sahəsi göstərilməyib.
  • description.en: təsvir yoxdur.

17. Göstərim Qaydaları

  • Qiymət gizlidir: price_on_request = 1. “Sorğu əsasında qiymət” göstərin.
  • Qiymət görünür: price_on_request = 0. min/max qiyməti göstərin.
  • EOI: sales_status.en = Presale (EOI) və EOI doldurulub. EOI-ni göstərin.
  • EOI uyğun deyil: sales_status.en != Presale (EOI). EOI-ni gizlədin.
  • Satılıb: is_sold_out = 1 və ya sales_status.en = Sold Out. “Satılıb” göstərin və ya siyahıdan gizlədin.
  • Məhdud nəşr: is_limited_publication = 1. İctimai şəkildə paylaşmayın.
  • Assignment boşdur: assignment boşdur. Assignment blokunu göstərməyin.
  • Xidmət haqqı boşdur: service_charge.value boşdur. Xidmət haqqını göstərməyin.

18. Import Qaydaları

  • Layihə: complex-id üzrə axtarın; tapılarsa yeniləyin, tapılmazsa yaradın.
  • Plan: layouts.id üzrə axtarın; project_id ilə layihəyə bağlayın.
  • Silmə: obyekt yeni feed-dən yoxa çıxarsa, dərhal silmək əvəzinə qeyri-aktiv edin.
  • Naməlum enum: xam dəyəri saxlayın, naməlum kimi xəritələyin və loğlaşdırın.
  • Boş dəyərlər: sahəyə aid xüsusi qayda olmadan onları 0-a çevirməyin.

Layihə sahəsi → Mənbə

  • external_project_id: complex-id.
  • raw_offer_type: type.
  • title_*: title.
  • description_*: description.
  • developer_name: developer.title.
  • developer_logo_url: developer.logo.
  • city/address/coordinates: city, address, latitude, longitude.
  • districts: districts.district.
  • construction_status: status.en.
  • sales_status: sales_status.en.
  • price_min / price_max: price.
  • price_on_request: price_on_request.
  • galleries: photo, album, albums.
  • payment_plans: payment_plans.
  • eoi: eoi.
  • stocks: stocks.
  • source_updated_at: updated_at.

Plan sahəsi → Mənbə

  • external_layout_id: layouts.id.
  • external_project_id: layouts.project_id.
  • title_*: layouts.title.
  • building_name_*: building_name.
  • unit_type: type.en.
  • rooms_count: rooms_count.en.
  • sale_units_count: sale_units_count.
  • area_min / area_max: area_min, area_max.
  • balcony_min / balcony_max: area_balcony_min, area_balcony_max.
  • floors_count: floors_count.
  • price_min / price_max: price.
  • layout_gallery: album.
  • levels_photos: levels_photos.
  • is_limited_publication: is_limited_publication.