жеткізуіңіздің жұмысын қарап, бірінші кезекте не автоматтандырылатынын айтамыз
Курьерлер қазір тапсырмаларды қалай алады, мәртебелерді кім жүргізеді, табыстауды не растайды және тапсырыстарыңыз қандай бағдарламаларда жатыр.
Курьер екеу болғанда жеткізу телефон қоңыраулары мен хат алмасуға сүйенеді: мекенжайлар мессенджерге кетеді, аралау тәртібі — ауызша, ал «тапсырыс қайда» деген сұраққа курьерге бірінші болып қоңырауы жеткен адам жауап береді. Жеткізу саны өскенде бұл жұмысын тоқтатады — тапсырмалар жоғалады, мәртебелер шындықтан қалып қояды, ал «әкелді ме, әкелген жоқ па» деген дауды шешетін ештеңе жоқ. Курьерлерге арналған бағдарлама жұмыстың бұл тәсілін жояды: тапсырма орындаушының қосымшасына келеді, мәртебені тасымалдаушының өзі әрекет сәтінде қояды, ал табыстау фактісі уақытымен және авторымен бірге тіркеледі. Төменде бұл қалай құрылғаны талданған — тапсырысты тағайындаудан ауысымды жабуға дейін.
Курьерлерге арналған бағдарлама — орындаушының жұмыс құралы: ол курьерге ауысымға тапсырмалар әкеледі, мекенжайлар мен тапсырыс құрамын көрсетеді, оны нүктеден нүктеге жетелейді және әрқайсысында не болғанын жазады. Компания жағынан бұл — жеткізуді басқару: диспетчер ауысымға қоңырау шалмай, кімнің қайда екенін және не орындалғанын көреді.
Айырмашылық бір мысалдан көрінеді. Бағдарламасыз курьер мекенжайларды хат алмасудан алады, кіреберісті нақтылау үшін клиентке қоңырау шалады және кешке диспетчерге не жеткізгенін айтып береді. Диспетчер мұны кестеге көшіреді — есіне алса және курьер шатаспаса. Күн соңында ешкім нақты тапсырыстың табысталу уақытын дәл атай алмайды.
Бағдарламада да сол — жазбалар. Жеткізудің карточкасы бар, карточканың мекенжайы, құрамы, аралығы және ағымдағы мәртебесі бар, әр өзгерістің уақыты мен авторы бар. «Тапсырыс қайда және онымен не болды» деген сұраққа жауап бірнеше секунд алады және курьердің телефонды алған-алмағанына байланысты емес.
Мысал. Таңертең тапсырыс қоймада жиналып, курьерге тағайындалды — тапсырма оның қосымшасында мекенжаймен және жеткізу аралығымен бірге пайда болды. Курьер жүкті алды, алғанын белгіледі, нүктелер бойынша жүрді және әрқайсысында мәртебені өзгертті. Үшінші мекенжайда клиент үйде болмады — курьер себебін қойды және жеткізу «жоғалып кетпей», диспетчерге талдауға тұрды. Кешке менеджер клиентке курьердің жадымен емес, жүйедегі жазба бойынша жауап берді.
Курьерлік жеткізуді автоматтандыру үш сұраққа жауап диспетчердің жадына сыймай қалған жерден басталады: бұл тапсырыс кімге тағайындалған, ол дәл қазір қандай күйде және оның табысталғанын не растайды.
Бұл — бағдарлама экрандарының тізімі емес, бір жеткізудің жолы. Әр ауысуды адам және әрекет сәтінде орындайды: диспетчер тағайындайды, алуды және табыстауды курьер белгілейді. Сондықтан жүйе оны жоспарлаған адамның ниетін емес, жеткізудің күйін көрсетеді.

Ол тапсырысты тасымалдамайды және курьерді алмастырмайды. Ол әрекеттің айналасындағы қол еңбегін жояды: тапсырманы қоңыраусыз әкеледі, мекенжайды түсініктемесімен сақтайды, жеткізуді нәтижесіз жабуға жол бермейді және әр өзгерісті тіркейді. Жеткізуді ауыстыру немесе тапсырысты қайтару туралы шешім адамда қалады — бірақ ол ауызша уағдаластықпен емес, жазба бойынша қабылданады.
Дәл сол сияқты жүйе курьерді өздігінен «көрмейді»: ол оның әрекетпен белгілегенін ғана біледі. Сондықтан деректер сапасы функциялар санына емес, оқиға болған сәтте белгі қойылу-қойылмауына байланысты.
Алдымен екі нәрсе жасалады: мәртебелердің ақырлы тізімі және әр жеткізудің міндетті нәтижесі. Себебі қарапайым: «жұмыста» дегенді әркім өзінше түсінгенде және себепсіз жабылған жеткізу сәтті деп саналғанда, қосымшада қанша экран болса да, есеп жинауға негіз қалмайды.
Төменде — функциялар тізімі емес, курьерлік жеткізуді жалпы автоматтандыратын алты мәселе. Әрқайсысы бірдей тұжырымдалады: бағдарламасыз не болады және онымен не өзгереді.
Бағдарламасыз мекенжайлар мессенджерге келеді, бір бөлігі — телефонмен ауызша, бір бөлігі — кестедегі тізіммен. Курьер өз күнін үш дереккөзден жинайды және бірдеңені өткізіп жібереді. Бағдарламада тапсырма — нөмірі мен орындаушысы бар жазба: ол не жұмыста, не нәтижесімен жабылған.
Мәртебелерді диспетчер телефондағы сөзбен жүргізгенде, олар шындықтан бір сағат қалып қояды және оның ауысымының жартысына түседі. Курьердің әрекет сәтіндегі белгісі нақты уақытты береді: қашан алды, қашан келді, қашан табыстады.
Кіреберіс, қабат, домофон және «аулаға қарайтын кіре беріс» өткен жолы сонда барған адамның жадында емес, жеткізу карточкасында сақталады. Жаңа курьер мекенжайды клиентке екі, диспетчерге бір қоңырау шалғаннан кейін емес, бірінші реттен жабады.
Тапсырысты кім қабылдады, қашан және қандай негізде — есте сақтау емес, жүйедегі жазба. Растау тәсілі жобаға қарай таңдалады, бірақ нәтижесі біреу: «әкелді ме, әкелген жоқ па» деген дау менеджер мен курьер арасындағы тексерумен емес, карточканы ашумен шешіледі.
Диспетчер бір экранға қарайды: кім маршрутта, қанша нүкте жабылды, жеткізу қай жерде аралықтан қалып бара жатыр. «Тапсырысым қайда» деген сұрақ үш адамның жұмысы болуын тоқтатады — менеджер клиентке өзі жауап береді.
Әр өзгеріске авторы мен уақыты қол қояды. Бұл курьерді аңдау емес, нақты жағдайды талдау мүмкіндігі: жеткізу қай қадамда тоқтады және неліктен. Сонымен қатар жүктеме де көрінеді — ауысымға қанша нүкте және кім жапты.
Жүйе модульдерден жинақталады. Олардың бәрі әр компанияға қажет емес: үш курьері және болжамды мекенжайлары бар қызметке он сценарий бойынша ерекше жағдайларды талдау керек емес, ал тамақ жеткізу аралықтар мен клиентке хабарландырусыз істей алмайды. Құрамы міндетке қарай айқындалады, бірақ модульдер кейін бір шетінен қосып жазылмай, өзара алдын ала үйлестіріледі.

