Зв'язатись
SaaS і веб-застосунки · Laravel + React · 2026

OUR Cloud — розробка хмарного сховища для Азербайджану

Доробка й супровід хмарного сховища на BeDrive: оплата через Azericard, новий білінг, антивірус Dr.Web для кожного файлу, редагування в OnlyOffice, великі завантаження й бекенд мобільного застосунку.

OUR Cloud (ourcloud.az) — азербайджанське хмарне сховище для людей і компаній: файли, спільні папки й робочі простори, доступ з браузера й мобільного застосунку, тарифи в манатах. Сервіс працює на BeDrive, готовому скрипті на Laravel і React. Вбудованих у BeDrive Stripe і PayPal для Азербайджану не вистачало, а редагування документів, перевірки файлів антивірусом і нормальної роботи з великими файлами в ньому не було зовсім. З липня 2026 року ми доробляємо й супроводжуємо застосунок app.ourcloud.az: оплата карткою через Azericard, білінг, антивірус, редагування документів в OnlyOffice, великі завантаження та бекенд для мобільного застосунку.

Технічний стек

BeDrive (Laravel + React): свої модулі в бекенді й фронтенді, черга й фонові воркери на сервері, файли — в S3-сумісному сховищі Backblaze B2. Документи редагуються в OnlyOffice Docs на окремому сервері, файли перевіряє Dr.Web. Деплой ми перевели на GitHub Actions, а наші доробки переносили при кожному оновленні BeDrive (3.2.0 → 3.2.2), бо штатна кнопка оновлення їх стирає.

Головний екран app.ourcloud.az — файли користувача
Диск користувача з мініатюрами фото й документами.

Оплата через Azericard

Для Азербайджану ми підключили Azericard третім платіжним шлюзом: запит до банку з RSA-підписом, перевірка відповіді, повернення коштів з адмінки й розшифровка кодів відмови банку в журналі. Пройшли тести з банком і 7 липня перевели термінал у бойовий режим. Крім картки, покупець може взяти рахунок на банківський переказ, а реквізити банку адміністратор редагує сам.

Сторінка тарифів OUR Cloud
Тарифи в манатах із перемикачем «рік / місяць».
Оформлення тарифу: оплата карткою або банківським переказом
Оформлення: картка через Azericard або банківський переказ, промокод.

Білінг під бізнес замовника

Білінг BeDrive знав лише квитанції вже оплачених підписок. Ми переробили його за ТЗ замовника: рахунок створюється до оплати й живе за статусами (неоплачений, оплачений, скасований, прострочений), з нагадуваннями й строком оплати. Акаунт блокується лише за реальний борг. При зміні тарифу рахується різниця, з’явилися промокоди, а безкоштовні пакети для співробітників адміністратор призначає вручну, без рахунків і списань. В адмінці є розділи платежів і фінансів, рахунок для клієнта створюється однією кнопкою. Оплати з App Store й Google Play через RevenueCat потрапляють у ті самі фінанси.

Антивірус для кожного файлу

Кожен завантажений файл проходить перевірку у фоні: спершу ми поставили ClamAV, потім перевели сервіс на Dr.Web, підключений до антивірусного центру замовника. Поки файл перевіряється, відкрити його не можна. Заражений файл блокується, а в адмінці є список заблокованих і журнал дій. У картці файлу видно результат, рушій, сигнатуру й SHA-256, а в перегляді — позначку «Dr.Web · clean».

Панель властивостей файлу з результатом перевірки Dr.Web
Властивості файлу: результат перевірки, рушій, сигнатура й SHA-256.
Перегляд фото з позначкою Dr.Web clean
Перегляд файлу з позначкою перевірки.

Документи в OnlyOffice

У BeDrive Word і Excel відкривалися лише для перегляду. Ми підключили до сховища OnlyOffice Docs, тож документи й таблиці тепер редагуються прямо в браузері. Історію версій дописали самі, бо в BeDrive її не було: кожне збереження архівується, і стару версію можна відновити з панелі редактора.

Документ Word відкритий в OnlyOffice в OUR Cloud
Документ Word у редакторі OnlyOffice.
Таблиця Excel відкрита в OnlyOffice в OUR Cloud
Таблиця Excel у тому ж редакторі.

Великі файли, фото й відео

Файли від 256 МБ після завантаження дозбираються у фоні, тому завантаження на кілька гігабайт не впирається в тайм-аут запиту. Панель завантажень лишається на екрані при переході між розділами, а відсоток видно у вкладці браузера. Фото HEIC з iPhone отримали прев’ю у вебі, відео з iPhone перепаковуються так, щоб починали грати одразу.

Панель завантаження дев'яти файлів
Панель завантаження, яка не зникає при переході між розділами.

Спільний доступ

При поширенні файлу на пошту, якої ще немає в сервісі, людина отримує запрошення зареєструватися, а посилання на файл у месенджерах показує прев’ю.

Діалог Share з доступом за поштою й публічним посиланням
Поширення: запрошення за поштою й публічне посилання.

Бекенд для мобільного застосунку

Під мобільний застосунок ми зробили на сервері покупки тарифів через RevenueCat із вебхуком, пуші через Firebase, тихий пуш для синхронізації камери, вхід через Google і Apple та налаштування, які застосунок отримує з сервера.

Мобільна версія

Веб-версія на телефоні має компактну шапку, кнопку завантаження й сітку файлів у дві колонки. Адмінські таблиці платежів і фінансів ми переробили для вузьких екранів.

Підсумок

За нами оплата через Azericard і переказ, переробка білінгу, антивірусна перевірка Dr.Web, OnlyOffice з історією версій, робота з великими файлами, HEIC і відео з iPhone, запрошення при поширенні, бекенд мобільного застосунку, оновлення BeDrive зі збереженням доробок і супровід сервісу.

Готові обговорити реліз?

Відповідаємо протягом 60 хвилин у робочий час — з оцінкою бюджету, орієнтовним графіком і складом команди під вашу задачу.

Залишити запит