{
  "test_id": "ORCL.HCM.PAYROLL.PAYMENT",
  "scenario_name": "Payment Processing",
  "application": "Oracle Fusion Cloud",
  "product": "HCM",
  "module": "Payroll",
  "process": "Payment Processing",
  "business_flow": "Hire-to-Pay",
  "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/hcm/payroll/payment-processing/",
  "objective": {
    "intro": "This test validates payment processing once prepayments have completed, confirming that Oracle Fusion generates the expected payment records and output for each eligible worker in the target test environment.",
    "confirms": [
      "payment processing is only initiated against prepayment results that have already completed successfully",
      "eligible workers and payment amounts carried into payment processing match the underlying prepayment results exactly",
      "the organization payment method used for each payment reflects the worker's configured payment method",
      "payment output (such as a payment file or payment record set) is generated correctly where the process produces one",
      "the resulting payment status correctly reflects completed processing, and exceptions are surfaced rather than silently processed",
      "sensitive payment and banking data referenced in the test and its evidence is masked or placeholder data, never real"
    ],
    "scope_note": "This scenario validates that Oracle Fusion generates the correct payment records and output for a test/UAT environment — it does not transmit funds to any real bank or banking network under any circumstance, and validates output generation only, not actual fund movement."
  },
  "preconditions": [
    "Prepayments have already completed successfully for the relevant payroll result, and a prepayment result is available.",
    "The worker has an active assignment included in the completed prepayment result.",
    "A valid organization payment method (such as bank transfer) is configured for the legal employer and currency involved.",
    "Payment file/output configuration, where applicable, is set up for the relevant organization payment method.",
    "The test environment is a non-production Oracle Fusion TEST or UAT instance with no connection to a live banking network.",
    "The test user has an appropriate Payroll role with access to run and review payment processing."
  ],
  "test_data": [
    {
      "field": "Payroll",
      "example": "${PAYROLL}"
    },
    {
      "field": "Worker",
      "example": "${WORKER}"
    },
    {
      "field": "Prepayment Result",
      "example": "${PREPAYMENT_RESULT}"
    },
    {
      "field": "Organization Payment Method",
      "example": "${ORGANIZATION_PAYMENT_METHOD}"
    },
    {
      "field": "Payment Amount",
      "example": "${PAYMENT_AMOUNT}"
    },
    {
      "field": "Currency",
      "example": "${CURRENCY}"
    },
    {
      "field": "Payment Date",
      "example": "${PAYMENT_DATE}"
    },
    {
      "field": "Payment File Reference",
      "example": "${PAYMENT_FILE_REFERENCE}"
    },
    {
      "field": "Payment Status",
      "example": "${PAYMENT_STATUS}"
    }
  ],
  "business_steps": [
    {
      "step_number": 1,
      "step_name": "Sign In to Oracle Fusion Payroll",
      "action": "Sign in to Oracle Fusion Cloud with a user account that has Payroll payment processing access.",
      "test_data": "",
      "expected_result": "The Oracle Fusion Cloud home page loads successfully for the authenticated user.",
      "validation_type": "action"
    },
    {
      "step_number": 2,
      "step_name": "Navigate to Payroll",
      "action": "Navigate to the Payroll work area used to review prepayment results and process payments.",
      "test_data": "",
      "expected_result": "The Payroll work area opens successfully.",
      "validation_type": "action"
    },
    {
      "step_number": 3,
      "step_name": "Locate Completed Prepayments",
      "action": "Locate the completed prepayment result that is ready for payment processing.",
      "test_data": "${PAYROLL} / ${PREPAYMENT_RESULT}",
      "expected_result": "The correct completed prepayment result is found and available for payment processing.",
      "validation_type": "action"
    },
    {
      "step_number": 4,
      "step_name": "Initiate Payment Processing",
      "action": "Start payment processing against the selected, already-completed prepayment result.",
      "test_data": "",
      "expected_result": "Payment processing is initiated without errors.",
      "validation_type": "action"
    },
    {
      "step_number": 5,
      "step_name": "Review Payment Method and Output Configuration",
      "action": "Review the organization payment method and payment output configuration to be used for processing.",
      "test_data": "${ORGANIZATION_PAYMENT_METHOD}",
      "expected_result": "The reviewed configuration matches the expected organization payment method and output setup.",
      "validation_type": "action",
      "note": "This step reviews masked, placeholder payment method configuration only; SyntraFlow never displays real banking data and does not connect to a live banking network."
    },
    {
      "step_number": 6,
      "step_name": "Submit Payment Processing",
      "action": "Submit payment processing for the eligible workers included in the prepayment result.",
      "test_data": "${WORKER} / ${PAYMENT_DATE}",
      "expected_result": "Payment processing completes and produces a payment result for the submitted workers.",
      "validation_type": "action"
    },
    {
      "step_number": 7,
      "step_name": "Verify Payment Records Generated and Amounts Match Prepayments",
      "action": "Confirm that a payment record exists for each eligible worker and that each payment amount matches the corresponding prepayment amount exactly.",
      "test_data": "${PAYMENT_AMOUNT}",
      "expected_result": "A payment record is generated for every eligible worker, and each payment amount reconciles exactly to the underlying prepayment amount, with no discrepancy.",
      "validation_type": "business_assertion",
      "note": "This is the central business assertion for this scenario — payment processing is only correct if the generated payment records match eligible workers and amounts from the prepayment result exactly. This step validates test-environment payment output only, not real fund transmission."
    },
    {
      "step_number": 8,
      "step_name": "Confirm Payment Status",
      "action": "Review the resulting payment status for the processed workers, and the payment file reference where output is generated.",
      "test_data": "${PAYMENT_STATUS} / ${PAYMENT_FILE_REFERENCE}",
      "expected_result": "The payment status correctly reflects completed processing, and any exceptions are visible where applicable.",
      "validation_type": "action"
    }
  ],
  "expected_results": [
    "Payment processing completes successfully for a prepayment result that has already completed.",
    "Payment records are generated correctly for every eligible worker included in the prepayment result.",
    "Payment amounts match the underlying prepayment amounts exactly.",
    "The organization payment method used reflects each worker's configured payment method.",
    "Payment output, such as a payment file, is generated correctly where the process produces one.",
    "The payment status carries the correct completed status, and exceptions are surfaced rather than silently processed."
  ],
  "validation_checkpoints": [
    "Eligible payments generated correctly.",
    "Correct workers included.",
    "Amounts match prepayments exactly.",
    "Payment status correct.",
    "Payment output generated where applicable.",
    "Sensitive banking data protected in evidence (masked, never real)."
  ]
}
