{
  "test_id": "ORCL.E2E.P2P",
  "scenario_name": "Procure-to-Pay",
  "application": "Oracle Fusion Cloud",
  "product": "SCM",
  "module": "End-to-End SCM",
  "process": "Procure-to-Pay",
  "business_flow": "Procure-to-Pay",
  "scenario_type": "End-to-End / Cross-Module",
  "priority": "High",
  "automation_status": "SyntraFlow Ready",
  "library": "Syntra Standard Journey",
  "canonical_url": "https://www.syntraflow.cloud/oracle-erp-testing-tool/test-library/scm/end-to-end/procure-to-pay/",
  "objective": {
    "intro": "The objective of this test is to validate the complete Oracle Fusion Procure-to-Pay journey — requisition, approval, purchase order, PO approval, receipt, AP invoice, three-way match validation, supplier payment and accounting — with emphasis on cross-stage data continuity and matching integrity across all nine stages, not on re-testing each stage's own atomic, field-level validation. This page is an orchestration and journey test: it does not duplicate the scenario coverage already tested individually on the linked Create Purchase Requisition, Approve Requisition, Create Purchase Order, Approve Purchase Order, Receive Purchase Order, Create PO-Matched Invoice, Invoice Validation, Invoice Holds, Invoice Approval, Create Payment, Payment Accounting, Void Payment, Supplier Bank Account and Supplier Inactivation pages. Instead, it links to those live pages and adds scenarios that specifically test the hand-offs, quantity and amount continuity, and matching integrity between them.",
    "confirms": [
      "requisition, purchase order, receipt, invoice, payment and accounting data correctly carry forward from one stage to the next",
      "the three-way match correctly compares purchase order, receipt and invoice quantity and price",
      "variance within configured tolerance correctly allows the invoice to proceed, and variance beyond tolerance correctly places the invoice on hold",
      "payment amount correctly equals the eligible invoice balance, and accounting entries correctly reflect the full transaction chain",
      "document linkage — requisition, purchase order, receipt, invoice and payment — is correctly preserved end to end",
      "Oracle correctly enforces validation when data errors, configuration errors, security restrictions or closed periods are introduced at any stage of the journey (DATA_ERROR, CONFIGURATION_ERROR, SECURITY_ERROR, EXPECTED_VALIDATION)"
    ],
    "scope_note": "This scenario orchestrates and links to the individually tested Procurement and Financials AP family pages listed on this page; it does not re-test each stage's own field-level validation, which remains covered on those pages. It covers the standard Procure-to-Pay journey in Oracle Fusion Cloud SCM and Financials TEST/UAT environments and does not cover non-PO invoices, which are covered by separate Accounts Payable scenarios outside this journey."
  },
  "preconditions": [
    "A supplier ${SUPPLIER} and supplier site ${SUPPLIER_SITE} are active and enabled for procurement and payment in the target Oracle Fusion environment.",
    "Procurement and Financials AP are configured for either two-way or three-way match, with match tolerances defined according to customer policy.",
    "The test user or users hold appropriate access to progress a transaction through requisitioning, purchasing, receiving, invoicing, payment and accounting stages.",
    "Budgetary controls, tax setup, payment methods and an open ${ACCOUNTING_PERIOD} relevant to the journey are configured in the target environment.",
    "This scenario assumes each linked family page's own preconditions are separately satisfied — it does not re-verify field-level setup already covered on those pages."
  ],
  "test_data": [
    {
      "field": "Requisition",
      "example": "${REQUISITION}"
    },
    {
      "field": "Purchase Order",
      "example": "${PURCHASE_ORDER}"
    },
    {
      "field": "Supplier",
      "example": "${SUPPLIER}"
    },
    {
      "field": "Supplier Site",
      "example": "${SUPPLIER_SITE}"
    },
    {
      "field": "Item",
      "example": "${ITEM}"
    },
    {
      "field": "Quantity",
      "example": "${QUANTITY}"
    },
    {
      "field": "Receipt",
      "example": "${RECEIPT}"
    },
    {
      "field": "Invoice",
      "example": "${INVOICE}"
    },
    {
      "field": "Payment",
      "example": "${PAYMENT}"
    },
    {
      "field": "Accounting Period",
      "example": "${ACCOUNTING_PERIOD}"
    }
  ],
  "business_steps": [
    {
      "step_number": 1,
      "step_name": "Create and Approve the Requisition",
      "action": "Create a purchase requisition ${REQUISITION} for ${ITEM} and route it through requisition approval, using the linked Create Purchase Requisition and Approve Requisition scenarios.",
      "test_data": "${REQUISITION} / ${ITEM}",
      "expected_result": "The requisition is created and correctly approved, carrying supplier, line and quantity ${QUANTITY} detail forward.",
      "validation_type": "action",
      "note": "This step orchestrates the Create Purchase Requisition and Approve Requisition family pages rather than repeating their individual field-level test coverage."
    },
    {
      "step_number": 2,
      "step_name": "Create and Approve the Purchase Order",
      "action": "Convert the approved requisition ${REQUISITION} into purchase order ${PURCHASE_ORDER} against ${SUPPLIER} / ${SUPPLIER_SITE}, and route it through PO approval, using the linked Create Purchase Order and Approve Purchase Order scenarios.",
      "test_data": "${PURCHASE_ORDER} / ${SUPPLIER}",
      "expected_result": "The purchase order is created and correctly approved, carrying requisition, supplier, line and price detail forward without discrepancy.",
      "validation_type": "action"
    },
    {
      "step_number": 3,
      "step_name": "Receive Against the Purchase Order",
      "action": "Record receipt ${RECEIPT} of goods or services against the approved purchase order ${PURCHASE_ORDER}, using the linked Receive Purchase Order scenario, where the purchase order is configured for three-way match.",
      "test_data": "${RECEIPT}",
      "expected_result": "The receipt correctly references the purchase order and carries forward matching quantity and unit-of-measure detail.",
      "validation_type": "action"
    },
    {
      "step_number": 4,
      "step_name": "Create the AP Invoice Referencing the Receipt",
      "action": "Create a supplier invoice ${INVOICE} matched to purchase order ${PURCHASE_ORDER} and, where applicable, receipt ${RECEIPT}, using the linked Create PO-Matched Invoice scenario.",
      "test_data": "${INVOICE}",
      "expected_result": "The invoice is created referencing the correct purchase order and receipt, with quantities and prices carried forward for matching.",
      "validation_type": "action"
    },
    {
      "step_number": 5,
      "step_name": "Validate and Match the Invoice (Three-Way Match)",
      "action": "Submit the invoice for validation, allowing Oracle to perform the two-way or three-way match between purchase order, receipt and invoice, using the linked Invoice Validation scenario.",
      "test_data": "",
      "expected_result": "Invoices within tolerance pass validation and move toward approval; invoices outside tolerance are correctly placed on hold.",
      "validation_type": "action"
    },
    {
      "step_number": 6,
      "step_name": "Resolve Any Match Holds",
      "action": "Where a match hold is applied, review the hold reason using the linked Invoice Holds scenario and resolve it before resubmitting the invoice for validation and approval via the linked Invoice Approval scenario.",
      "test_data": "",
      "expected_result": "The hold is correctly resolved where the underlying variance is corrected, and the invoice correctly proceeds to approval.",
      "validation_type": "action"
    },
    {
      "step_number": 7,
      "step_name": "Submit and Process Supplier Payment",
      "action": "Select the approved, matched invoice ${INVOICE} and submit payment ${PAYMENT} to ${SUPPLIER}, using the linked Create Payment scenario, validating the supplier bank account is active and the supplier site is open.",
      "test_data": "${PAYMENT}",
      "expected_result": "Payment is created for the correct invoice amount and correctly reduces the open invoice balance.",
      "validation_type": "action"
    },
    {
      "step_number": 8,
      "step_name": "Create Payment Accounting",
      "action": "Create accounting for the invoice and payment ${PAYMENT} in the current ${ACCOUNTING_PERIOD}, using the linked Payment Accounting scenario.",
      "test_data": "${ACCOUNTING_PERIOD}",
      "expected_result": "Accounting entries are correctly created, reflecting the invoice liability and its relief through payment.",
      "validation_type": "action"
    },
    {
      "step_number": 9,
      "step_name": "Verify the Full Audit Trail Links Every Document Together",
      "action": "Trace the completed transaction from requisition through purchase order, receipt, invoice, payment and accounting to confirm the audit trail links every document together.",
      "test_data": "",
      "expected_result": "The audit trail correctly links requisition ${REQUISITION}, purchase order ${PURCHASE_ORDER}, receipt ${RECEIPT}, invoice ${INVOICE} and payment ${PAYMENT} end-to-end, with accounting correctly reflecting the full chain.",
      "validation_type": "business_assertion",
      "note": "This is the primary business assertion for the scenario — a fully linked, correctly matched and correctly accounted audit trail across every stage is the expected pass condition, not merely a successful payment."
    }
  ],
  "expected_results": [
    "The requisition, purchase order, receipt, invoice, payment and accounting are correctly linked end-to-end.",
    "The three-way match correctly compares purchase order, receipt and invoice quantity and price.",
    "Invoices within configured tolerance proceed to approval without a hold.",
    "Invoices outside configured tolerance are correctly placed on hold pending resolution.",
    "Payment amount correctly equals the eligible invoice balance.",
    "Accounting entries correctly reflect the full transaction chain, and unauthorized actions at any stage of the journey are correctly blocked."
  ],
  "validation_checkpoints": [
    "Requisition data correctly carries forward into the PO.",
    "PO data correctly carries forward into receipt.",
    "Receipt data correctly carries forward into the matched invoice.",
    "Three-way match correctly compares PO/receipt/invoice quantity and price.",
    "Variance within tolerance correctly proceeds, variance beyond tolerance correctly holds.",
    "Payment amount correctly equals the eligible invoice balance.",
    "Accounting entries correctly reflect the full transaction chain.",
    "Document linkage (requisition/PO/receipt/invoice/payment) correctly preserved end to end."
  ]
}
