2025 Q4: Customer Integration & Clean Core

Seamless creation and synchronization of Customer and Location master data.

S/4 HANA Business Partner Integration (25Q4)

Epic: 25Q4-E1
Completed

Goal: Enable seamless creation and synchronization of Customer and Location master data between SEP and S/4 HANA, eliminating manual data entry and ensuring single source of truth.

Business Value:

  • Reduce data entry time by 80%
  • Eliminate duplicate customer records
  • Ensure real-time data consistency
  • Enable offline-capable sales processes

SAP ECC Contracts Integration (ECC backend)

Epic: 25Q4-E5
Completed

Goal: Integrate CPQ with a real SAP ECC backend for Contract creation. Use a Node.js middleware to convert SOAP/XML responses into normalized JSON/OData for the CAP app to consume. Provide a robust mapping for the response payload so ECC contract numbers, statuses and error details are stored correctly.

Business Value:

  • Enable direct contract creation in ECC from CPQ
  • Keep ECC contract references in CPQ accurate and auditable
  • Reduce complexity in CAP services by delegating XML/soap handling to middleware

/ Next Steps

Epic: Notes
In Progress
  • Align on the middleware JSON schema and produce a small example payload for the team
  • Create `docs/25Q4-E5-mapping-spec.md` with the canonical field mapping and examples (owner: integration lead)
  • Add contract handler in `srv/handlers/contractHandlers.js` that calls middleware and maps response to DB
  • Add integration tests under `test/` referencing a middleware stub returning the normalized JSON
  • Estimate: 2–3 dev days to implement mapping + tests, 1 day for E2E validation with middleware stub

Improvements in the AI assistant (25Q4)

Epic: 25Q4-E2
Completed

Goal: Enhance the capabilities of the AI assistant to provide better support for sales representatives in managing customer and location data.

Business Value:

  • Improve response accuracy and relevance
  • Reduce time spent on data entry and management
  • Enhance user satisfaction with the AI assistant

General from 25Q3 taken to Q4 (25Q4)

Epic: 25Q4-E0
In Progress

Goal: Implement general enhancements and features requested in Q3 that were deferred to Q4.

Business Value:

  • Improve user experience and satisfaction
  • Enhance system capabilities and flexibility

Keep improving the Quote Tool (25Q4)

Epic: 25Q4-E3
In Progress

Goal: Enhance the Quote Tool to streamline the quotation process and improve usability for sales representatives.

Business Value:

  • Reduce time spent on creating and managing quotes
  • Improve accuracy and consistency of quotes

Improve the Location App (25Q4)

Epic: 25Q4-E4
In Progress

Goal: Enhance the Location App to provide better mapping and location selection features for sales representatives.

Business Value:

  • Improve the accuracy and efficiency of location selection
  • Provide better visibility of plant locations in relation to customer sites

SAP ECC Customers and Locations Integration (ECC backend)

Epic: 25Q4-E6
In Progress

Goal: Integrate CPQ with a real SAP ECC backend for BP creation. Use a Node.js middleware to convert SOAP/XML responses into normalized JSON/OData for the CAP app to consume. Provide a robust mapping for the response payload so ECC BP numbers, statuses and error details are stored correctly.

Business Value:

  • Enable direct BP creation in ECC from CPQ
  • Keep ECC BP references in CPQ accurate and auditable
  • Reduce complexity in CAP services by delegating XML/soap handling to middleware

Improve Contract API flow in ECC Integration (25Q4)

Epic: 25Q4-E7
Completed

Goal: Enhance the Contract API flow to support both creation and update of contracts in ECC from the Quote tool of SEP. To do this we need to improve the flow in which certain APIs are called to:

  • 1. Create the contract in SAP to get the initial prices
  • Let the Sales Rep check the prices.
  • 2. On a second Sync with backend, create new condition records for the updated prices.
  • 2.1 Those are stored in SEP as PC01 (DISCOUNT) or PC02 (SURCHARGE). The products classified as Discount or Surcharge in SEP will be used only to create those condition records in SAP ECC. Those products map to a specific condition type and pricing table in SAP ECC.
  • 2.2 We will need to handle the build of VARKEY for the condition records and their tables. To do that we need a new entity to store Pricing Table and their fields with their Character count needed for the VARKEY build. I foresee this being columns like:
  • PricingTable (e.g. KONH, KONP, etc)
  • FieldName (e.g. KNUMH, MATNR, etc)
  • FieldLength (e.g. 10, 18, etc)
  • Sequence (to build the VARKEY in the correct order)
  • 2.3 With the above entity we can build the VARKEY needed for each condition record to be created in SAP ECC.
  • 3. Then, we need to call the Contract Update API to finalize the contract in SAP ECC applying a repricing with the new condition records created.
  • 4. Finally, we need to map the response from the Contract Update API to get the final contract number, New prices for the PC03 (Product) items and status.

Business Value:

  • Enable accurate contract creation and updates in ECC from CPQ
  • Ensure pricing adjustments are reflected correctly in ECC contracts

Quote Approval Workflow Based on Pricing Changes (25Q4)

