Anbarda yoxdur, saytda var: qalıq sinxronizasiyası

Müştəri saytda məhsulu görür, səbətə qoyur, sifarişi təsdiqləyir, kartından pul çıxır. Bir neçə saat sonra telefon zəngi gəlir: "Təəssüf ki, bu məhsul anbarda yoxdur, pulunuzu geri qaytarırıq." Bu, sadəcə bir ləğv olunmuş sifariş deyil — bu, həmin müştərinin sizə bir daha güvənməyəcəyi andır.
Problem çox vaxt texnologiya deyil, ünsiyyət məsələsidir: anbar bir rəqəm bilir, sayt tamam başqa bir rəqəm göstərir, və ikisinin arasında heç kim körpü qurmayıb. Bunu düzəltmək əsasən kod yazmaqdan çox, üç sualın cavabını tapmaqdır — rəqəmi kim deyir, nə qədər tez yenilənir, kim kimi gözləyir.
Bir "üzr istəyirik" zəngi neçəyə başa gəlir
Sifariş təsdiqlənəndən sonra ləğv olunanda itki tək bir satış deyil. O müştərini saytınıza gətirən reklam xərci artıq xərclənib. Kart məlumatını, ünvanı, çatdırılma seçimini doldurmaq üçün sərf etdiyi vaxt boşa gedib. Sizin tərəfinizdə də kimsə zəng edib üzr istəməli, geri ödənişi əl ilə emal etməli, bəlkə də alternativ məhsul təklif etməlidir — bu, digər sifarişlərə ayrıla biləcək vaxtdır.
Ən bahalı hissə isə görünməyəndir: növbəti dəfə eyni məhsulu axtaranda, həmin müştəri ehtimal ki, sizin saytınıza deyil, əvvəlki təcrübəsi onu incitməyən başqa mağazaya gedəcək. Bu itki heç bir hesabatda görünmür, amma reklam büdcəsi ilə gətirdiyiniz hər yeni müştəridən daha bahalıdır.
Burada məsələ heç vaxt "məhsul bəzən bitir" deyil — hər biznesdə bitir, bu normaldır. Məsələ odur ki, bu məlumat sifarişdən əvvəl, saytda, doğru anda görünsün. "Anbarda yoxdur" yazısını sifarişdən əvvəl görən müştəri incimir, sadəcə başqa seçim edir ya da gözləyir.
Əl ilə yeniləmə niyə həmişə arxada qalır
Çoxu kiçik və orta mağazada stok sayı iki, bəzən üç yerdə yaşayır: anbarın öz proqramında (bəzən sadəcə cədvəldə), mühasibat sistemində və saytın admin panelində. Kimsə həftədə bir-iki dəfə birinci rəqəmi sonuncuya əl ilə köçürür.
Bu üsulun problemi sürət deyil — köçürmə anında rəqəm doğru olsa belə, o andan sonra baş verən hər satış, hər qaytarma, fiziki mağazadan aparılan hər məhsul rəqəmi köhnəldir. Üç kanaldan (fiziki mağaza, marketpleys, öz sayt) satan biznesdə bu, günün ortasında artıq yalan rəqəm deməkdir — kassadan keçən hər məhsul saytdakı rəqəmi doğru saxlamağa kömək etmir, çünki kassa proqramı ilə sayt heç vaxt danışmır.
Həll əl ilə daha tez-tez yeniləmək deyil — insan halqasını tamamilə çıxarmaqdır. Anbar proqramı və ya mühasibat sistemi stok dəyişəndə bunu avtomatik olaraq saytın kataloquna ötürməlidir, kimsə xatırlayanda deyil. Bu, bir dəfəlik texniki qurma işidir, amma ondan sonra heç kim "kimsə yeniləyibmi?" deyə soruşmur.
Sinxronizasiya tezliyi: hər məhsula eyni sürət lazım deyil
Real vaxtda sinxronizasiya cəlbedici səslənir, amma hər məhsul üçün eyni dərəcədə vacib deyil. Tezliyi məhsulun satış sürətinə görə seçmək həm daha ağıllı, həm də daha ucuzdur.
Az sayda, sürətlə satılan məhsullar
Kampaniyaya çıxan, məhdud sayda olan və ya son bir neçə ədədi qalan məhsulda gecikmə bahalıya başa gəlir — bir neçə dəqiqə ərzində iki fərqli müştəri eyni son ədədi sifariş edə bilər. Bu qrup üçün sinxronizasiya hadisə əsaslı olmalıdır: stok anbarda dəyişən kimi (sifariş, qaytarma, fiziki satış) sayt dərhal xəbərdar olur, saatı gözləmir.
Geniş çeşidli, yavaş hərəkət edən məhsullar
Yüzlərlə ehtiyat hissəsi və ya geniş çeşidli kiçik məhsul satan biznesdə hər dəqiqə sinxronizasiya nə lazımdır, nə də ucuzdur. Saatlıq və ya bir neçə saatda bir dəfə yenilənmə kifayət edir, çünki bu məhsullarda tək müştərinin bir neçə saat ərzində eyni ədədə düşmə ehtimalı azdır. Bu qrupu da hadisə əsaslı sistemə bağlamaq mövcud texniki resursu boş yerə xərcləmək olar.
Doğru sual "nə qədər tez?" deyil, "bu məhsulda gecikmənin real qiyməti nədir?" sualıdır.
Səbətdəki məhsul kimindir — rezervasiya məntiqi
Son ədəd qalan məhsulu iki müştəri eyni anda səbətə qoya bilər. Ödəniş səhifəsinə keçəndə hər ikisi kart məlumatını yazır, amma anbarda da, saytda da yalnız bir ədəd var. Kim udacaq sual deyil — sual budur ki, ikincisinə bunu nə vaxt deyəcəksiniz: kartını doldurmadan əvvəl, yoxsa pulu artıq tutulandan sonra.
Düzgün qurulmuş sistemdə məhsul ödəniş prosesinə girəndə müəyyən qısa müddətə "yumşaq" şəkildə rezerv olunur — başqa heç kim həmin ədədi seçə bilməz, amma müştəri ödənişi tamamlamasa, vaxt bitəndə məhsul yenidən açıq stoka qayıdır. Bu pəncərə müştəriyə rahat ödəniş etmək üçün kifayət qədər uzun, digər alıcını uzun müddət gözlətməyəcək qədər qısa olmalıdır — saatlarla yox, dəqiqələrlə ölçülür.
Stokdan həqiqi çıxarılma yalnız ödəniş təsdiqlənəndə baş verməlidir, səbətə qoyulan anda yox. Əks halda, səbətə atıb unudulan məhsullar saytda "satılıb" kimi görünür, halbuki heç kim onları almayıb — bu dəfə itən sizin öz satışınızdır, çünki real alıcıya "yoxdur" göstərirsiniz.
Tək mənbə qaydası: rəqəmi kim deyir
Bir neçə sistemin — anbar proqramı, mühasibat proqramı, sayt, bəlkə də marketpleys hesabı — hər biri öz stok rəqəmini saxladığı zaman, gec-tez ikisi fərqli rəqəm göstərir. Bu, adətən o vaxt üzə çıxır ki, artıq gec olub: müştəri sifariş verib, mal isə yoxdur.
Praktik həll bir sistemi "əsl mənbə" elan etməkdir — adətən anbar və ya mühasibat proqramı, çünki fiziki mala ən yaxın olan odur. Sayt, marketpleys səhifəsi və hər digər kanal yalnız bu mənbədən oxuyur, öz rəqəmini heç vaxt geri yazmır. Ötürmə API və ya webhook vasitəsilə birtərəfli axmalıdır — dəyişiklik baş verən anda göndərilən siqnal, gündə bir dəfə köçürülən fayl deyil. Bu quruluşda iki sistem heç vaxt bir-birinin üstündən yazmır, ona görə də "hansı doğrudur?" sualı ümumiyyətlə yaranmır.
Anbarda olmayan malı satmaq, sadəcə olmadığını əvvəlcədən deməkdən qat-qat bahalı itkidir.
Sinxronizasiyaya necə başlamaq lazımdır
Layihəyə başlamazdan əvvəl aydınlaşdırılmalı ardıcıllıq bu qədər sadədir:
- Hazırkı vəziyyəti xəritələndirin — stok neçə yerdə yaşayır: anbar proqramı, mühasibat, sayt, marketpleys hesabı.
- Əsas mənbəni seçin — hansı sistem fiziki mala ən yaxındır, "doğru rəqəmi" deyəcək sistem o olsun.
- Ötürmə üsulunu qurun — API və ya webhook ilə birtərəfli axın, gündəlik fayl köçürməsi yox.
- Məhsul qruplarına görə tezliyi ayırın — məhdud sayda olan hadisə əsaslı, geniş çeşid saatlıq kifayətdir.
- Rezervasiya pəncərəsini sınayın — eyni məhsulu iki fərqli brauzerdən eyni anda sifariş etməyə çalışın, sistem ikincini düzgün rədd edirmi, görün.
Bu, bir dəfəlik quraşdırma işi deyil, sistemlər arasında davamlı işləyən körpüdür. Anbar proqramınızı (və ya mühasibat sisteminizi) saytla real vaxtda birləşdirən sistem inteqrasiyası xidmətimiz məhz bu körpünü qurur: hansı sistemin əsas mənbə olacağını müəyyənləşdirir, sinxronizasiya tezliyini məhsul növünə görə ayarlayır və rezervasiya məntiqini elə qurur ki, bir daha heç bir müştəri ödədiyi malın olmadığını eşitməsin.