{
  "test_id": "ORCL.R2R.CM.BS.PROCESS",
  "scenario_name": "Process Bank Statement",
  "application": "Oracle Fusion Cloud",
  "product": "Financials",
  "module": "Cash Management",
  "process": "Bank Statements",
  "business_flow": "Record-to-Report / Cash Management",
  "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/cash-management/bank-statements/process-bank-statement/",
  "objective": {
    "intro": "The objective of this test is to verify that an authorised Cash Management user can process an eligible, validated bank statement in Oracle Fusion, resulting in the correct status update, intact transaction lines and availability of the statement for downstream reconciliation.",
    "confirms": [
      "the located statement is validated and eligible for processing",
      "Oracle Fusion accepts the processing request without unexpected errors",
      "the statement status updates correctly to reflect the processed state",
      "transaction lines remain intact and accurate after processing",
      "debit and credit transaction lines are both handled correctly",
      "multi-currency statements are processed using the correct statement currency",
      "the processed statement becomes available for downstream reconciliation",
      "statements that are ineligible for processing are correctly blocked"
    ],
    "scope_note": "This scenario does not claim that full reconciliation is performed — it verifies that processing completes correctly and that the resulting statement and transaction lines are made available for a separate reconciliation test scenario."
  },
  "preconditions": [
    "Oracle Fusion Cash Management is configured and available.",
    "A bank statement exists in Validated status and is eligible for processing.",
    "The associated bank account is active and correctly configured.",
    "No unresolved exceptions exist that would block processing.",
    "The accounting/banking period intended for processing is open.",
    "The test user has permission to process Cash Management bank statements."
  ],
  "test_data": [
    {
      "field": "Statement",
      "example": "Validated statement, ready to process"
    },
    {
      "field": "Bank Account",
      "example": "${BANK_ACCOUNT}"
    },
    {
      "field": "Currency",
      "example": "${CURRENCY} — e.g. USD, with multi-currency examples in GBP and EUR"
    },
    {
      "field": "Transaction Lines",
      "example": "${TRANSACTION_LINES} — debit and credit lines"
    },
    {
      "field": "Processing Batch",
      "example": "${PROCESSING_BATCH} — optional batch context for multi-statement runs"
    }
  ],
  "business_steps": [
    {
      "step_number": 1,
      "step_name": "Sign in to Oracle Fusion",
      "action": "Sign in to the Oracle Fusion environment using an authorised Cash Management test user.",
      "test_data": "",
      "expected_result": "Oracle Fusion home page is displayed successfully and the user session is established.",
      "validation_type": "action"
    },
    {
      "step_number": 2,
      "step_name": "Navigate to Cash Management",
      "action": "Navigate to the Cash Management work area.",
      "test_data": "",
      "expected_result": "The Cash Management work area opens successfully.",
      "validation_type": "action"
    },
    {
      "step_number": 3,
      "step_name": "Open Bank Statements",
      "action": "Open the Bank Statements task within Cash Management.",
      "test_data": "",
      "expected_result": "The Bank Statements work area is displayed.",
      "validation_type": "action"
    },
    {
      "step_number": 4,
      "step_name": "Locate the Validated Statement",
      "action": "Search for and open the statement that has completed validation and is eligible for processing.",
      "test_data": "${BANK_ACCOUNT}",
      "expected_result": "The correct validated statement is located and its status confirms it is eligible for processing.",
      "validation_type": "action",
      "note": "This single business step replaces multiple technical actions such as opening search, entering the account/statement reference, clicking Search and selecting the result."
    },
    {
      "step_number": 5,
      "step_name": "Initiate Statement Processing",
      "action": "Initiate processing for the located statement.",
      "test_data": "",
      "expected_result": "Oracle Fusion accepts the processing request and begins processing the statement.",
      "validation_type": "action"
    },
    {
      "step_number": 6,
      "step_name": "Monitor Processing Status",
      "action": "Monitor the statement's processing status until it reaches a final state.",
      "test_data": "",
      "expected_result": "The processing status updates and progresses to completion without becoming stuck or indefinitely pending.",
      "validation_type": "action"
    },
    {
      "step_number": 7,
      "step_name": "Review Processing Result",
      "action": "Review the result returned by Oracle Fusion once processing completes.",
      "test_data": "",
      "expected_result": "A clear processing result, success or error, is returned for the statement.",
      "validation_type": "action"
    },
    {
      "step_number": 8,
      "step_name": "Verify Statement Status Updated Correctly",
      "action": "Confirm the statement status has updated to reflect the processed state.",
      "test_data": "",
      "expected_result": "Statement status is updated correctly to reflect that processing has completed.",
      "validation_type": "action"
    },
    {
      "step_number": 9,
      "step_name": "Verify Transaction Lines Remain Intact",
      "action": "Review the statement's transaction lines after processing.",
      "test_data": "${TRANSACTION_LINES}",
      "expected_result": "Transaction lines remain intact, accurate and consistent with the validated statement — no lines are lost, duplicated or altered by processing.",
      "validation_type": "action"
    },
    {
      "step_number": 10,
      "step_name": "Verify Statement Is Available for Reconciliation",
      "action": "Confirm the processed statement is available to the reconciliation function.",
      "test_data": "",
      "expected_result": "The processed statement and its transaction lines are available for downstream reconciliation.",
      "validation_type": "action"
    },
    {
      "step_number": 11,
      "step_name": "Confirm No Unexpected Processing Errors",
      "action": "Review the processing outcome for unexpected errors or warnings.",
      "test_data": "",
      "expected_result": "No unexpected processing errors are present; any blocking conditions are limited to genuinely ineligible statements.",
      "validation_type": "action"
    },
    {
      "step_number": 12,
      "step_name": "Review Processed Statement Summary",
      "action": "Review the final processed statement summary, including status, transaction line count and processing outcome.",
      "test_data": "",
      "expected_result": "The statement is confirmed as successfully processed, with status, transaction lines and availability for reconciliation all correct and consistent with the test scenario.",
      "validation_type": "business_assertion",
      "note": "This is the main business assertion for the scenario — the test does not stop merely because the processing action completed without error."
    }
  ],
  "expected_results": [
    "Eligible, validated statements process successfully.",
    "Statement status updates to reflect the processed state.",
    "Transaction lines remain intact and accurate after processing.",
    "Debit and credit transaction lines are both handled correctly.",
    "Multi-currency statements are processed using the correct statement currency.",
    "The processed statement becomes available for downstream reconciliation.",
    "Ineligible statements are correctly blocked from processing.",
    "No unexpected processing errors occur for eligible statements."
  ],
  "validation_checkpoints": [
    "Statement is confirmed eligible before processing begins.",
    "Processing status transitions correctly to a final state.",
    "Statement status reflects the processed state.",
    "Transaction line count and details match the pre-processing statement.",
    "Debit and credit lines are both handled correctly.",
    "Statement currency is correctly applied for multi-currency scenarios.",
    "Statement is confirmed available for reconciliation.",
    "Unresolved exceptions correctly block processing.",
    "Invalid or inactive bank accounts correctly block processing.",
    "No unexpected processing errors are recorded."
  ]
}
