ShipCore — Umbrella Vertical for Transport Logistics¶
Phase 0 + Phase 1 + Phase 2 + Phase 3 закриті 2026-05-12. 25 архітектурних рішень підтверджено та застосовано. Усі implementation specs — ready. Phase 4 awaits user trigger.
Quick links¶
| Що шукаєте | Файл |
|---|---|
| Чому ShipCore існує (manifesto-style narrative) | concept.md |
| 25 рішень (single source-of-truth) | decisions-2026-05-12.md |
| Повний implementation roadmap з calendar | roadmap.md |
| Per-module specs (Django models + services + integrations) | modules/ — auto / forwarder / sea / rail / terminal / avia |
| Carrier APIs + EU compliance + UA-specific integrations | integration-matrix.md |
| Industry standards compliance (eFTI/eCMR/eTTN/eBL/ONE Record) | standards-matrix.md |
| Research base (competitors, customers, use-cases) | phase1-summary.md, phase2-summary.md |
0. TL;DR¶
ShipCore — specific-vertical продуктова лінія DOP для UA+EU транспортної логістики. Об'єднує існуючі transport-модулі (Fleet → shipcore_auto, Logistic → shipcore_forwarder, ContainerHub → shipcore_terminal) і нові вертикалі (Sea, Rail, Avia stub, Pricing) під thin shared core backend/shipcore/.
Wedge: UA mid-market форвардер і carrier у post-1С реальності з паралельною EU-готовністю через compliance-by-design.
Не «український Odoo» (generic) і не «український CargoWise» (global enterprise). Це specific-vertical wedge у нішу, де жоден з 7 топ-конкурентів не покриває одночасно EU + UA + mid-market + road-dominant + customs-heavy (phase1-competitors.md — 7 deep dives, незалежно підтверджено wedge).
Маніфестна основа — docs/manifesto.md § 5: «не «кращий generic», а «єдиний specific» у вузько обраній галузі». ShipCore = формалізація цієї тези у продуктову лінію.
1. Module map (final, Phase 3 commit)¶
1.1 Backend Django apps¶
backend/shipcore/ ← thin shared core (ЗАВЖДИ встановлений)
├── transport_unit / wagon / container / vessel / aircraft
├── route / location_point / port / station / airport
├── carrier / market_corridor / shipment_event
└── compliance/ ← cross-cutting sub-package (Phase 4 foundation)
├── exporters/ (efti_road / _rail / _iwt / _air / ecmr / ettn / emswe)
├── signing/ (KEP Дія + XAdES + sign-twice)
├── integrations/ (ICS2 ITSP / NCTS broker / customs UA / eBL hubs / УЗ Cargo)
├── mapping/ (canonical waybill → 3 projections)
└── sanctions/ (free EU XML → Sanctions.io → ComplyAdvantage)
backend/shipcore_auto/ ← з backend/fleet/ (open-source)
backend/shipcore_terminal/ ← з backend/containerhub/
backend/shipcore_forwarder/ ← з backend/logistic/ (значне розширення)
backend/shipcore_sea/ ← NEW
backend/shipcore_rail/ ← NEW (поглинає backend/transport/)
backend/shipcore_avia/ ← stub (Awery partnership у Phase 9+)
backend/shipcore_pricing/ ← NEW (Tariff/CPM/LaneRateView/FSC)
1.2 Per-module specs (Phase 4 implementation entry-points)¶
| Module | Phase impl | Sub-doc | Heart |
|---|---|---|---|
| shipcore (thin core) | Phase 4 | sections у decisions + concept § 8 | Wagon/Container/Vessel/Carrier/MarketCorridor/ShipmentEvent + compliance/ |
| shipcore_auto (open-source) | Phase 4 (refactor) + Phase 7 (costing) | modules/auto.md | Vehicle/Driver/Waybill + eTTN 2027-ready + CPM calculator |
| shipcore_forwarder | Phase 4 (refactor) + Phase 5 (carrier APIs + CargoWise migration) | modules/forwarder.md | Inquiry→Quote→Booking→Execution→POD→Invoice + multi-leg + 3 projections eFTI/eCMR/eTTN |
| shipcore_terminal | Phase 4 (refactor) + Phase 5.5 (Дунайські adaptation) | modules/terminal.md | Yard + gate + DCSA VGM REST v1.0 + bridge до big TOS |
| shipcore_sea | Phase 5 NEW | modules/sea.md | Vessel schedule + B/L (DCSA v3.0) + Maersk Spot + EMSWe (НЕ eFTI!) + Demurrage timers |
| shipcore_rail | Phase 6 NEW | modules/rail.md | RailwayWaybill (СМГС/CIM/combined) + УЗ Cargo direct API через ГІОЦ — first SaaS у цьому ринку |
| shipcore_pricing | Phase 7 NEW | section в decisions § 8 + forwarder.md | TariffPlan/FSC/Accessorial + LaneRateHistory tenant-private |
| shipcore_avia (stub) | Phase 9+ Awery partnership | modules/avia.md | Awery API connector + reuse OSS PHP ONE Record server |
1.3 Що не дублюється у ShipCore (lives у DOP horizontal):¶
- Бухгалтерія (PostingGroup / ChartOfAccounts / P&L / BS / CF) — Essentials/Accounting
- Контрагенти (Client / Organization / Contract) — Essentials
- Cash & Bank — Essentials
- Inventory для запчастин і палива — Essentials (з bridge до Fleet FuelLedger)
- HRM зарплата — HRM module
ShipCore обгортає ці примітиви у domain-специфічні документи (Waybill, Booking, B/L, CMR, СМГС), які пишуть проводки через стандартний posting framework.
2. Calendar timeline (overview)¶
Детально — roadmap.md § 0 ASCII timeline.
| Quarter | Phase | Что |
|---|---|---|
| 2026-Q3 | Phase 3 done | Concept + roadmap + module specs locked |
| 2026-Q4 → 2027-Q1 | Phase 4-7 (UA-focused) | ~15 weeks: refactor → Sea/Maersk → Дунайські TOS → Rail/УЗ → Quote builder |
| 2027-Q2 → Q3 | Phase 8 (EU expansion v1.5) | ~16 weeks revised: eFTI 4 connectors + ICS2 ITSP + EMSWe + eCMR hybrid + eBL 2 hubs + NCTS broker |
| 2027-Q4 | v1.5 launch | Перший зовнішній pilot після Wave 1 UA road carrier (TBD) |
| 2028+ | Phase 9+ | Awery partnership, advanced analytics, Client Portal B2B |
Calendar deadlines verified (standards-matrix.md): - ❌ 2026-06-01 ICS2 R3 (PL/RO/SK/HR/LV) — пропускаємо свідомо (v1 = UA-only, C7) - ✅ 2027-01-01 eTTN UA mandatory — Phase 4 deliverable, must hit - ⚠️ 2027-07-09 eFTI mandatory public authorities — Phase 8 deliverable з буфером ~1 квартал - 📅 2030 DCSA eBL 100% — комфортний горизонт
Total Phase 4-8 effort: ~28-32 weeks ≈ 7-8 months at baseline (1-2 sessions/week solo dev + AI-asst).
3. Архітектурні засади (3 principle decisions)¶
Детально — concept.md § 8, decisions-2026-05-12.md.
1. Carrier як окрема модель + Shipper/Consignee/NotifyParty як ролі. Carrier має SCAC/MC/DOT/AsMAP IDs/equipment list/scorecard — занадто специфічно для generic Client. Shipper/Consignee/NotifyParty — ролі на конкретному Booking з FK на Client.
2. Compliance-by-design з Phase 4 (C-eFTI-byDesign). Кожна модель з документом має canonical structure + 3 projections (eTTN/eCMR/eFTI). Phase 4 effort +30% (5 weeks замість 4), Phase 8 економимо тижні refactor.
3. Sea — окремо від eFTI (EMSWe Reg 2019/1239, не частина eFTI umbrella). eFTI покриває road/rail/IWT/air. Sea має власну regulatory framework (EMSWe + DCSA eBL). Часта помилка — Phase 1 research звернув.
4. Document inventory (Phase 3 closure)¶
docs/dop/modules/vertical/shipcore/
├── README.md ← цей файл (програмний overview)
├── concept.md ← manifesto-style narrative (~3500 слів)
├── decisions-2026-05-12.md ← 25 архітектурних рішень source-of-truth
├── roadmap.md ← detailed implementation roadmap (~7100 слів)
├── integration-matrix.md ← carrier APIs / compliance / UA-specific
├── standards-matrix.md ← 16 organizations + 22 identifiers + 9 mandatory standards
│
├── phase1-summary.md ← Phase 1 cross-track synthesis (8 corrections)
├── phase1-competitors.md ← top-7 deep dive (~6500 слів, 8 surprises)
├── phase1-ua-customers.md ← 5 ICP profiles + pilot wave order
├── phase1-use-cases.md ← 5 end-to-end flows (~7000 слів)
├── efti-compliance-deep-dive.md ← eFTI/eCMR/eTTN verified specs (~3800 слів)
│
├── phase2-summary.md ← Phase 2 cross-track synthesis (16 corrections)
├── phase2-carrier-apis.md ← Maersk/Hapag/CMA/MSC/Vizion + WIN + CarrierAdapter (~6500 слів)
├── phase2-eu-compliance.md ← eFTI 4 connectors + ICS2 R3 + EMSWe + eBL hubs (~7000 слів)
├── phase2-ua-integrations.md ← УЗ Cargo + eTTN providers + НП + BAF + customs UA (~6700 слів)
├── phase2-tracking-partnerships.md ← Vizion/Terminal49 + Awery + WIN + sanctions (~4300 слів)
│
└── modules/
├── README.md ← навігація по 6 sub-модулях
├── auto.md ← shipcore_auto implementation-ready (~3300 слів)
├── forwarder.md ← shipcore_forwarder implementation-ready (~4100 слів)
├── sea.md ← shipcore_sea implementation-ready (~3500 слів)
├── rail.md ← shipcore_rail implementation-ready (~3300 слів)
├── terminal.md ← shipcore_terminal implementation-ready (~3200 слів)
└── avia.md ← shipcore_avia (Awery partnership) (~2400 слів)
Сумарно: ~85K слів verified research + design material у 21 файлі.
5. Залежності, які блокують Phase 4 implementation¶
Не починаємо Phase 4 (refactor + compliance foundation) поки не закрили:
| Блокер | Власник | Trigger розблокування |
|---|---|---|
| Cash & Bank S6-S8 (UA print forms КО-1/2, cash limit, dashboard polish) | поточна horizontal track | done у todo.md |
| Sales Order Architecture Phase 1 (SO у Essentials, lifecycle, registers) | поточна horizontal track | done у todo.md |
| Fleet ↔ Essentials data bridge (FixedAsset для авто, fuel inventory bridge, driver payroll до waybill) | заявлено у todo.md | блокує shipcore_auto.VehicleCostBreakdown (Phase 7) |
| OpeningBalance тестування + ADR | заявлено у todo.md | блокує onboarding нових клієнтів |
| Pilot Wave 1 UA road carrier — identify + agreement (конкретний клієнт TBD, outreach через AsMAP/LinkedIn long-list) | власник | Phase 4-5 calendar window — узгодити з менеджментом обраного pilot |
| Maersk Spot sandbox credentials | власник | Phase 5 deliverable, ~1-2 тижні onboarding |
| УЗ Cargo / ГІОЦ B2B-договір + NDA | власник | Phase 6 (2-6 тижнів onboarding per phase2-ua-integrations.md) |
| Awery outreach (Tristan Koch CCO) | власник | Phase 9+ avia partnership, можна стартувати у Phase 4-5 calendar window |
6. Status legend¶
- ✅ implemented — готово до production
- ⚠️ partial — ядро є, розширення planned
- ⏳ in progress — активна робота
- 📋 planned — концепція є, код відсутній
- 💡 idea — раннє формулювання, без commitment
- 💎 paid plugin — поза community-збіркою
- 🟡 stub — мінімальна реалізація, треба розширити
- 🗄️ archived — закрито
7. Linkbacks¶
Foundation¶
- docs/manifesto.md — філософська основа vertical-фокусу (з § «Update 2026-05-12» про ShipCore)
- docs/DOCS.md — DOP documentation hub (нова секція ShipCore у Vertical modules)
- docs/dop/overview.md — DOP product overview (з оновленим vertical tree)
Existing modules які refactoring у ShipCore¶
- Fleet — auto автопарк →
shipcore_auto - Logistic — multimodal F&F →
shipcore_forwarder - ContainerHub — контейнерний термінал →
shipcore_terminal
Related research¶
- planning/truck-freight-pricing-western.md — CPM/CPK research, foundation для shipcore_pricing
- planning/gatehouse-plugin.md — Gatehouse як bridge до ShipCore (vehicle gate-in/out, weighing-ticket)
DOP-level context¶
- todo.md — поточна horizontal track (паралельно з ShipCore до Phase 4 trigger)
- done.md — закриті фази DOP horizontal track
Phase 3 final — 2026-05-12. Implementation Phase 4 awaits user trigger після resolution блокерів § 5.