Epic: 25Q4-E8
Completed

Goal: Implement an approval workflow for quotes where repricing (discounts, surcharges, or price adjustments) materially changes the contract's TotalNetAmount. The workflow ensures all significant pricing changes are reviewed and approved before condition records become effective in the backend ERP.

Business Value:

  • Compliance: Ensure all material pricing changes are reviewed before impacting revenue
  • Risk Reduction: Prevent unauthorized discounts or pricing adjustments from flowing to ERP invoices
  • Flexibility: Support both percentage-based and per-unit discount scenarios via TotalNetAmount delta trigger
  • Auditability: Full trail of who approved what, when, and why
  • Reusability: Architecture designed to extend to Contracts and other approval scenarios

Architecture Decisions (MVP - Phase 1):

  • Trigger Metric: TotalNetAmount delta (InitialTotal - RepricedTotal) — handles both % and unit discounts uniformly
  • Execution Mode: Parallel approvals only (all eligible approvers can act simultaneously)
  • Level Aggregation: Take MAX(ApprovalLevel) from matched rules — highest authority decides
  • Delegation: Simple BackupApprover field per approver (no date-range validity in Phase 1)
  • Condition Record Strategy: Create with 1-day validity on submit; extend to full ValidTo on approval
  • Integration: Native CAP logic first; SAP BTP Workflow integration deferred to Phase 2

Visal Responses of node.JS and SAP backend to be explicity shown in the UI

Epic: 25Q4-E8-08
In Progress

Priority: Should Have

Story Points: 1

Status: Done (Completed: 2025-12-11)

As a Sales Rep

I want to see clear visual responses in the UI when actions involve node.JS middleware or SAP backend calls regarding approvals

So that I am informed about the success or failure of my actions in real-time

  • When submitting a quote for approval, the UI should display a loading indicator while the request is being processed by the node.JS middleware and SAP backend.
  • If there are errors, like not been configured to approve for the sales area, I want to be explicitly informed. right now this error is just been loggec to concole in nodejs.
  • If successful, a confirmation message should be shown indicating that the quote has been successfully submitted for approval.
  • Similar visual feedback should be provided for approve and reject actions, including loading indicators and success/error messages.
  • Perhaps evaluate a different way to interact with approval in general. for example, The button Submit for Approval could open a popovet for full flexibility, and show the details of the approval in the same popup. Also the buttons to approve reject could trigger popover to give the user those system reponses and perhaps the Approval History and Context inside the same popup for easier contextual information.

Activate Approval Workflow buttons on Sales Area configuration

Epic: 25Q4-E8-09
In Progress

Priority: Should Have

Story Points: 1

Status: Done

As a Sales Administrator

I want to enable or disable the approval workflow buttons based on the Sales Area configuration

So that the approval workflow is only active for Sales Areas where it is required

  • The buttons of approval workflow, those are Submit for Approval, Approve, and Reject, are visible only when there is at least one active ApprovalRuleConfig for the Sales Area of the quote.

```

Epic: Quote Approval Workflow

├─ Phase 1: MVP (Must Have - ~15 pts)

│ ├─ 25Q4-E8-01: Detect & Submit [3 pts]

│ ├─ 25Q4-E8-02: Approve/Reject [3 pts]

│ ├─ 25Q4-E8-03: Rule Configuration [2 pts]

│ ├─ 25Q4-E8-04: Approver Configuration [2 pts]

│ ├─ 25Q4-E8-06: UI Actions & Status [2 pts]

│ └─ 25Q4-E8-07: ERP Blocking [2 pts]

├─ Phase 1: Should Have (~1 pt)

│ └─ 25Q4-E8-05: Audit Logging [1 pt]

└─ Phase 2: Future Enhancements (backlog)

├─ Serial approval mode (sequential levels)

├─ AND logic (require all approvers at level)

├─ Delegation with date ranges

├─ Email/Push notifications

├─ SAP BTP Workflow integration

├─ Additional trigger dimensions (%, volume, credit)

└─ Contract approval reuse

```

Implementation Checklist

Epic: Technical
In Progress

S/4 HANA Sandbox Integration & Hybrid Search

Epic: 25Q4-E9
Completed

Goal: Connect to S/4 HANA Sandbox for read-only access, enable hybrid search (SEP + S/4), and facilitate mass synchronization.

Business Value:

  • Validate data against a real S/4 HANA system (Sandbox).
  • View "Hybrid" search results: see what exists in SEP vs. what exists in S/4.
  • Mass import/sync records from S/4 to SEP.
  • Check pricing conditions against real SAP logic (simulated via Sandbox).

Log Architecture Epic: Centralized Audit Logging (CDPOS/CDHDR style)

Epic: 25Q4-E10
Completed

Goal: Implement a centralized, immutable audit log for all critical actions (deletions, redactions, config changes, etc.) in the AI assistant and related modules, modeled after SAP ECC CDPOS/CDHDR.

Business Value:

  • Ensure compliance and traceability for privacy and security actions
  • Enable analytics and reporting on audit events
  • Support future regulatory and business requirements