{
  "test_id": "ORCL.R2R.IC.APPROVAL",
  "scenario_name": "Intercompany Approval",
  "application": "Oracle Fusion Cloud",
  "product": "Financials",
  "module": "Intercompany",
  "process": "Intercompany Transactions",
  "business_flow": "Record-to-Report",
  "scenario_type": "Positive / Functional",
  "priority": "High",
  "automation_status": "SyntraFlow Ready",
  "library": "Syntra Standard",
  "canonical_url": "https://www.syntraflow.cloud/oracle-erp-testing-tool/test-library/financials/intercompany/intercompany-approval/",
  "objective": {
    "intro": "Validate approval, acceptance and workflow routing of intercompany transactions according to configured rules — including how transactions are routed to the correct approver, how approve, reject and reassign actions update transaction status, and how rejected transactions can be corrected and resubmitted.",
    "confirms": [
      "a transaction awaiting approval is correctly identified and can be submitted into the approval workflow",
      "the transaction routes to the correct approver based on the applicable rule (amount, entity, or provider/receiver context)",
      "single-level and multi-level approval hierarchies are enforced as configured",
      "provider approval and receiver acceptance are enforced where configured",
      "approve, reject and reassign actions are correctly processed",
      "transaction status updates accurately reflect the approval outcome",
      "rejection reasons are captured and available to the transaction owner",
      "rejected transactions can be corrected and resubmitted into the approval workflow",
      "transactions requiring approval do not proceed to downstream accounting before approval is complete"
    ],
    "scope_note": "This scenario does not claim that intercompany transaction creation, exception handling or accounting are covered — those are addressed by separate test scenarios in the Intercompany lifecycle."
  },
  "preconditions": [
    "Oracle Fusion Intercompany access is configured and available for the test user.",
    "An intercompany transaction has been created and is awaiting approval or acceptance.",
    "Approval workflow and routing rules are configured for intercompany transactions.",
    "Valid approvers are assigned for both the provider and receiver sides of the transaction.",
    "The test user (or approver context) has permission to action Intercompany approvals."
  ],
  "test_data": [
    {
      "field": "Transaction",
      "example": "Created intercompany transaction, status Awaiting Approval"
    },
    {
      "field": "Approval Rule Context",
      "example": "Amount-based, entity-based, or provider/receiver-based — scenario-defined"
    },
    {
      "field": "Approval Threshold",
      "example": "${APPROVAL_THRESHOLD} — customer-configured value, not a fixed amount"
    },
    {
      "field": "Approver",
      "example": "Valid approver assigned to the applicable rule and level"
    },
    {
      "field": "Approval Action",
      "example": "Approve / Reject / Reassign / Resubmit"
    }
  ],
  "business_steps": [
    {
      "step_number": 1,
      "step_name": "Navigate to Intercompany",
      "action": "Navigate to the Intercompany work area in Oracle Fusion.",
      "test_data": "",
      "expected_result": "The Intercompany work area opens successfully.",
      "validation_type": "action"
    },
    {
      "step_number": 2,
      "step_name": "Locate the Transaction Awaiting Approval",
      "action": "Search for and open the transaction that requires approval or acceptance.",
      "test_data": "${TRANSACTION}",
      "expected_result": "The correct transaction is located and its status confirms it is awaiting approval.",
      "validation_type": "action",
      "note": "This single business step replaces multiple technical actions such as opening search, entering the transaction reference, clicking Search and selecting the result."
    },
    {
      "step_number": 3,
      "step_name": "Submit for Approval",
      "action": "Submit the transaction into the approval workflow where it is not already in the approval queue.",
      "test_data": "",
      "expected_result": "The transaction is accepted into the approval workflow.",
      "validation_type": "action"
    },
    {
      "step_number": 4,
      "step_name": "Verify Routing to Expected Approver",
      "action": "Confirm the transaction routes to the approver determined by the applicable approval rule.",
      "test_data": "${APPROVAL_RULE_CONTEXT}",
      "expected_result": "The transaction routes to the correct approver based on the amount, entity, or provider/receiver rule in effect.",
      "validation_type": "action"
    },
    {
      "step_number": 5,
      "step_name": "Sign In as Approver",
      "action": "Sign in as the assigned approver, or switch approver context where testing a multi-level approval hierarchy.",
      "test_data": "${APPROVER}",
      "expected_result": "The approver can access the transaction in their approval queue.",
      "validation_type": "action"
    },
    {
      "step_number": 6,
      "step_name": "Review the Submitted Transaction",
      "action": "Review the transaction details, amount and supporting information presented to the approver.",
      "test_data": "",
      "expected_result": "Transaction details are complete and available for review before an approval decision is made.",
      "validation_type": "action"
    },
    {
      "step_number": 7,
      "step_name": "Take the Approval Action",
      "action": "Approve, reject or reassign the transaction according to the scenario.",
      "test_data": "${APPROVAL_ACTION}",
      "expected_result": "The selected action is accepted by Oracle Fusion without unexpected errors.",
      "validation_type": "action"
    },
    {
      "step_number": 8,
      "step_name": "Verify Transaction Status Update",
      "action": "Confirm the transaction status updates to reflect the approval action taken.",
      "test_data": "",
      "expected_result": "Transaction status accurately reflects the approval outcome — for example Approved, Rejected, or Pending Next-Level Approval — consistent with the configured routing rule.",
      "validation_type": "business_assertion",
      "note": "This is the main business assertion for the scenario — the test does not stop merely because the approval action was accepted successfully."
    },
    {
      "step_number": 9,
      "step_name": "Review Rejection Reason",
      "action": "Where the transaction was rejected, review the rejection reason recorded against the transaction.",
      "test_data": "",
      "expected_result": "The rejection reason is captured and available to the transaction owner.",
      "validation_type": "action",
      "note": "Applicable to reject scenarios only — skipped for approve, reassign and auto-approved variations."
    },
    {
      "step_number": 10,
      "step_name": "Resubmit Corrected Transaction",
      "action": "Where applicable, correct the transaction and resubmit it into the approval workflow.",
      "test_data": "",
      "expected_result": "The corrected transaction is successfully resubmitted and re-enters the approval workflow at the appropriate level.",
      "validation_type": "action",
      "note": "Applicable only when correction and resubmission are required by the scenario."
    }
  ],
  "expected_results": [
    "Transactions requiring approval route correctly to the configured approver(s) based on the applicable rule (amount, entity, or provider/receiver context).",
    "Single-level and multi-level approval hierarchies are enforced as configured.",
    "Provider approval and receiver acceptance are enforced where configured.",
    "Approve, reject and reassign actions correctly update transaction status.",
    "Rejection reasons are captured and available to the transaction owner.",
    "Rejected transactions can be corrected and resubmitted into the approval workflow.",
    "Resubmitted transactions correctly re-enter the approval workflow at the appropriate level.",
    "Transactions requiring approval do not proceed to downstream accounting before approval is complete."
  ],
  "validation_checkpoints": [
    "Transaction status before approval matches Awaiting Approval.",
    "Routing matches the configured approval rule (amount, entity, provider/receiver).",
    "Assigned approver matches the expected approver for the rule and level.",
    "Approval action (approve/reject/reassign) is correctly recorded.",
    "Transaction status after the action matches the expected outcome.",
    "Multi-level transactions correctly progress to the next approval level.",
    "Rejection reason is captured when the transaction is rejected.",
    "Downstream accounting is blocked until approval is complete.",
    "Resubmitted transactions re-enter the approval workflow correctly.",
    "Unauthorized approvers cannot action the transaction."
  ]
}
