Oracle Fusion Create PO-Matched Invoice Test Case
Validate that a supplier invoice matched to an Oracle Procurement purchase order correctly enforces the configured 2-way, 3-way, or 4-way matching rules, reconciling quantities, prices, and distributions back to the source PO.
| Test ID | ORCL.P2P.AP.INV.CREATE.POMATCH |
| Application | Oracle Fusion Cloud |
| Product | Financials |
| Module | Accounts Payable |
| Process | Invoice Processing |
| Business Flow | Procure-to-Pay |
| Scenario Type | Positive / Functional |
| Test Usage | Functional Testing / Regression Testing / UAT |
| Priority | High |
| Automation | SyntraFlow Ready |
| Library | Syntra Standard |
Note on test design: SyntraFlow executes the detailed Oracle Fusion UI interactions automatically while presenting the scenario as business-readable test steps for documentation, review and reporting. This scenario is presented as 14 business-readable test steps; SyntraFlow's automation executes approximately 39 underlying Oracle Fusion UI actions to complete it.
Test Objective
Validate creation of a supplier invoice matched against an eligible Oracle Procurement purchase order and confirm that the invoice, PO information, quantities, amounts and resulting distributions are processed according to the configured matching rules.
The scenario should confirm that:
- Invoice header captures the correct supplier, PO number, and match type reflecting the PO schedule's configured Match Approval Level (2-way, 3-way, or 4-way)
- Invoice line(s) correctly reference the matched PO number, PO line, and PO schedule/distribution
- Quantity invoiced does not exceed PO quantity ordered (or receipt/acceptance quantity for 3-way/4-way) beyond the configured Quantity Ordered Tolerance %
- Unit price on the invoice line matches the PO price within the configured Price Tolerance %
- Invoice distributions inherit charge accounts from the matched PO distribution(s), splitting or prorating correctly when a PO schedule has multiple distributions
- Invoice amount reconciles to the matched PO line/distribution amount for the quantity being invoiced
- Match results populate correctly in the Payables invoice workbench, including Matched Amount and remaining PO Quantity/Amount Available
- Partial-quantity matches leave the correct remaining open quantity and amount on the PO for future invoicing
- Matching status feeds correctly into downstream Payables Validation so match-related holds trigger only when tolerances are genuinely exceeded
This test does not cover Payables Validation hold resolution workflow, invoice approval routing, invoice accounting distribution posting, or payment processing — those are validated in separate scenarios in this cluster.
When to Use This Test
- AP team processes a supplier invoice against an approved PO after goods or services have been received
- Procurement-to-Pay regression suite validates behavior across 2-way, 3-way, and 4-way matching configurations
- Testing partial delivery / partial invoicing scenarios common with blanket POs, milestone billing, or staged shipments
- Verifying multi-line and multi-distribution PO invoices split correctly across cost centers, projects, or accounts
- Confirming Oracle's tolerance engine correctly allows or blocks invoices at quantity and price boundary conditions
- Regression after a patch, procurement policy change, or tolerance template update to confirm the matching engine still enforces configured rules
Where This Test Fits in the Procure-to-Pay Process
This test picks up once a supplier invoice has been entered against an eligible PO and focuses on the match action itself — reconciling invoice quantities, prices, and distributions to the purchase order before the invoice proceeds to Payables Validation.
Preconditions
- An approved PO exists in Oracle Procurement with status Open and is not fully invoiced or closed for invoicing
- PO schedule Match Approval Level is configured as 2-Way, 3-Way, or 4-Way per the scenario under test
- For 3-way/4-way matching, a receipt (and inspection/acceptance transaction for 4-way) exists with sufficient received/accepted quantity
- Invoice Tolerance template is configured in Manage Invoice Options for the Business Unit, including Quantity Ordered Tolerance % and Price Tolerance %
- Supplier and supplier site entered on the invoice match the supplier/site on the PO
- Invoice Business Unit, ledger, and currency align with the PO's procurement Business Unit
- User has the Accounts Payable Invoice Entry and Match Purchase Order Fusion privileges
- PO distributions reference valid, active (non-end-dated) charge accounts
- Test data is prepared for full-quantity, partial-quantity, multi-line, and multi-distribution PO scenarios
Exact setup and field availability may vary by Oracle Fusion implementation and security configuration.
Sample Test Data
| PO Number | PO-100482 |
| PO Line Number | 1 |
| PO Schedule Number | 1 |
| Match Approval Level | 3-Way |
| Supplier | Apex Industrial Supply Co. |
| Supplier Site | APEX-US-001 |
| Business Unit | US1 Business Unit |
| Quantity Ordered (PO) | 500 EA |
| Quantity Invoiced | 500 EA |
| Unit Price (PO) | $42.50 |
| Invoice Amount | $21,250.00 |
| Price Tolerance % | 5% |
Sample values are illustrative. Replace them with valid data from the target Oracle Fusion environment.
Test Steps
14 business-readable steps. SyntraFlow's automation executes ~39 underlying UI actions to complete these steps — see How SyntraFlow Automates This Test.
| # | User Action | Expected Result |
|---|---|---|
| 1 | Create invoice header Create a new standard invoice record for the supplier, selecting the Business Unit and supplier site tied to the target PO Supplier: Apex Industrial Supply Co.; Site: APEX-US-001 | Invoice header is created in Incomplete status with supplier defaults populated |
| 2 | Enter invoice number, date, and PO reference Enter the supplier invoice number, invoice date, and specify the PO number to match against Invoice Number: INV-30219; PO Number: PO-100482 | System confirms the referenced PO exists, is Open, and is approved for matching |
| 3 | Enter expected invoice amount Enter the total invoice amount expected from the matched PO line(s) Invoice Amount: $21,250.00 | Header amount is recorded and available for reconciliation against matched lines |
| 4 | Invoke Match to PO action From the invoice Lines tab, select Match and search for the PO to be matched PO Number: PO-100482 | Match to Purchase Order window opens and displays the eligible PO schedules and lines |
| 5 | Select PO line and schedule to match Select the specific PO line and schedule to match the invoice against PO Line 1, Schedule 1 | Item description, unit of measure, and PO unit price pre-populate from the selected PO line |
| 6 | Enter quantity to invoice Enter the quantity being invoiced against the selected PO line Quantity Invoiced: 500 EA | System calculates line amount as quantity multiplied by PO unit price |
| 7 | Review invoice unit price against PO price Review the invoice unit price defaulted from the PO and confirm no unauthorized override outside tolerance Unit Price: $42.50 Any manual price change is re-checked against Price Tolerance % at validation | Price is accepted as equal to, or within tolerance of, the PO price |
| 8 | Apply match and generate invoice line Confirm the match to generate the invoice distribution line tied to the PO | Invoice line is created referencing the PO number, line, schedule, and distribution |
| 9 | Review auto-populated distributions Navigate to the Distributions tab and review the charge accounts inherited from the PO distribution(s) | Distribution lines mirror the matched PO distribution accounts and split percentages |
| 10 | Match additional PO lines where applicable For multi-line PO invoices, repeat the match action selecting the next eligible PO line PO Line 2 | A second invoice line is created and correctly linked to PO Line 2 |
| 11 | Save the invoice Save the invoice record after all lines are matched | Invoice saves without error and match status is recorded on each line |
| 12 | Submit invoice for validation Run the Validate action on the invoice | Invoice validates successfully, or expected match-related holds are applied when a value falls outside tolerance |
| 13 | Review updated PO balance Navigate to the purchase order and review the updated Quantity Billed and Amount Billed fields | PO reflects reduced available quantity and amount corresponding to the matched invoice |
| 14 | Confirm invoice reconciles to matched PO dataBusiness assertion Verify that invoiced quantities, price, and distribution amounts tie out exactly to the matched PO line, schedule, and distribution values | Invoice quantity, price, and distribution amounts reconcile to PO data within configured tolerance, with correct remaining PO balance and no unexplained variance |
Expected Results
- Invoice line captures the PO number, line, and schedule/distribution reference correctly
- Quantity invoiced does not exceed available PO quantity beyond the configured tolerance
- Unit price on the invoice reconciles to the PO price within the configured Price Tolerance %
- Invoice distributions inherit the correct charge accounts from the matched PO distribution(s)
- Multi-line and multi-distribution PO invoices split amounts accurately across all matched lines
- PO remaining open quantity and amount update correctly after the invoice match
- Invoice amount equals quantity invoiced multiplied by the matched PO unit price
- Payables Validation correctly applies match-related holds only when tolerance is genuinely exceeded
- Closed or fully invoiced POs are correctly rejected from further matching
- Configured Match Approval Level (2-way, 3-way, or 4-way) is enforced per PO during the match action
Key Validation Checkpoints
- PO status is Open and not Closed for Invoicing prior to the match attempt
- Match window displays the correct eligible PO schedules for the entered PO number
- Selected PO line/schedule pre-populates item description, UOM, and PO unit price on the invoice line
- Quantity Invoiced field accepts the entered value and recalculates line amount automatically
- Distributions tab shows one invoice distribution line per matched PO distribution
- Distribution accounts match the PO distribution accounts exactly with no unexplained manual override
- For 3-way/4-way matches, received/accepted quantity is checked before the match is allowed to proceed
- Quantity Ordered Tolerance % from the invoice tolerance template is applied during validation
- Price Tolerance % from the invoice tolerance template is applied during validation
- PO's Quantity Billed and Amount Billed fields update immediately after invoice save
- Multiple PO lines matched on one invoice each generate distinct, correctly linked invoice lines
- Attempting to match against a closed or cancelled PO returns a controlled validation message, not a system exception
Go Beyond the Standard Test with Jarvis AI
The Syntra Standard Test Library defines the core business scenario. Jarvis AI can extend this scenario by generating additional positive and negative test variations using customer-specific test data and configuration available through Syntra DataVault.
Teams do not need to manually duplicate the same create po-matched invoice test case dozens of times simply to cover different combinations of data and configuration. Jarvis uses the standard business scenario as the foundation and generates relevant variations for the customer's environment.
From Standard Test to Executed Regression Pack
Rather than maintaining dozens of near-duplicate copies of the same test, SyntraFlow maintains the core business scenario and allows Jarvis AI to generate relevant variations using the customer's available test data.
AI-Generated Test Variations
The same Create Standard Supplier Invoice business scenario can produce many test variations without creating separate public library pages. Below is a real slice of SyntraFlow's Build Scripts library, filtered to Accounts Payable Invoice Processing.
- Exact quantity and price match
- Partial invoice against PO
- Multiple-line PO invoice
- Multiple PO distributions
- Different suppliers
- Different Business Units
- Different currencies where supported
- Different matching configurations
- Match to PO line vs PO schedule
- Final match closing remaining PO balance
- Invoice quantity exceeds PO quantity
- Invoice price exceeds tolerance
- Invoice quantity exceeds receipt
- Supplier mismatch
- Invalid PO number
- Closed PO
- Matching tolerance violation
- Required receipt not available
- Match to fully invoiced PO line
These are representative examples only. Expected behavior can depend on the customer's Oracle Fusion configuration, controls and security — not every Oracle configuration behaves identically.
Generated Using Your DataVault Test Data
The standard PO-matched invoice definition is parameterized so DataVault can drive matching configuration, quantity/price scenarios, and supplier/currency combinations without rewriting the underlying test.
Standard Library Definition
Test: Create PO-Matched Invoice
Supplier: {{Supplier}}
Supplier Site: {{SupplierSite}}
Business Unit: {{BusinessUnit}}
PO Number: {{PONumber}}
PO Line: {{POLine}}
Match Type: {{MatchApprovalLevel}}
Quantity Invoiced: {{QuantityInvoiced}}
Unit Price: {{UnitPrice}}
Currency: {{Currency}}
Quantity Tolerance %: {{QtyTolerancePct}}
Price Tolerance %: {{PriceTolerancePct}}
DataVault
MatchApprovalLevel: [2-Way, 3-Way, 4-Way] QuantityScenario: [Full, Partial-40pct, Over-Tolerance, Over-Receipt] PriceScenario: [Exact, Within-Tolerance, Exceeds-Tolerance] Supplier: [Apex Industrial Supply Co., Meridian Office Solutions, Northgate Logistics] BusinessUnit: [US1 Business Unit, UK1 Business Unit] Currency: [USD, GBP, EUR] POStatus: [Open, Closed-Invoicing, Cancelled] DistributionSplit: [Single, Multi-CostCenter]
Jarvis AI Generates
GEN-041: 3-Way Match, Full Quantity, Exact Price, USD GEN-042: 2-Way Match, Partial Quantity 40%, Within Tolerance GEN-043: 3-Way Match, Quantity Exceeds Receipt, GBP GEN-044: 4-Way Match, Multi-Distribution Split, Exact Price GEN-045: 3-Way Match, Price Exceeds Tolerance 8%, USD GEN-046: 2-Way Match, Multiple PO Lines, EUR
Customer-specific test data and AI-generated variations are not published to the Syntra Standard Test Library. They remain within the customer's controlled SyntraFlow environment and access model.
Example Test Variations
Jarvis expands the base PO-matched invoice scenario across matching configurations, quantity and price conditions, and negative tolerance boundaries.
| ID | Variation | Type | Key Difference | Execution |
|---|---|---|---|---|
| VAR-001 | Exact Quantity & Price Match (2-Way) | 2-Way/Price | Quantity and price match PO exactly; no receipt required for match | Syntra Ready |
| VAR-002 | Partial Quantity Invoice (3-Way) | 3-Way/Quantity | Invoice raised for 40% of PO quantity against an existing receipt | Syntra Ready |
| VAR-003 | Multi-Line PO Match | 3-Way/Quantity | Single invoice matches two separate PO lines in one transaction | Syntra Ready |
| VAR-004 | Multi-Distribution PO Match | 3-Way | PO schedule split across two cost-center distributions carried through to invoice | Syntra Ready |
| VAR-005 | 4-Way Match with Inspection | 4-Way/Receipt | Match requires accepted/inspected quantity in addition to receipt quantity | Syntra Ready |
| VAR-006 | Price Within Tolerance | Price | Invoice price 3% above PO price, inside the 5% tolerance band | Syntra Ready |
| VAR-007 | Quantity Exceeds PO Quantity | Quantity/Negative | Invoice quantity 15% over PO quantity against a 5% tolerance; hold expected | Syntra Ready |
| VAR-008 | Price Exceeds Tolerance | Price/Negative | Invoice price 8% above PO price against a 5% tolerance; hold expected | Syntra Ready |
| VAR-009 | Quantity Exceeds Receipt | Receipt/Negative | 3-way match attempted for quantity greater than received quantity; blocked | Syntra Ready |
| VAR-010 | Closed PO Match Attempt | Negative | PO is closed for invoicing; match action must be rejected with a controlled message | Syntra Ready |
No variations match this filter.
Automatically Expand Positive and Negative Test Coverage
Positive Testing
Jarvis generates scenarios using combinations expected to successfully complete the business process.
Valid data → Create PO-Matched Invoice completes successfully
Negative Testing
Jarvis can generate scenarios designed to exercise validations, business rules and exception handling.
- Invoice quantity exceeds PO quantity → Expected Oracle validation
- Invoice price exceeds tolerance → Expected Oracle validation
- Invoice quantity exceeds receipt → Expected Oracle validation
A negative test should not be marked as failed simply because Oracle rejects the transaction. If the expected Oracle validation occurs, the negative test has passed.
| Scenario | Oracle Outcome | Test Result |
|---|---|---|
| Full quantity 3-way match within tolerance | Invoice validated, matched to PO, distributions created and reconciled | PASS |
| Partial quantity invoice (200 of 500 EA) | Invoice matched to partial quantity; PO remaining open quantity reduced to 300 EA | PASS |
| Invoice quantity exceeds PO quantity by 15% (5% tolerance) | Payables Validation places a Quantity Ordered hold, invoice held from further processing | PASS |
| Invoice price exceeds tolerance by 8% (5% tolerance) | A Price hold is applied automatically during validation as configured | PASS |
| Match attempted against PO from an unrelated Business Unit | Unhandled system error thrown during the match action instead of a controlled validation message | FAIL |
Turn AI-Generated Variations into a Regression Pack
Users can select generated scenarios and group them into reusable execution packs.
AP PO-Matched Invoice Regression Pack
- Match Invoice to PO – Full Quantity
- Match Invoice to PO – Partial Quantity
- Multi-Line PO Invoice Match
- Multi-Distribution PO Invoice Match
- 2-Way Match Configuration
- 3-Way Match with Receipt
- 4-Way Match with Inspection
- Quantity Tolerance Boundary
- Price Tolerance Boundary
- Closed PO Match Rejection
Run On-Demand or Schedule Automated Batch Execution
SyntraFlow can execute selected scenarios individually or as a batch. Users can schedule regression packs according to their testing cycle.
Once scheduled, SyntraFlow executes the selected scenarios unattended and records the outcome of each test and business assertion.
| Pack | AP PO-Matched Invoice Regression Pack |
| Schedule | Weekly Regression |
| Tests | 20 scenarios |
| Execution | Batch Mode |
| Start | 10:00 PM |
| Environment | Oracle Fusion TEST |
| Status | Scheduled |
Illustrative example — not a live schedule.
Review Results Across the Entire Test Pack
Users can drill from the regression pack into a scenario, its business steps, the underlying automation actions, and the evidence captured for each.
Illustrative example data — not actual production metrics.
Regression Pack → Scenario → Business Step → Automation Action → Evidence
From Business Scenario to Execution Evidence
Business teams get readable test documentation; automation teams retain detailed execution traceability.
Meet Jarvis — SyntraFlow's AI Testing Engine
Jarvis extends the Syntra Standard Test Library by analysing the business scenario, available DataVault test data and expected business outcomes to generate additional test coverage for the customer's environment.
How SyntraFlow Automates This Test
The Standard Test defines the scenario; DataVault, Jarvis AI and SyntraFlow's execution engine take it from a single reusable business definition to executed, evidenced regression coverage.
Business Step → Underlying UI Actions
What SyntraFlow Captures Per Run
Action Status vs. Business Validation
A successful UI interaction does not automatically prove the business outcome — this is illustrative of how SyntraFlow separates action success from business validation; it does not reflect a specific live execution.
| Step | Action Status | Business Validation |
|---|---|---|
| Invoke Match to PO action | Pass | — |
| Enter quantity to invoice | Pass | — |
| Apply match and generate invoice line | Pass | Pass |
| Review auto-populated distributions | Pass | Pass |
| Confirm invoice reconciles to matched PO data | Pass | Pass |
Related Oracle Fusion AP Invoice Test Cases
Part of the same Procure-to-Pay invoice lifecycle. Linked cards are live; the rest are on the Syntra Standard Test Library roadmap.
Turn This Standard Test into Your Oracle Regression Suite
Start with the Syntra Standard Create PO-Matched Invoice test, use DataVault to provide environment-specific test data, let Jarvis generate additional positive and negative variations, and execute the resulting regression pack automatically with SyntraFlow.
Use This Oracle Fusion Test Case
Add to Test Library
Save to your SyntraFlow regression suite.
Coming soonAutomate with SyntraFlow
Run this script against your own tenant today.
Frequently Asked Questions
What is PO matching in Oracle Fusion Payables?
What is the difference between 2-way, 3-way, and 4-way matching?
What happens if the invoice quantity exceeds the PO quantity?
Can one invoice match multiple PO lines?
How does Syntra Standard test partial quantity invoices?
Does this test cover invoice validation holds?
- Home
- Oracle ERP Testing Tool
- Test Library
- Financials
- Accounts Payable
- Invoice Processing
- Create PO-Matched Invoice