PO Management — business view

Technical trace: PO Management

1. Business Summary

Customer purchase orders track financial authorization for jobs. POs flow through statuses (ready/verified/used/cancelled), capture errors, support sharing across related accounts, and are created automatically during job intake.

2. Business Value

Ensures jobs are authorized before invoicing; supports verification and dispute resolution.

3. Users / Stakeholders

PMs, finance, AMs.

4. Workflows

  • Manual or auto-create during job intake.
  • Verification before invoicing.
  • Linkage to Client Invoice once invoiced.
  • Errors recorded by error type.

5. Sub-Features

  • PO sharing across related accounts.
  • Verification statuses.

6. Business Rules

  • PO status controls invoicing eligibility (verified/ready typically required).
  • Account-level PO option (e.g., "PO required") drives gating.
  • Error tracking flags compliance/quality issues.

7. Data Entities

PO, PO Status, Verification, Error Type, Account PO Option.

8. Entry Points

  • Finance PO screens; auto-creation in job intake.

9. Inputs & Outputs

  • Inputs: PO number, account, currency, amount, jobs.
  • Outputs: PO records, alerts, invoice eligibility.

10. Integrations

  • SAP (PO export integration).

11. Calculations / Logic

  • Amount tracking against jobs.

12. Status Lifecycle

  • Draft → ready → verified → used → closed/cancelled.

13. Permissions

  • PM, finance, AM; brand-scoped.

14. Reports & KPIs

  • PO ageing, errors by type, share usage.

15. Risks & Observations

  • Verification logic appears thin in the data layer — likely external/manual.
  • PO errors silently block invoicing if not surfaced to operators.

16. Source Code Evidence

  • app/Plugin/finance/Model/{Po, PoStatus, Verification, ErrorType}.php.

← Deep dives index