Курьердің жұмыс күні бір экранмен: ауысымға не тағайындалған, қандай тәртіппен, не жабылды және не қалды. Бұл — бағдарламаға кіру нүктесі, курьер күнін содан бастайды және әр нүктеден кейін оған оралады.
Бір тапсырыс бойынша бәрі: құрамы мен орын саны, түсініктемесі бар мекенжай, аралық, алушы, төлем және ағымдағы мәртебе. Тапсырманы орындауға қажет дәл сол көлем — компанияның анықтамалықтары мен есептерінсіз.
Ауысым мекенжайлары картада және тізіммен, аралау тәртібі, ағымдағы нүктеден келесіге өту. Маршрут — тапсырма сияқты есептік нысан: оның күні, орындаушысы және күн ішіндегі өзгерістер тарихы бар.
Күйлердің ақырлы жиыны және олардың арасындағы ауысу ережелері. Курьер мәртебені ұзын тізімнен таңдап емес, бір әрекетпен өзгертеді: тағайындалды, алынды, жолда, орнында, жеткізілді.
Нүктедегі нәтижені тіркеу: мәртебені өзгерту және жобаға таңдалған растау тәсілі. Нәтижесіз тапсырма жабылмайды — «жеткіздім-ау шамасы» жеткізу күйі болып саналмайды.
Тапсырысты қоймада немесе жөнелту нүктесінде алғанын белгілеу. Осы сәттен бастап жүк үшін жауапкершілік курьерде және жүйеде тапсырыстың енді қоймада емес, жолда екені көрінеді.
Курьерге және алушыға хабарламалар: жаңа тапсырыс тағайындалды, тапсырма өзгертілді, аралық жақындап қалды, жеткізу жойылды. Жіберу арналары енгізу кезінде таңдалады және интеграциямен қосылады.
Курьер күн ішінде, апта, ай ішінде нені орындады: жабылған жеткізулер, орындау уақыты, проблемалы нүктелер. Оның өнімі де осы жазбалардан жиналады — бұл үшін жеке есеп қажет емес.
Телефоннан нөмір іздемей, тапсырма карточкасынан тікелей диспетчерге жүгіну. Диспетчер сұрақ қай жеткізу бойынша келгенін көреді және сол бойынша жауап береді, қай мекенжай туралы екенін қайтадан анықтап отырмайды.
Қамту аймағынан тыс — жертөледе, лифтіде, жеке секторда — жасалған белгілер құрылғыда сақталады және байланыс пайда болғанда жіберіледі. Қайта жіберу екінші жеткізу жасамайды.
Компанияның жұмыс орны: белсенді курьерлер, тағайындалған тапсырыстар, мәртебелер, орындалған және проблемалы жеткізулер, қызметкерлердің жүктемесі. Браузерде ашылады, ештеңе орнатудың қажеті жоқ.
Жүйенің сыртқы интерфейсі: жеткізу жасау, орындаушы тағайындау, мәртебе алу, растау мен журналды алу. Ол арқылы интернет-дүкен, қойма, логистика және есепке алу жүйелері қосылады.
Жеткізу қалыптасқаннан кейін тапсырыс нақты курьерге тағайындалады. Тағайындау — чаттағы хабарлама емес, операция: жеткізуде орындаушы, ал орындаушыда нөмірі, беру уақыты және ағымдағы күйі бар тапсырма пайда болады.
Тапсырма курьердің қосымшасына қоңыраусыз және мекенжайды қайта жібермей бірден келеді. Курьер тізімді ашады және ауысымын түгел көреді: қанша нүкте тағайындалған, не жабылды және келесі жеткізу қайсы.
Кім тағайындайды. Әдетте диспетчер — қолмен немесе компания белгілеген ережелер бойынша: қала аймағы бойынша, тапсырыс түрі бойынша, курьердің бос уақыты бойынша. Автоматты бөлу іске асырылуы мүмкін нақты қызметтің үдерісіне қарай; оны дайын функция ретінде алдын ала мәлімдемейміз — бөлу ережелері бәрінде әртүрлі және оларды компанияның орнына ойлап табуға болмайды.
Курьер тапсырмамен не істей алады:
Тапсырмада болмауы тиіс нәрсе — артығы. Курьерге тапсырыстың өзіндік құны, клиент тарихы және компания есептері қажет емес: экранда жеткізіп, табыстауға керегі ғана қалады. Қалғанының бәрі ұсақ қаріппен емес, қолжеткізу құқықтарымен жабылған.

