"""Procurement domain — full P2P platform layer. Owns the *fact-record + master-data + relational* layer of the Procure- to-Pay loop: * **procurement_categories** — first-class category master data (software / hardware / cloud / service). Each row carries default owner + cost-centre + reminder rules so new POs auto-populate. * **procurement_suppliers** — replaces the bare ``asset_suppliers`` phone-book with full vendor master data (tax id, banking, multi- contact JSON, payment terms, status). * **procurement_contracts** + ``_attachments`` + ``_versions`` — contracts are first-class entities. Files live on S3 (``helix-prod-uploads-ap-southeast-1``); version history tracks amount / expiry / status changes. * **procurement_orders** + ``_items`` — purchase orders, with line items pointing at the asset / software they fulfill, the four-role owner model (business / IT / finance / procurement), and external ID hooks for Helian (汇联易) approval + Oracle NetSuite payment. * **procurement_payments** — outbound payment records (separate from the internal ``software_monthly_bills`` per-seat chargeback). * **software_procurement_meta** — 1:1 sidecar on ``asset_software_ catalog`` separating *procurement basis* (contract / supplier / renewal date) from *operational state* (seat / SSO / offboarding). The domain does NOT own approval or actual payment execution — those remain in 汇联易 + Oracle NetSuite. Helix records intent + observed state + budget reservation + reminders, and exposes a one-click hand- off (PR 2 wire-up) to push to the finance system. """