Changelog

Bijgewerkt op 2026-05-24

Големи milestones в BedFlow, хронологично (най-новите първи).

📅 Май 2026 — Webbuilder + Micro tier + Mollie + TextMeFlow bundle

Седмица 4 (24 май)

  • TextMeFlow Starter безплатно включено от Starter+ — нашата собствена WhatsApp + SMS API (ЕС + GDPR + anti-ban) сега е безплатно включена при всеки BedFlow абонамент от Starter нагоре (Micro съзнателно изключен — първи upgrade бонус). 500 съобщения/месец. Активация с един клик от /account/billing → HMAC-подписан magic link → TextMeFlow акаунт автоматично създаден без Stripe checkout. На тримесечната фактура се появява €0 informational ред "TextMeFlow Starter — безплатно включено". Пълни докси: WhatsApp през TextMeFlow. TextMeBot остава технически поддържан като third-party legacy, но вече не се рекламира на pricing.
  • MyTourist eventual-consistency retry — комбинирани резервации, които пристигат преди техния собствен API да е readable (404 на /bookings/{id}), сега се retry-ват 3× inline + до 2× delayed през queued job (30s + 2min). Симптом, който решихме с това: стая 3 от комбинирана резервация 2+3 оставаше отворена в availability grid-а. Без повече telegram-spam при първи 404 — само след всички retries.
  • Inzichten cluster: Statistics е default — Статистики табът се отваря пръв, Communication log стои втори.
  • Hardening: /pricing crash-fix при opcache-staleness (isTextMeFlowBundled() method вместо constant-reference в blade); Livewire root-tag fix на /guest/bookings/{id}; URL audit tourist.openview.beroute('payment.show', ...).

Седмица 2 (12 май)

  • Mollie платежен gateway — освен Stripe сега поддържаме и Mollie като creditcard gateway. Особено релевантно за NL операторите, които искат iDEAL стандартно без Stripe такси. Per property избирате ИЛИ Stripe ИЛИ Mollie (XOR-правило през Filament-visibility + model-saving event); Bancontact може да остане до един от двата. Нови mollie_* колони на property_payment_settings, route /webhooks/mollie, синьо Mollie бутонче на /pay/{factuur} и нова точка на Connections-страницата. Пълна setup-документация в Mollie настройки.
  • Micro tier €19/месец — нов entry tier за ваканционни жилища + micro-B&B-та с 1-2 стаи. Always-on основа (Channex, плащания, email-автоматизации, гост портал, basic reports), без facilities, housekeeping, wellness, communication log, quote tool, restrictions grid и advanced statistics. Насочено към оператори, които иначе плащат при MyTourist €21.
  • Plan-feature флагове (SubscriptionPlan::FEATURE_* + User::hasPlanFeature()) — feature whitelist на pack така че Filament навигацията и страниците авто-скриват при липсваща plan-feature. Super-admin-ите винаги имат достъп.
  • GatedByPlanFeature trait — clean gating-pattern за Filament pages (Restrictions, CommunicationLog, CreateQuote, Housekeepers). Pages, които вече имат property-level visibility (HousekeepingSchedule, WellnessBookings), получават inline check.
  • Pricing page 5-колонна/pricing сега показва Micro → Hotel един до друг (NL/FR/EN/DE/ES/PT/BG), comparison матрицата разширена, support-tickets таблицата показва 0 за Micro, JSON-LD AggregateOffer.lowPrice 39 → 19.