Курьер ауырып қалды, кешікті немесе ауысымға шықпады — бұл ақау емес, кәдімгі жағдай. Диспетчер тапсырманы алып, оны басқа орындаушыға тағайындайды; жеткізу тарихында соңғысы ғана емес, екі тағайындау да уақытымен қалады.
Бұл практикада маңызды: қайта тағайындау туралы жазбасыз «тапсырыс неге кешікті» деген талдау жүйе аралықтың аяқталуына бір сағат қалғанда оны алған ағымдағы курьерді көрсететініне тіреледі.
Алушының телефоны ол тапсырманы орындауға қажет болғанда және дәл осы жеткізуді тасымалдап жүрген адамға ғана көрсетіледі. Дербес деректерге қолжеткізу — «қызметкер» деген ортақ пакет емес, жеке құқық: компанияның барлық клиенттерінің тізімі курьерге ашылмайды.
Байланысты нақты қалай көрсету керек — түгел, ішінара әлде нөмірді ауыстыратын қоңырау арқылы — зерттеу кезінде шешіледі: бұл компанияның қандай деректермен жұмыс істейтініне және нені қорғауға міндетті екеніне байланысты.
| № | Аралық | Адрес | Орын | Төлем | Күйі |
|---|---|---|---|---|---|
| 1 | 10:00—12:00 | Ахунбаев 97, 2-кіреберіс | 1 | төленген | жеткізілді |
| 2 | 11:00—14:00 | Тоқтоғұл 125, 4-кеңсе | 3 | төленген | жеткізілді |
| 3 | 12:00—15:00 | Байтік Баатыр 53 | 1 | 2 400 сом | орнында |
| 4 | 14:00—17:00 | Чүй 219, аулаға қарайтын кіре беріс | 2 | төленген | жолда |
| 5 | 16:00—19:00 | Ыбыраимов 42, 7-қабат | 1 | 1 150 сом | тағайындалды |
Тізім тағайындау уақыты бойынша емес, аралық бойынша сұрыпталған: курьерге диспетчер тапсырыстарды таратқан тәртіп емес, күн тәртібі маңызды. Төлем бағаны мекенжайдың қасында кездейсоқ тұрған жоқ — алынатын соманы курьер жетінші қабатқа көтерілгенге дейін көруі керек.
Курьерлерге арналған қосымша — диспетчер панелінің кішірейтілген көшірмесі емес, орындаушының жұмыс жағдайына арналған жеке интерфейс: бір қолында телефон, екіншісінде қорап, экран күн астында, байланыс үзіліп тұрады және кешке қарай заряды төмен.
Оның практикалық мәні біреу: барлық жұмыс ақпараты бір жерде. Курьерге үш чатты, мекенжайлар кестесін және қоңыраулар тарихын ашық ұстаудың қажеті жоқ — тапсырма, мекенжай, тапсырыс құрамы, мәртебе және диспетчермен байланысу тәсілі бір интерфейсте.
Экран «ағымдағы нүкте және келесі» принципімен құрылады. Дәл қазір қажет емес нәрсенің бәрі тереңге алынған: өткен күндердің тізімдері, анықтамалықтар, табыстауға әсер етпейтін бөлшектер. Экранда элемент неғұрлым аз болса, ауысымдағы қате соғұрлым аз және жаңа адамды оқыту соғұрлым қысқа.
Функциялар жиынынан маңыздырақ талаптар:
Біріктіру қанша уақыт үнемдейтінін есептеу мағынасыз — ол курьердің жұмысы қазір неге айналғанына байланысты. Басқа әсері көрінеді: тапсырыс кешегі хабарламадағы мекенжайға жеткізілетін қателердің тұтас класы жойылады, өйткені жаңасы басқа чатқа келген.

Орындалу формасы міндетке қарай таңдалады: бұл Android пен iOS үшін мобильді қосымша немесе телефон браузерінде ашылатын бейімделген веб-бет болуы мүмкін.
Екінші нұсқа арзанырақ әрі іске қосуға жылдамырақ, біріншісі желісіз жұмыс, хабарландырулар және камераға қолжеткізу маңызды жерде қажет. Нақты компанияға не келетіні алдын ала таңдалмай, зерттеу кезінде айқындалады.
Байланыс болжамды түрде жоғалады: жертөледе, лифтіде, жеке секторда, жерасты тұрағында. Мұндай сәтте белгі өтпесе, курьер не тұрып күтеді, не мүлде белгілеуді тоқтатады — сонда мәртебелер қайтадан телефон қоңырауларында өмір сүре бастайды.
Сондықтан белгілер құрылғыда сақталады және байланыс оралғанда жіберіледі. Қайта жіберу бұл ретте екінші жеткізу жасамайды: әр белгінің кілті бар және жүйе оны бір рет қабылдайды. Бұл — сыртқы жүйелермен алмасу жұмыс істейтін сол ереже.
«Жоба бойынша» белгісі мүмкіндік сыртқы сервисті қосуға немесе нақты қызметтің жұмыс жағдайларына байланысты жерде тұр. Қалғанының бәрі — жұмыс минимумы: онсыз орындаушының интерфейсі хат алмасуды алмастырмай, оған тапсырмалардың оныншы дереккөзі болып қосылады.
Жеткізу нүктесі — бір жеткізуі бар бір мекенжай. Курьердің ауысымы нүктелерден құралады, ал қосымша оларды бірден екі тәсілмен көрсетеді: аралау тәртібімен тізім және картадағы белгілер. Тізім «әрі қарай не істеу керек» деген сұраққа, карта «бұл осы жерден алыс па» дегенге жауап береді.
Реттілік алдын ала белгіленеді және курьерге көрінеді: қай нүкте ағымдағы, қайсылары жабылған, қайсылары алда. Нүкте жабылғаннан кейін келесісі ағымдағы болады — курьер оны тізімнен іздемейді және қайда бару керегін әр жолы қайтадан шешпейді.
Тәртіпті күн ішінде өзгертуге болады. Диспетчер нүктелерді ауыстырады, шұғыл жеткізу қосады немесе жойылғанын алып тастайды — өзгерістер курьерге келеді, ал маршрут тарихында не және қашан өзгергені қалады. Жүйе жоспарды үнсіз басқасына ауыстырмауы керек: өзгеріс туралы факті бойынша білетін курьер күнін қайтадан жоспарлайды.
Аралаудың оңтайлы тәртібін автоматты құру — бұл мүмкіндік іске асырылуы немесе картографиялық сервиспен интеграциямен қосылуы мүмкін. Оны дайын функция ретінде мәлімдемейміз: мұндай оңтайландырудың сапасы трафик туралы деректерге және нақты қызметтің шектеулеріне — алушылардағы аралықтарға, аймақтарға, сөмке немесе машинаның сыйымдылығына байланысты.
Практикада көп қызметке қолмен белгіленген тәртіп жеткілікті: диспетчер қаланы алгоритмнен жақсы біледі, ал алушылардағы аралықтар бәрібір күннің қатаң қаңқасын белгілейді.

