Աշխատանքներ

SaaS · Վաճառքի կետ

Multi-tenant POS և back-office SaaS ռեստորանների և սրճարանների համար

Հարթակ, որը վաճառվում է միանգամից բազմաթիվ սննդի բիզնեսների՝ desktop դրամարկղ, որը շարունակում է վաճառել offline, խոհանոցի և հերթի էկրաններ, ընկերության պորտալ, լոյալություն և մարքեթինգ, ֆիսկալ կտրոններ և հանրային API-ներ նրանց բջջային հավելվածների համար։

Դեր
Համատեղ առաջատար ինժեներ · API, պորտալ, դրամարկղ և offline հաբ
Տարիներ
2026
Հարթակներ
API · Ադմին վահանակ · Desktop հավելված · Offline հաբ · Կայք
Իմ մասնաբաժինը
~52% commit-ների

Խնդիրը

Սրճարանները չեն կարող դադարեցնել վաճառքը, երբ ինտերնետն անջատվում է, իսկ SaaS-ը երբեք չպետք է մի ընկերության տվյալները բացահայտի մյուսին։ Հարթակը պետք է offline սպասարկեր տեղում վաճառքները, հետո անվտանգ համաժամեցներ դրանք և խստորեն իրարից անջատ պահեր տասնյակ tenant-ներ՝ միաժամանակ ընդգրկելով ամեն ինչ՝ մենյուներից և պաշարներից մինչև անձնակազմ, վճարումներ և լոյալություն։

Ինչպես լուծեցի

  1. 01

    Tenant-ների մեկուսացումն ապահովված է երկու մակարդակով․ յուրաքանչյուր հարցում բացահայտ կրում է ընկերության scope-ը, իսկ տվյալների բազայի ընդլայնումը սխալ է նետում, եթե հարցումը երբևէ մոռանա այն։ Ցանկացած բացառություն պետք է ավելացվի allow-list-ում՝ գրավոր հիմնավորմամբ։

  2. 02

    Մասնաճյուղային offline հաբը՝ իր տեղական տվյալների բազայով, սպասարկում է տեղում վաճառքները, երբ cloud-ն անհասանելի է․ համաժամեցման յուրաքանչյուր հրաման դեդուպլիկացվում է ըստ տերմինալի, ուստի կրկնակի փորձը երբեք չի կրկնապատկի պատվերը։

  3. 03

    Տրանզակցիոն outbox-ը սնուցում է ֆոնային հերթերը և HMAC-ով ստորագրված webhook-ները, ուստի իրադարձությունները երբեք չեն կորչում վաճառքի և դրան արձագանքող համակարգերի միջև։

  4. 04

    Գործընկերային պատվերների idempotency key-երը, «արդյունքն անհայտ է» բացահայտ վիճակով վերադարձները և գիշերային համադրման առաջադրանքը դրամական հոսքերը դարձնում են աուդիտի ենթակա։

  5. 05

    «Սխալ tenant» թեստ յուրաքանչյուր մոդուլի թեստերում․ այլ tenant-ի տվյալներին դիմելը պետք է վերադարձնի 404, ոչ թե տվյալներ։

Ինչ է անում

  • Desktop դրամարկղ (Electron)՝ սարքերի սեսիաներով, ավտոմատ թարմացմամբ և offline ռեժիմով
  • Խոհանոցի, բարի և հերթի էկրաններ՝ իրական ժամանակի թարմացումներով WebSockets-ի միջոցով
  • Մենյուներ, մոդիֆիկատորներ, բաղադրատոմսեր, պաշարներ, մատակարարներ և գնման պատվերներ
  • Անձնակազմի դերեր՝ անհատական իրավունքներով, հերթափոխեր, հաճախումներ և օրվա փակում
  • Լոյալության ծրագրեր՝ մակարդակներով, պարգևներով, մարտահրավերներով և երկու հոգու հաստատմամբ
  • Ֆիսկալ կտրոններ՝ offline տարբերակներով և կրկնակի փորձերով
  • Սահմանափակ իրավունքներով API key-եր, հյուրի OTP մուտք և տարբերակավորված API հաճախորդների բջջային հավելվածների համար
  • Սխեմայով կառավարվող CMS, էլ. նամակների դիզայներ և սեգմենտների վրա հիմնված արշավներ

Արդյունքներ

Տվյալների մոդել
181
API endpoint
~936
Deploy արվող հավելված
6
Ֆոնային հերթ
20
  • 181 մոդելից բաղկացած դոմեն և ~936 API endpoint՝ մոտ չորս ամսում, երկու հոգանոց հիմնական թիմով
  • Վեց deploy արվող հավելված և տասը ընդհանուր փաթեթ՝ մեկ տիպավորված monorepo-ում
  • Այս պորտֆոլիոյում ներկայացված սրճարանների ցանցի հավելվածն ամբողջությամբ աշխատում է դրա հանրային API-ների վրա

Տեխնոլոգիաներ

  • NestJS 11
  • Prisma 6
  • PostgreSQL
  • Redis
  • BullMQ
  • socket.io
  • React 19
  • Electron
  • Next.js 16

Ինտեգրացիաներ

  • Ameria
  • Idram
  • Fiscal receipts
  • FCM & APNs
  • SMS
  • SMTP

Մանրամասները, անունները և վիզուալները ընդհանրացված են՝ հաճախորդների գաղտնիությունը պահպանելու համար։ Սիրով կներկայացնեմ ճարտարապետությունը զանգի ընթացքում։

Հաջորդ նախագիծըՊատվերների և առաքման հարթակ ռեստորանային ցանցի համար

Պրոդուկտի գաղափար ունե՞ք։Եկեք ստեղծենք այն։

Պատմեք ձեր գաղափարի, պրոդուկտի կամ թիմի մասին։ Սովորաբար պատասխանում եմ մեկ աշխատանքային օրվա ընթացքում։