{
  "test_id": "ORCL.O2C.AR.RCP.APPLY",
  "scenario_name": "Apply Receipt",
  "application": "Oracle Fusion Cloud",
  "product": "Financials",
  "module": "Accounts Receivable",
  "process": "Receipts",
  "business_flow": "Order-to-Cash",
  "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/accounts-receivable/receipts/apply-receipt/",
  "objective": {
    "intro": "The objective of this test is to verify that an eligible customer receipt in Oracle Fusion Accounts Receivable can be applied to one or more open transactions — with the applied amount correctly recorded, the transaction's open balance reduced accordingly, and the receipt's unapplied balance updated to reflect the application.",
    "confirms": [
      "the receipt selected for application is eligible — unapplied or partially applied, and not restricted from application",
      "one or more open transactions exist for the same customer and are eligible for application",
      "the selected transaction is correctly identified before the application is entered",
      "the application amount entered is accepted and does not exceed the eligible balance",
      "the receipt application is created without unexpected errors",
      "the transaction's open balance updates correctly after the application: Transaction Balance − Application Amount = Remaining Transaction Balance",
      "the receipt's unapplied balance updates correctly after the application: Receipt Balance − Application Amount = Remaining Unapplied Balance",
      "the created application is correctly linked to both the source receipt and the target transaction for later validation and audit"
    ],
    "scope_note": "This scenario validates the standard application path within the Apply stage of the AR Receipt lifecycle. It does not attempt to validate receipt creation, partial-only application scenarios, unapplication or reversal — those are addressed by separate test scenarios within the same lifecycle."
  },
  "preconditions": [
    "An unapplied or partially-applied receipt exists for the customer in Oracle Fusion Accounts Receivable.",
    "One or more eligible open transactions exist for the same customer.",
    "The transaction selected for application is not closed.",
    "The receipt is not on hold or otherwise restricted from application.",
    "The user has receipt application privileges for the relevant business unit.",
    "The accounting period intended for the application is open."
  ],
  "test_data": [
    {
      "field": "Business Unit",
      "example": "${BUSINESS_UNIT}"
    },
    {
      "field": "Customer",
      "example": "${CUSTOMER}"
    },
    {
      "field": "Receipt Number",
      "example": "${RECEIPT_NUMBER}"
    },
    {
      "field": "Receipt Balance",
      "example": "${RECEIPT_BALANCE}"
    },
    {
      "field": "Transaction Number",
      "example": "${TRANSACTION_NUMBER}"
    },
    {
      "field": "Transaction Balance",
      "example": "${TRANSACTION_BALANCE}"
    },
    {
      "field": "Application Amount",
      "example": "${APPLICATION_AMOUNT}"
    },
    {
      "field": "Currency",
      "example": "${CURRENCY}"
    },
    {
      "field": "Receipt Method",
      "example": "${RECEIPT_METHOD}"
    }
  ],
  "business_steps": [
    {
      "step_number": 1,
      "step_name": "Search for Existing Receipt",
      "action": "Search for and open the existing customer receipt to be applied.",
      "test_data": "${CUSTOMER} / ${RECEIPT_NUMBER}",
      "expected_result": "The correct receipt is located, confirming it is unapplied or partially applied and available for application.",
      "validation_type": "action",
      "note": "This single business step replaces multiple technical actions such as opening receipt search, entering the customer and receipt number, and selecting the result."
    },
    {
      "step_number": 2,
      "step_name": "Open Receipt",
      "action": "Open the receipt to review its current unapplied balance.",
      "test_data": "${RECEIPT_BALANCE}",
      "expected_result": "The receipt opens successfully and displays the correct unapplied balance.",
      "validation_type": "action"
    },
    {
      "step_number": 3,
      "step_name": "Search Eligible Customer Transactions",
      "action": "Search for open transactions belonging to the same customer that are eligible for application.",
      "test_data": "${TRANSACTION_NUMBER}",
      "expected_result": "Eligible open transactions for the customer are returned.",
      "validation_type": "action"
    },
    {
      "step_number": 4,
      "step_name": "Select Target Transaction",
      "action": "Select the specific transaction the receipt will be applied against.",
      "test_data": "${TRANSACTION_NUMBER} / ${TRANSACTION_BALANCE}",
      "expected_result": "The selected transaction is accepted and its current open balance is displayed.",
      "validation_type": "action"
    },
    {
      "step_number": 5,
      "step_name": "Enter Application Amount",
      "action": "Enter the amount of the receipt to apply to the selected transaction.",
      "test_data": "${APPLICATION_AMOUNT} / ${CURRENCY}",
      "expected_result": "The entered application amount is accepted.",
      "validation_type": "action"
    },
    {
      "step_number": 6,
      "step_name": "Apply Receipt",
      "action": "Submit the transaction to apply the receipt.",
      "test_data": "",
      "expected_result": "Oracle Fusion successfully creates the receipt application without unexpected errors.",
      "validation_type": "action"
    },
    {
      "step_number": 7,
      "step_name": "Verify Transaction Remaining Balance",
      "action": "Review the selected transaction's open balance after the application is created.",
      "test_data": "",
      "expected_result": "The transaction's open balance reduces correctly: Transaction Balance − Application Amount = Remaining Transaction Balance.",
      "validation_type": "business_assertion",
      "note": "This is a primary arithmetic business assertion for the scenario — the test does not stop merely because the application was submitted successfully."
    },
    {
      "step_number": 8,
      "step_name": "Verify Receipt Unapplied Balance",
      "action": "Review the receipt's unapplied balance after the application is created.",
      "test_data": "",
      "expected_result": "The receipt's unapplied balance reduces correctly: Receipt Balance − Application Amount = Remaining Unapplied Balance.",
      "validation_type": "business_assertion"
    },
    {
      "step_number": 9,
      "step_name": "Verify Application History",
      "action": "Confirm the application is recorded and retrievable in the receipt's application history.",
      "test_data": "",
      "expected_result": "The application is recorded and retrievable in the receipt's application history, correctly linked to the source receipt and target transaction.",
      "validation_type": "business_assertion",
      "note": "Confirms the application record exists and traces correctly back to both the receipt and the settled transaction."
    }
  ],
  "expected_results": [
    "An eligible receipt is applied to one or more open transactions.",
    "The applied amount matches the amount entered for application.",
    "The selected transaction's open balance updates correctly after application.",
    "The receipt's unapplied balance updates correctly after application.",
    "Transaction status updates correctly where the applied amount fully settles the balance.",
    "The application is correctly linked to both the source receipt and the target transaction.",
    "The application is retrievable in the receipt's application history.",
    "No unexpected balance discrepancy remains after application."
  ],
  "validation_checkpoints": [
    "Receipt application is created.",
    "Correct transaction is selected.",
    "Applied amount is correct.",
    "Open transaction balance is updated.",
    "Receipt unapplied balance is updated.",
    "Transaction status is updated where applicable.",
    "Application is retrievable in receipt history."
  ]
}