Курьердің жоғалған уақытының жартысы жолға емес, кіре берісті іздеуге кетеді. Сондықтан нүктенің түсініктемесі бар: кіреберіс, қабат, домофон коды, «аулаға қарайтын кіре беріс», «шлагбаум, күзетке қоңырау шалу», «екінші корпус, сұр есік».
Түсініктемені жеткізуден кейін курьердің өзі толықтырады және ол мекенжай карточкасында қалады. Сонда баратын келесі адам осының бәрін қайтадан анықтап отырмайды — қала туралы білімді ауысымның басында емес, жүйеде жинақтаудың жалғыз тәсілі осы.
Мәртебелер күн соңында топпен емес, әр нүкте бойынша әрекет сәтінде өзгереді. Мекенжайға келді — «орнында», табыстады — «жеткізілді», алушыны таппады — себебі және ауыстыру. Осы белгілерден жеткізудің нақты уақыты мен нүктенің ұзақтығы алынады; әйтпесе екі көрсеткіш те жадпен қалпына келтіріледі, яғни қалпына келтірілмейді.
| Енгізу | Адрес | Аралық | Не тасымалданады | Нүктеге түсініктеме | Күйі |
|---|---|---|---|---|---|
| 1 | Байтік Баатыр 53 | 12:00—15:00 | 1 орын | Шлагбаум, күзетке қоңырау шалу | жабық |
| 2 | Чүй 219 | 14:00—17:00 | 2 орын | Аулаға қарайтын кіре беріс, сұр есік | ағымдағы |
| 3 | Ыбыраимов 42 | 16:00—19:00 | 1 орын | 7-қабат, лифт 6-ға дейін | алда |
| 4 | Мәскеу 180 | 17:00—20:00 | 3 орын | Кеңсе, рұқсатнама ресепшенде | алда |
| 5 | Ахунбаев 97 | 20:00-ге дейін | 1 орын | Қайтару: алушы бас тартты | қосылды |
Бесінші нүкте маршрутқа күн ішінде қосылды — бұл кері апару керек бас тарту бойынша қайтару. Қайтару «ертең әкелерсің» деген ауызша уағдаластық емес, мекенжайы мен күйі бар дәл сондай нүктемен жүреді: әйтпесе тапсырыс дәл оған ешкім жауап бермейтін сәтте есептен шығып қалады.
Мәртебе — бұл экрандағы жазу емес, рұқсат етілген әрекеттер туындайтын күй. Жиын ақырлы әрі қысқа: ол айқын аталмайынша, әр қызметкер «жұмыста» дегенді өзінше түсінеді, ал ондаған ұқсас мәртебені курьер кездейсоқ қоя бастайды.

