{
  "id": "EM-RTL-04",
  "name": "Корзина, оформление покупки и кассовая операция",
  "domain": "RTL",
  "kind": "subject",
  "wave": "W-IND",
  "industry": "Retail and e-commerce",
  "scope": "Онлайн-корзина или корзина в магазине, оформление, превращающее её в продажу, и завершённая кассовая операция со строками, применёнными ценами, способами оплаты, чеком и аннулированиями. Заказы на последующую поставку и счета являются отдельными контурами.",
  "candidate_types": [
    "Basket",
    "BasketLine",
    "CheckoutSession",
    "SalesTransaction",
    "TenderLine",
    "Receipt",
    "VoidRecord"
  ],
  "specific_questions": [
    "Когда корзина становится продажей, а когда заказом клиента на последующую поставку?",
    "Как фиксировать аннулирования, не удаляя операцию?",
    "Как оплата распределяется между способами оплаты и подарочными картами?"
  ],
  "proposed_invariants": [
    "Завершённая операция сбалансирована: строки, корректировки и налоги равны оплатам",
    "Аннулирование является новой записью со ссылкой на исходную",
    "Каждая операция ссылается на точку продаж, устройство и кассира"
  ],
  "negative_case": "Брошенные корзины считаются продажами, и товар днями резервируется под корзины, которые никогда не будут оплачены.",
  "acceptance_scenario": "Для синтетического магазина и интернет-магазина провести одну продажу за наличные и по карте, аннулировать одну строку, бросить одну корзину, превратить одно оформление в заказ с самовывозом и показать сбалансированные записи операций.",
  "comparison_tracks": [
    "Стандарты ARTS (OMG): POSLog для кассовых операций",
    "schema.org: Order, BuyAction и Offer",
    "W3C Payment Request API: интерфейс оплаты при оформлении"
  ],
  "vercy_candidates": [
    {
      "model_id": "WM-ECO-020",
      "mapping_status": "conceptual-candidate",
      "evidence_depth": "index-and-publication-metadata",
      "note": "Связь требует проверки полного семантического crosswalk; published не означает завершённую независимую экспертизу.",
      "runtime": {
        "id": "vr.wm-eco-020",
        "modelId": "WM-ECO-020",
        "name": "Sales Order",
        "version": "0.3.0-research.1",
        "status": "published",
        "installable": true,
        "pageUrl": "https://ver.cy/models/wm-eco-020-sales-order/",
        "specUrl": "https://ver.cy/models/wm-eco-020-sales-order/spec.yaml",
        "agentsUrl": "https://ver.cy/models/wm-eco-020-sales-order/AGENTS.md",
        "digest": "sha256:f53e990c9079cd4f08e82f3c03a53f07a132346da87386c89bac7e27a720233b",
        "requires": [],
        "unresolvedRequires": []
      }
    },
    {
      "model_id": "WM-ECO-009",
      "mapping_status": "conceptual-candidate",
      "evidence_depth": "index-and-publication-metadata",
      "note": "Связь требует проверки полного семантического crosswalk; published не означает завершённую независимую экспертизу.",
      "runtime": {
        "id": "vr.wm-eco-009",
        "modelId": "WM-ECO-009",
        "name": "Payment",
        "version": "0.3.0-research.1",
        "status": "published",
        "installable": true,
        "pageUrl": "https://ver.cy/models/wm-eco-009-payment/",
        "specUrl": "https://ver.cy/models/wm-eco-009-payment/spec.yaml",
        "agentsUrl": "https://ver.cy/models/wm-eco-009-payment/AGENTS.md",
        "digest": "sha256:e68d80fc51dcaa149e3114adda525c448edddde327f401683e9852e5c63de3e9",
        "requires": [],
        "unresolvedRequires": []
      }
    },
    {
      "model_id": "WM-ECO-008",
      "mapping_status": "conceptual-candidate",
      "evidence_depth": "index-and-publication-metadata",
      "note": "Связь требует проверки полного семантического crosswalk; published не означает завершённую независимую экспертизу.",
      "runtime": {
        "id": "vr.wm-eco-008",
        "modelId": "WM-ECO-008",
        "name": "Invoice / Commercial Document",
        "version": "0.3.0-research.1",
        "status": "published",
        "installable": true,
        "pageUrl": "https://ver.cy/models/wm-eco-008-invoice-commercial-document/",
        "specUrl": "https://ver.cy/models/wm-eco-008-invoice-commercial-document/spec.yaml",
        "agentsUrl": "https://ver.cy/models/wm-eco-008-invoice-commercial-document/AGENTS.md",
        "digest": "sha256:4e2adccc5ecfcbd1e1f4ac7c37d1125ea05619d1c473e6b5605fdc6a53e906d0",
        "requires": [],
        "unresolvedRequires": []
      }
    }
  ],
  "candidate_properties_from_v1": [],
  "suggested_owner": "Директор по розничным операциям",
  "candidate_master_systems": "POS, платформа электронной торговли, ERP",
  "related_research_contours": [
    "EM-COM-03",
    "EM-FIN-03",
    "EM-RTL-01",
    "EM-RTL-03",
    "EM-RTL-05",
    "EM-RTL-06",
    "EM-FIN-07"
  ],
  "blocking_decisions": [
    "Установить границу и решение reuse/extend/new по действующим спецификациям.",
    "Подтвердить semantic crosswalk, права и source mastership.",
    "Выбрать immutable refs; провести проверки fixtures до заявления о публикационной готовности."
  ],
  "research_progress": {
    "sequence": 130,
    "id": "EM-RTL-04",
    "status": "published-partial",
    "claude_status": "initial-industry-contour-and-card-supplement",
    "grok_status": "not-started",
    "boundary_decision": "Industry contour; reuses the referenced cross-industry contours and world models; no new runtime ID.",
    "publication_urls": [
      "https://ver.cy/enterprise/models/em-rtl-04/",
      "https://ver.cy/models/em-rtl-04/"
    ],
    "remaining_scope": "The independent second-provider study, fixtures and the full research protocol remain open. Runtime promotion is governed by the package allocation holds.",
    "target_model_ids": [],
    "latest_research_checkpoint_at": "2026-10-21",
    "latest_increment_completed_at": "2026-10-21T18:00:00Z"
  },
  "brief_url": "https://ver.cy/enterprise/models/em-rtl-04/"
}