Седмица 1 (1 май)

  • Mini-site webbuilder — собствена страница "Моят сайт" за самия собственик, не super-admin. Per-property branding (цвят/tagline/лого/favicon), снимки (hero + галерия), текст (intro + за нас), удобства с emoji-та и SEO-описание. Custom-domain root показва mini-site при активиране; booking widget остава достъпен през "Резервирай директно" CTA.
  • 1-клик импорт от съществуващ MyTourist сайт — давате URL, scrape-ваме theme color + снимки + удобства + контакт + SEO, готово за 30 сек. Критично за MT-клиенти, които преминават към BedFlow без да губят look-and-feel.
  • Preview-URL-ове — vanity {slug}.bedflow.eu + винаги-работещ fallback bedflow.eu/_preview/mini-site/{slug} за демо-та преди DNS-cutover.
  • + Артикул бутон на proforma-та — за "клиент попита по имейл нещо extra". Добавя ред, преизчислява ДДС + общи суми, regenerate-ва PDF. Работи на всяка proforma (вкл. MT-source с предупреждение).
  • POS bancontact + customer link + VIES — мобилният POS на Cindy сега има реален BC-QR, BC-prepaid откачане, customer-setting на име с VIES-VAT-lookup.
  • Folios система — multi-tab billing на една резервация (стая / honesty bar / wellness отделно платими), с отделни invoices per folio.
  • MT booking sync от часов → 5 минути — пресни директни/MT резервации кацат в grid-а за 5 мин (беше до 60 мин).
  • Клиенти без property fix + backfill — TenantScope не показваше Channex-test debtors поради липсващ property_id; всички 4 creator пътя оправени + съществуващи редове мигрирани с merge-on-duplicate-detection.
  • Стая 3 paint-fix — Channex-резервации без roomtype-mapping падаха от grid-а; добавен payload-name fallback, плюс pills сега се движат от средата на ден на пристигане до средата на ден на заминаване (отговаря на "те се настаняват по обяд").
  • Quick WhatsApp E.164 нормализация — TextMeBot изискваше международен формат, падаше с 30s timeout на 0472… номера; авто-конвертиране към +32472… през PhoneNumber lib.
  • Wellness combi-резервация fix — страницата показваше "вече планирано" за combi-гости дори без избор на slot; check сега чете calendar_event_id вместо текст-match.
  • 🐛 Различни fixes: country NOT NULL при property-create, opcache reset multi-host, storage:link bulletproof, dangling-symlink detection в diagnose, deploy.sh robustness.

📅 Април 2026 — MyTourist разкачваща фаза

Седмица 4 (21–22 април)

  • Ръководство live на bedflow.eu/docs — тази страница de facto
  • Email-автоматизации визуален redesign — journey timeline (list) + IF-THEN wizard с live резюме (edit)
  • Communication Log — 3 таба (WhatsApp / Telegram / Email) с body-preview на имейл
  • Check-in welcome + Wellness upsell email templates (с slot-availability check)
  • Housekeeping модул — външна почистваща помощ с поверителен портал, авто-WhatsApp, backlog-detection
  • Гост портал — 3 фази на един URL (pre-arrival + during + post-stay)
  • Telegram inline keyboard за check-in request approve/deny
  • Payment → booking auto-confirmation с Telegram известие
  • Bulk блокировки през десен клик на date-header
  • Ръчна резервация (телефон/walk-in) с debtor lookup + live availability
  • RoomType + Product + Invoice external_id nullable — локално създаване без MyTourist
  • 🐛 Payment reminder €0,00 / "в рамките на 0 часа" bugs оправени
  • 🐛 Payment reminder вече не изпраща при платени резервации (включително MyTourist резервации)
  • 🐛 Email preview 500 errors оправени

Седмица 3 (14–20 април)

  • BedFlow именуване + лога (navy + teal), bedflow.eu домейн
  • Landing page bedflow.eu с i18n (6 езика)
  • Channex интеграция — Saloon connector, webhook handler, sync commands (кодът готов, staging тест предстои)
  • Booking widget — 6-стъпков flow, многоезичен, extras + wellness slots

Седмица 1–2

  • Управление на тарифи пълен redesign — визуална price chain, базови цени grid, профили, календар
  • Statistics dashboard — KPI-та, YoY charts, wellness анализ, extras ranking

📅 Март 2026

  • Room / RoomType schema — локални модели независими от MyTourist
  • Преглед на стаи — month-grid с click-блокиране, check-in, WhatsApp, Bancontact QR
  • Guest portal основа — door unlock, honesty bar, фактура, избор на закуска

📅 По-рано

  • Debtor + Invoice + Product ресурси (MyTourist-обвързани първоначално)
  • Quote flow (offer page, UBL export, туристическа такса)
  • Payment page (Stripe checkout, Bancontact)
  • Wellness интеграция
  • Yuki push + Peppol
  • Statbel export
  • Dynamic pricing scraper

🔮 Все още за разработване

Виж roadmap или попитай за "списъка" в работна сесия. Главни точки:

  • 📝 Downstream верификация за нови стаи (test flow)
  • 🔁 Auto-confirm flow довършване
  • 🧪 Channex staging тестване (account aanmaken)
  • 🔄 MyTourist webhooks обработка по време на преходния период
  • 🤖 WhatsApp bot (Фаза 3, в diepvriezer)
  • 🔧 Housekeeping модул ✅ готов
  • 📨 Повече автоматични имейли (✅ 2 допълнително)
  • 🌐 Миграция на домейн
  • 🏨 Multi-property поддръжка
  • 📤 Data миграция — историческа MyTourist data към BedFlow native
  • 🧹 MyTourist overrides почистване (2920 ръчни календарни entries)