Бес күй — толық тізім емес, жұмыс минимумы. Аралықтары («сұрыптауға берілді», «басқа курьерге берілді») компания үдерісіне қарай қосылады, бірақ жиын ақырлы әрі айқын болып қалады: әр мәртебе курьерге әрі қарай не істеуге болатыны туралы сұраққа жауап беруі керек.
| Не болды | Жүйе не істейді | Күйі |
|---|---|---|
| Клиент қолжетімсіз: есікті ашпайды, телефонды алмайды | Себебі мен курьердің түсініктемесі бар сәтсіз әрекетті тіркейді, тапсырысты оның артында қалдырады және қайта жеткізу туралы мәселе қояды | талдау |
| Жеткізу алушының өтінішімен ауыстырылды | Ауыстыруды кім және қашан келіскенімен бірге жаңа күн мен аралықты жазады; нүкте бүгінгі маршруттан шығады | қалыпты |
| Алушы тапсырыстан бас тартты | Жеткізуді бас тарту себебімен жабады және кері нүкте қояды — тапсырысты қоймаға немесе жөнелту нүктесіне қайтару | талдау |
| Алушы тапсырысты ішінара қабылдады | Жеткізуді бөледі: қабылданған орындар жабылады, бас тартылғандары бәрімен бірге есептен шығарылмай, жеке жазбамен қайтаруға кетеді | талдау |
| Мекенжаймен мәселе: үй жоқ, кіре беріс табылмады | Курьердің түсініктемесі бар оқиға ашады және жеткізуді орындалды деп жаппай, нүктені диспетчерге нақтылауға береді | талдау |
| Курьер жолда жүргенде тапсырыс жойылды | Нүктені маршруттан алады және жеткізуді қайтаруға ауыстырады: тапсырыс «еріп кетпейді», ол үшін бәрібір біреу жауап береді | қалыпты |
| Курьер ауысымға шықпады | Оның тапсырмаларын қайта тағайындауға босатады және диспетчерге қамтылған барлық жеткізуді бір тізіммен көрсетеді | ескерту |
Жалпы қағида: сәтсіз нәтиже жоғалмайды және сәтті нәтижеге айналмайды. Жеткізу ашық қалып, талдау кезегіне түседі — бұл мәселелерді жазатын жер болмағандықтан олар жоқ болып көрінетін есептен тиімдірек.
Компанияға қандай ерекше жағдайлар қажет екені зерттеу кезінде шешіледі. Тамақ жеткізуге қысқа аралықтар мен жылдам ауыстыру, техника жеткізуге — ішінара бас тарту мен қайтару, құжат жеткізуге — алушының жеке басын растау қажет. Жиын бапталады, бірақ ереже ортақ: жеткізудің кез келген аяқталуының себебі бар және себеп есепке түседі.
Жеткізуде жауапты ауысатын екі нүкте бар және екеуі де тіркеледі. Біріншісі — курьердің жүкті алуы: тапсырыс қоймадан шығады және осы сәттен бастап ол үшін орындаушы жауап береді. Екіншісі — алушыға табыстау: жеткізу жабылды, компанияның міндеттемесі орындалды.
Осы екі сәт туралы жазбасыз кез келген жоғалту ауысымнан сұрау алуға айналады: қойма бердім деп есептейді, курьер — тасымалдаған мен емес дейді, ал менеджер клиентке «анықтап жатырмыз» деп түсіндіреді. Белгі қою секундтарға түседі, онсыз талдау — бір күндік жұмысқа және клиенттің сеніміне.
Табыстау кезінде жүйе нені тіркейді:
Растау тәсілі жобаға қарай таңдалады. Төменде ықтимал нұсқалар тізілген — бұл дайын функциялар тізімі емес және мұның бәрі әлдеқашан іске асырылған деген уәде емес. Нақты қызметке не келетіні нені, кімге жеткізетініне және компанияның өзі қандай талап қоятынына байланысты.

Бұл ереже растау тәсілінің өзінен маңыздырақ. Нәтиже тіркелмейінше, жеткізу ашық қалады және диспетчерге көрінеді. Әйтпесе ай соңында барлық жеткізу орындалған болып шығады, ал даулы жағдайларды бәрібір қоңыраулар бойынша талдауға тура келеді.
Тапсырыс орнында төленетін жерде жеткізуді растау мен төлемді растау — екі бөлек жазба. Алынатын сома тапсырмамен бірге келеді, ал ақшаны қабылдау фактісі бөлек белгіленеді: әйтпесе ауысым соңында курьердің қолында қанша қолма-қол ақша бар екенін шығару мүмкін емес.
Картамен немесе аударыммен төлемді қабылдау интеграциямен мүмкін төлем сервисімен немесе орындаушының терминалымен — құрамы провайдерге байланысты және зерттеу кезінде нақтыланады.
Табыстау мүмкін болмаған тапсырыс курьер оны тапсырғанға дейін оның артында қалады: қоймаға кері, жөнелту пунктіне немесе басқа орындаушыға. Тапсыру алу сияқты — екінші тараппен ресімделеді. Оған дейін жеткізілмегені ауысымның жалпы статистикасында еріп кетпей, жеке тізіммен көрінеді.
Нұсқалардың бірде-бірі міндетті емес және бірде-бірі дайын деп мәлімделмеген: жиын зерттеу кезінде айқындалады — не жеткізілетіні, қандай даулар жиі туындайтыны және компанияның өзі қандай талап қоятыны бойынша. Растау неғұрлым қатаң болса, курьер нүктеде соғұрлым ұзақ тұрады, сондықтан оны күшейтудің мәні даулы жағдайлар шынымен бар жерде.
Қойма мен жеткізу — ортақ чаты бар екі бөлім емес, бір үдерістің екі учаскесі. «Жиналған, бірақ берілмеген» тапсырыс пен «берілген, бірақ белгіленбеген» тапсырыс — әртүрлі күйлер және оларды шатастыру қымбатқа түседі: біріншісін қоймадан, екіншісін курьерден іздейді.
Түйісу қарапайым құрылған: қоймашы беруді, курьер алуды белгілейді. Екі белгі де қойылмайынша, тапсырыс аралық күйде есептеледі және екі тарапқа да көрінеді. Сонда жоғалған орынның әрқашан жоғалған учаскесі болады және талдау ауысымнан сұрау алуға айналмайды.
Толық қойма есебі — қабылдау, адрестік сақтау, қалдықтар, жинақтау және түгендеу — жеке беттің тақырыбы: «Қойма үшін». Мұнда тек түйісу сипатталған: қойма курьерге нені береді және одан кері нені алады.
Қойма басқа бағдарламада жұмыс істесе — кәдімгі жағдай: қойма есебі бұрыннан бар жүйеде жүргізіледі және оны ешкім өзгертпекші емес. Сонда түйісу алмасумен құрылады: курьерлер бағдарламасы тапсырыстардың дайындығын және орындар құрамын алады, ал мәртебелерді, растауларды және қайтаруларды қайтарады.
Алмасу құрамы сыртқы жүйенің не бере алатынымен айқындалады және зерттеу кезінде нақтыланады. Дайын интеграцияны алдын ала мәлімдеу бөтен өнім үшін уәде беру болар еді.
Дәл сол принцип кері бағытта да — қайтаруларда да әрекет етеді. Тапсыру туралы белгісіз жеткізілмеген тапсырыс курьердің багажнигінде келесі ауысымға дейін өмір сүреді және дәл оған ешкім жауап бермейтін сәтте есептен жоғалады.

