{
  "test_id": "ORCL.O2C.OM.RET.EXCEPTIONS",
  "scenario_name": "Return Order Exceptions",
  "application": "Oracle Fusion Cloud",
  "product": "SCM / Order Management",
  "module": "Order Management",
  "process": "Returns",
  "business_flow": "Order-to-Cash",
  "scenario_type": "Negative / Exception Handling",
  "priority": "High",
  "automation_status": "SyntraFlow Ready",
  "library": "Syntra Standard",
  "canonical_url": "https://www.syntraflow.cloud/oracle-erp-testing-tool/test-library/scm/order-management/returns/return-order-exceptions/",
  "objective": {
    "intro": "Validate correct system behavior when exception conditions occur during return order creation or receipt, spanning both stages of the Returns cluster covered by Create Return Order and Receive Return.",
    "confirms": [
      "the deliberately invalid creation-stage or receipt-stage condition is correctly rejected or flagged rather than silently accepted",
      "the resulting validation or error message matches the expected condition for the exception raised",
      "no partial or inconsistent inventory state results from a transaction that Oracle correctly blocks",
      "return order status accurately reflects the blocked or unresolved state rather than indicating successful completion",
      "the transaction can be retried and completes successfully once the triggering condition is corrected",
      "audit or history detail reflects both the attempted and the corrected transaction"
    ],
    "scope_note": "A return exception scenario passes when Oracle correctly enforces the expected business rule or validation. This scenario does not attempt to certify a specific Oracle application defect. Where an exception appears unexpected or its cause is unclear, it is treated as requiring further investigation and supporting evidence rather than a confirmed conclusion."
  },
  "preconditions": [
    "Oracle Fusion Order Management return configuration is in place, including return reasons and disposition codes.",
    "A representative original sales order and return order exist that can be placed into a creation-stage exception condition — invalid order reference, missing reason code or expired return window.",
    "Test data required to trigger receipt-stage exception conditions — quantity exceeding authorization, invalid subinventory for disposition or a condition/disposition mismatch — is available or can be constructed.",
    "Test data required to trigger cross-stage exception conditions — security restriction, duplicate return creation or receipt against a cancelled return order — is available or can be constructed.",
    "The test user, or Syntra DataVault, can reproduce or observe exception conditions across both the creation and receipt stages."
  ],
  "test_data": [
    {
      "field": "Return Order Number",
      "example": "${RETURN_ORDER_NUMBER}"
    },
    {
      "field": "Original Order Number",
      "example": "${ORIGINAL_ORDER_NUMBER}"
    },
    {
      "field": "Item",
      "example": "${ITEM}"
    },
    {
      "field": "Return Quantity",
      "example": "${RETURN_QUANTITY}"
    },
    {
      "field": "Disposition",
      "example": "${DISPOSITION}"
    },
    {
      "field": "Return Reason",
      "example": "${RETURN_REASON}"
    }
  ],
  "business_steps": [
    {
      "step_number": 1,
      "step_name": "Sign In to Oracle Fusion",
      "action": "Sign in to Oracle Fusion Cloud with the appropriate test user credentials.",
      "test_data": "",
      "expected_result": "The user is signed in successfully and lands on the home page.",
      "validation_type": "action"
    },
    {
      "step_number": 2,
      "step_name": "Navigate to Order Management",
      "action": "Navigate to the Oracle Fusion Order Management work area.",
      "test_data": "",
      "expected_result": "The Order Management work area opens successfully.",
      "validation_type": "action"
    },
    {
      "step_number": 3,
      "step_name": "Construct the Exception Scenario",
      "action": "Construct a return scenario deliberately designed to trigger the exception condition under test — at either the creation or receipt stage.",
      "test_data": "${RETURN_ORDER_NUMBER} / ${ORIGINAL_ORDER_NUMBER} / ${ITEM}",
      "expected_result": "The return scenario is set up with the exception-triggering condition in place.",
      "validation_type": "action",
      "note": "This single business step replaces multiple technical actions such as opening the return screen, entering the deliberately invalid value and preparing the transaction."
    },
    {
      "step_number": 4,
      "step_name": "Attempt the Action at the Relevant Stage",
      "action": "Attempt the return action at the relevant stage — creation or receipt — using the exception-triggering test data.",
      "test_data": "${RETURN_QUANTITY} / ${DISPOSITION} / ${RETURN_REASON}",
      "expected_result": "Oracle Fusion processes the attempted action against the exception condition rather than silently accepting it.",
      "validation_type": "action"
    },
    {
      "step_number": 5,
      "step_name": "Capture the Resulting System Message",
      "action": "Capture the exact validation, error or system message returned by Oracle Fusion at the point the condition is triggered.",
      "test_data": "",
      "expected_result": "A validation or error message is displayed or logged for the attempted transaction.",
      "validation_type": "action"
    },
    {
      "step_number": 6,
      "step_name": "Verify the Message Matches the Expected Validation",
      "action": "Compare the captured message against the expected validation for the exception condition triggered.",
      "test_data": "",
      "expected_result": "The observed message matches the expected validation for the triggered condition.",
      "validation_type": "action"
    },
    {
      "step_number": 7,
      "step_name": "Correct the Triggering Condition",
      "action": "Correct the condition that triggered the exception — for example, the return quantity, reason code, disposition or subinventory.",
      "test_data": "",
      "expected_result": "The triggering condition is corrected in preparation for a retry.",
      "validation_type": "action"
    },
    {
      "step_number": 8,
      "step_name": "Retry the Transaction",
      "action": "Retry the same return transaction after correcting the triggering condition.",
      "test_data": "",
      "expected_result": "The retried transaction is accepted for processing.",
      "validation_type": "action"
    },
    {
      "step_number": 9,
      "step_name": "Verify Successful Completion After Correction",
      "action": "Confirm that the corrected transaction completes successfully and that return order status and audit history reflect both the original attempt and the correction.",
      "test_data": "",
      "expected_result": "The corrected transaction completes successfully, and return order status and history accurately reflect the attempted and corrected transaction.",
      "validation_type": "business_assertion",
      "note": "This is the main business assertion for the scenario — a correctly detected exception followed by a successful correction is a passing test, not a failure."
    }
  ],
  "expected_results": [
    "Each exception condition produces the expected Oracle Fusion validation or error message.",
    "No partial or inconsistent inventory state results from a transaction that Oracle correctly blocks.",
    "Return order status accurately reflects the blocked or unresolved state rather than false completion.",
    "The transaction completes successfully once the triggering condition is corrected and retried.",
    "Audit or history detail reflects both the attempted and the corrected transaction.",
    "Eligible, exception-free return transactions are not blocked by an unrelated exception condition."
  ],
  "validation_checkpoints": [
    "Each exception condition raises the correct, specific validation message.",
    "No partial or inconsistent inventory state results from a blocked transaction.",
    "Return order status accurately reflects the blocked state.",
    "Retry after correction succeeds.",
    "Audit or history reflects the attempted and corrected transaction."
  ]
}