Кері ағын да дәл сондай маңызды: жеткізілмеген тапсырыстар, бас тартулар және ішінара қайтарулар қайтқан себебімен кері келеді. Қойма оларды жеткізілімді қабылдағандай — операциямен қабылдайды және тапсырыс қайтадан оның жауапкершілігіне айналады.
Үшінші ауысу — тапсырыс жауаптыны ауыстыратын жалғыз ауысу, сондықтан ол екі тараппен ресімделеді: қойма тапсырды, курьер қабылдады. Қадам өткізіліп жіберілсе, орын жоғалғанда учаскені атау мүмкін болмайды, ал жауапкершілік талдау кезіндегі дауыстың қаттылығына қарай бөлінеді.
Курьер қосымшасы
Маршрут және нүктелер
Жеткізуді растау
Диспетчерлік панель
Диспетчерлік панель — жүйенің екінші жартысы: курьерлер қосымшада жұмыс істеп жүргенде компания нені көретіні. Оның міндеті «барлық деректі көрсету» емес, дәл қазір шешім талап ететінін бір экранға жинау және қалғанын тереңге алып кету.
Мұндағы басты идея біреу: компания әр курьерге үнемі қоңырау шалмай, жеткізумен не болып жатқанын түсінеді. Диспетчер кімнің қай мекенжайы жабылғанын анықтау үшін бесеуін кезекпен теріп отырмай, экранға қарайды.
Панельде не көрінеді:
Қолжетімділік құқықтары панельді рөлдер бойынша шектейді: курьер күнге берілген өз тапсырмаларын ғана, диспетчер — өз ауысымын немесе аймағын, басшы — барлық бағыт пен есептерді көреді. Алушылардың байланыстарына қолжеткізу және жеткізуді жою — «қызметкер» деген ортақ пакет емес, жеке құқықтар.

Жүйе экранының кадры, сандар — көрнекілік үшін. Тақтайшалардың реті кездейсоқ таңдалмаған: бірінші болып ауысым көлемі, әрі қарай — шешім талап ететіні тұр. Бөлінбеген тапсырыстар соңында тұр, өйткені бұл диспетчер өзі және соңына дейін жабатын жалғыз тақтайша.
Жүгіну диспетчерге жеткізуге байланған күйде келеді: сұрақ қай мекенжай бойынша және ол қандай күйде екені көрінеді. Бұл әңгіменің жартысын — қай тапсырыс туралы екенін анықтайтын бөлігін — жояды.
Кері байланыс та солай жұмыс істейді: диспетчердің хабарламасы курьерге алтыншы мен жетінші қабат арасындағы баспалдақта еститін жеке қоңыраумен емес, тапсырма карточкасына келеді.
Шектеу әр адамдағы жеке құқықтармен емес, рөлмен беріледі. Әйтпесе жарты жылдан кейін жаңа қызметкердің қолжеткізуі «Ивановтағыдай» етіп бапталады да, оған нақты не ашылғанын ешкім айта алмайды.
Логистикалық жүйе жеткізу үдерісін толығымен басқарады: өтінімдер, жүктер, көлік, күнді жоспарлау және жұмысты бөлу. Курьер бағдарламасы — осы үдеріс ішіндегі орындаушының жұмыс құралы. Бұл бәсекелес екі өнім емес, бір міндеттің әртүрлі деңгейі: біреуі «жеткізуді қалай ұйымдастыру керек» деген сұраққа, екіншісі «оны қалай орындау және тіркеу керек» дегенге жауап береді.

Қойма тапсырыстың жиналғаны және берілгені үшін жауап береді. Логистика — оның кімге және қай күнге тағайындалғаны үшін. Курьер — тапсырыстың жеткені және табысталғаны үшін. Клиент тізбекті алумен жабады. Кез келген екі буын арасындағы үзіліс бірдей көрінеді: тапсырыс бір жүйеде бар және екіншісінде жоқ, ал ол үшін телефонды бірінші алған адам жауап береді.
Мекенжайы, аралығы, тапсырыс құрамы және алушысы бар дайын жеткізу, сондай-ақ тағайындау — ол қай курьерге және қай күнге берілген. Күнді жоспарлау және жұмысты бөлу логистикалық жүйе жағында қалады.
Тапсырманы орындаушыға әкеледі, оны нүктелер бойынша жетелейді, мәртебелер мен табыстауды растауды тіркейді. Бұл — жеткізу туралы нақты деректердің жалғыз көзі: қалғанының бәрі факт емес, жоспар.
Уақыты бар нақты мәртебелер, әр нүктенің нәтижесі, сәтсіз жеткізулердің себептері, қайтарулар және курьердің түсініктемелері. Осыдан логистика кезең есебін құрады, ал менеджер орындаушыға қоңырау шалмай клиентке жауап береді.
Курьерлер бағдарламасы бар жүйеге API арқылы қосылған жеке қосымша болып жұмыс істей алады: тапсырмаларды алады, мәртебелер мен растауларды қайтарады. Мұндай нұсқа логистикалық контурды өзгертпекші емес жерде қажет.
Логистикалық жақты егжей-тегжейлі талдау — тасымалдау өтінімдері, жүктер тізілімі, маршруттарды жоспарлау және көлікпен жұмыс — мына бетте: логистикаға арналған бағдарламалық қамтамасыз ету. Мұнда басқа нәрсе маңызды: курьердің белгілері — нақты мәртебелердің жалғыз көзі, сондықтан оның жұмыс орны соңғы емес, бірінші болып жобаланады.
Хабарландыру әйтпесе қоңырау шалуға тура келетін жерде қажет. Олар аз әрі нақты: әрқайсысы адамға бірдеңе істеу керек болатын оқиға туралы хабарлайды. Қалғанының бәрі тапсырмалар тізімінде қалады және курьерді баспалдақта алаңдатпайды.
Курьерге тапсырма келді: мекенжай, аралық және құрам. Ол оны ағымдағы жеткізудің соңында емес, бірден көреді — және қаланың басқа шетіне кетпей тұрып, нүктені аралау тәртібіне енгізе алады.
Диспетчер нүктелерді ауыстырды, шұғыл жеткізу қосты немесе жойылғанын алып тастады. Хабарландырусыз курьер бұл туралы ескі мекенжайға келгенде біледі — және қайтуға бір сағат жұмсайды.
Аралығы жақында бітетін нүкте бойынша еске салу. Ол мерзім өткен сәтте емес, алдын ала келеді: мәні кешігуді тіркеуде емес, оны болдырмауда.
Жою курьерге ол жетінші қабатқа көтерілгенге дейін жетеді. Тапсырыс оның қолында болса, хабарландырумен бірге әрі қарай не істеу керегі де келеді: қоймаға қайтару немесе басқа орындаушыға беру.
Тапсырма белгісіз тұр, жеткізу нәтижесімен жабылмаған, диспетчер нүкте бойынша сұрақ қойды. Бұл бақылау үшін жасалған бақылау емес: кешке жабылмаған жеткізу келесі күні талдауға айналады.
Клиентке де айтатын нәрсе бар: тапсырыс курьерге берілді, курьер жолға шықты, жеткізу ауыстырылды. Бұл компанияға келетін қоңыраулардың бір бөлігін жояды — мәртебені білетін адам оны нақтылауға қоңырау шалмайды.
Жіберу арналары — қосымшадағы хабарлама, SMS, мессенджер, электрондық пошта — енгізу кезінде таңдалады және интеграциямен қосылады. Нақты сервистерге дайын қосылымдарды алдын ала мәлімдемейміз: құрамы компания клиенттерінің немен пайдаланатынына және оның елінде не қолжетімді екеніне байланысты.
Тарих — «сақтық үшін» мұрағат емес, талдау құралы. Жазбалар өңделмейді: түзету себебі көрсетілген жаңа оқиғамен енгізіледі. Сондықтан «тапсырыс неге кешкі жетіде келді» деген сұрақтың нұсқалары емес, жауабы бар.
Орындаушы, тағайындау уақыты және авторы — тапсырма күн ішінде бір курьерден екіншісіне өткен болса, барлық қайта тағайындаумен бірге.
Жүкті берудің екі жақты фактісі: кім берді, кім қабылдады, қашан және қанша орын. Тапсырыс үшін жауапкершілік орындаушыда болатын сәт.
Әр ауысу дәл уақытымен және авторымен: шықты, нүктеге келді, табыстады. Осы белгілерден жеткізудің нақты ұзақтығы жиналады.
Жеткізу нәтижесі және растау тәсілі, ал ол болмаса — себебі, курьердің түсініктемесі және әрі қарай не шешілгені.
| Уақыт | Оқиға | Кім | Не жазылды |
|---|---|---|---|
| 09:12 | Тағайындалды | Диспетчер | Орындаушы — курьер Азамат, аралық 12:00—15:00 |
| 10:05 | Курьер алды | Қойма + курьер | 1 орын, қаптамасы бүтін, беруді екі тарап растады |
| 12:41 | Орнында | Курьер | Байтік Баатыр 53 мекенжайына келу |
| 12:58 | Әрекет сәтсіз | Курьер | Алушы жауап бермейді; түсініктеме: «шлагбаум жабық, күзет өткізбейді» |
| 13:20 | Ауыстырылды | Диспетчер | Алушымен сол күннің 17:00—19:00 аралығына келісілді |
| 17:34 | Жеткізілді | Курьер | Растау коды қабылданды, 2 400 сом төлем қолма-қол алынды |
Бұл жазба бойынша тапсырыстың жеткізілгені ғана емес, оның аралықтан бес сағат кейін неге келгені де көрінеді. Дәл осындай тізбектерді талдаған мағыналы: оларда үдерістің қай қадамы жүйеден тыс орындалатыны көрінеді — бұл жағдайда мекенжайда күзет арқылы өту тәртібі жазылмаған.
Есептер курьерлер ауысым ішінде қоятын сол жазбалардан жиналады — аналитика үшін деректерді жеке енгізудің қажеті жоқ. Көрсеткіш аз және әрқайсысы шешім қабылданатын сұраққа жауап береді: ертең қанша курьер қажет, үдеріс қай жерде жиі бұзылады, кімді жеңілдететін кез келді.
Күн, апта немесе ай ішінде қанша тапсырыс тағайындалды — компания, аймақ және курьер бойынша. Қалғанының бәрі есептелетін базалық сан.
Қаншасы нәтижесімен жабылды және олардың қандай үлесі келісілген аралыққа сыйды. Екіншісі біріншісінен маңыздырақ: кешігіп жеткізілді — жеткізілдімен бірдей емес.
Қанша тапсырыс қайтты және қандай себептермен: алушының бас тартуы, компанияның жоюы, жеткізілмегені. Себеп міндетті — онсыз сан ештеңе түсіндірмейді.
Жеткізу жүкті алудан табыстауға дейін қанша уақыт алады және нүктенің өзі қаншаны. Осы екі саннан уақыт қай жерде жоғалатыны көрінеді: жолда ма әлде орнында ма.
Адамға қанша нүкте келеді және ол шын мәнінде қаншасын жабады. Бұдан тағы бір курьер қажет пе әлде мәселе жұмысты бөлуде ме деген сұраққа жауап шығады.
Талдауды талап еткен жеткізулердің себептері көрсетілген тізбесі. Ай соңында «бәрі бола береді» емес, қайталанатын ақаулардың нақты тізімі көрінеді.
Кезең ішіндегі қызметкер және бағыт бойынша өнім. Жабылған тапсырмалардан жиналады, сондықтан бұл үшін жұмыс уақытының жеке есебі қажет емес.
Есептер файлмен жүктеледі, кесте бойынша құрыла алады немесе API арқылы сыртқы жүйемен алына алады — компанияның жиынтық есептілігі басқа бағдарламада жүргізілсе.
Жолақтар тапсырыстардың жалпы санынан емес, бірінші жолдан үлесті көрсетеді: салыстырған мағыналы орташамен емес, қалыпты нәтижемен. Мұндай кестеде екінші жолды талдау керек — аптасына жетпіс төрт кешігу «тығыз кесте» емес, ауысым үлгермейтін нақты мекенжайлар мен сағаттар.
Жеткізу сирек бөлек тұрады: тапсырыстар бір бағдарламадан келеді, клиенттер екіншісінде жүргізіледі, қойма — үшіншісінде. Төменде алмасу жиі құрылатын бағыттар. Нақты құрамы сыртқы жүйенің не бере алатынымен айқындалады және зерттеу кезінде нақтыланады — дайын коннекторларды алдын ала уәде етпейміз.
Ресімделген тапсырыс жеткізуге автоматты түрде берілуі мүмкін, ал мәртебе сатып алушыға жеке кабинетке қайтарылуы мүмкін. Витринаның өзі және тапсырыс есебі қалай құрылғаны мына бетте талданған: электрондық коммерция.
Тапсырыстардың дайындығы мен орындар құрамы қоймадан келеді, курьерге беру фактісі мен қайтарулар кері кетеді. Қойма контуры егжей-тегжейлі мына бетте талданған: «Қойма үшін».
Логистикалық жүйемен бірге жұмыс істей алады: ол күнді жоспарлайды және тапсырыстарды бөледі, курьерлер бағдарламасы нақты мәртебелерді қайтарады. Толығырақ — мына бетте: логистика жүйесі.
Клиенттер анықтамалығымен және мәмілелер тарихымен интеграция мүмкін: жеткізу клиент карточкасынан жасалады, ал оның нәтижесі менеджерге қайтарылады. Алмасу байланыстардың телнұсқасын көбейтпеу үшін клиент идентификаторы бойынша жүргізіледі.
Компанияның есептік контурымен бірге жұмыс істей алады: тапсырыстар, жүкқұжаттар, өзара есеп айырысулар, алу кезіндегі төлем. Алмасу бағыты қандай есеп негізгі деп танылатынымен айқындалады.
Карта, мекенжайларды геокодтау және нүктелер арасында жол салу сыртқы сервиспен интеграция арқылы қосылады. Қайсысы дәл — қажетті қалалардың қамтылуы және пайдалану шарттары бойынша таңдалады.
Курьер мен алушыға хабарламалар, алу кезінде төлеуге арналған төлем сервистері, мердігер-тасымалдаушылар. Әр қосылым — баптаудағы белгі емес, жеке алмасу модулі.
Жүйенің меншікті интерфейсі: жеткізу жасау, орындаушы тағайындау, мәртебе мен растауды алу, оқиғалар журналын алу. Ол арқылы жеке модулі жоқтың бәрі қосылады.
Алмасу ережелері барлық жерде бірдей: әр операцияның кілті бар, сондықтан қайта беру екінші жеткізу жасамайды; сәтсіз нәтиже жоғалмай, талдау кезегіне түседі; әр жіберілім мен әр жауап алмасу журналына жазылады. Осы үш ережесіз интеграция байланыс бірінші рет үзілгенге дейін ғана жұмыс істейді.
Жеткізу бір күнде толығымен жүйеге көшірілмейді: тапсырмалардың бір бөлігі бағдарламадан тыс жүргенде, оның мәртебелері ештеңе білдірмейді. Сондықтан іске қосу учаскелермен жүреді және әрбір келесісі жұмыс істеп тұрған алдыңғысына сүйенеді.
Курьерлер қазір тапсырмаларды қалай алады, мәртебелерді кім жүргізеді, табыстауды не растайды, қандай ерекше жағдайлар жиі туындайды және қандай бағдарламалар тұр. Қорытындысы — үдерістің сипаттамасы және бірінші кезекте не автоматтандырылатынының тізбесі.
Күйлердің ақырлы тізімі, олардың арасындағы ауысу ережелері және әр жеткізудің міндетті нәтижесі. Ең бағаланбаған кезең: онсыз қосымша хат алмасу жүргізілетін тағы бір орынға айналады.
Бір аймақ, бір ауысым немесе екі-үш орындаушы нақты жеткізулерде толық шеңберден өтеді: тағайындау, жүкті алу, маршрут, мәртебелер, растау, проблемалы нүктелерді талдау.
Қалған курьерлер пысықталған сызба бойынша, рөлдер мен құқықтар, интеграциялар жеке алмасу модульдерімен. Әрі қарай тарих жиналады, кезең ішіндегі есептер мен ауысымдарды жоспарлауға арналған деректер пайда болады.
Қанша курьер жұмыс істейтінін және күніне қанша жеткізу кететінін, тапсырмалар қазір қалай таратылатынын, табыстауды не растайтынын және тапсырыстар мен клиенттер қандай бағдарламаларда жатқанын жазыңыз. Біз бірінші кезекте не автоматтандырылатынын, қолданыстағы жүйелерге нені қосуға болатынын және пилотты неден бастаған дұрыс екенін айтамыз.