Markdown Editor

WRICEF Object Specification Template (Functional and Technical)

Object summary, WRICEF type, business rules, functional and type-specific design, clean core rating, mapping, errors, security, tests, transport

アーキテクチャフルWRICEF practice on ERP programmes; SAP Activate Explore; SAP clean core levelswricefobjectspecification

使い方: Use it for each workflow, report, interface, conversion, enhancement or form that closes an approved gap in an ERP or SaaS programme. Fill the business requirement, business rules and functional design first and get them approved before technical design. The main pitfall is leaving exceptions and error handling to the developer, who then invents business rules.

プレビュー

WRICEF Object Specification: [Object ID] [Object name]

Combined functional and technical specification for one development object in a packaged-application project: a workflow, report, interface, conversion, enhancement or form (WRICEF). It links the object to the approved gap, describes the business requirement and functional design, the type-specific design, the technical design and its clean core rating, data mapping, error handling, security, non-functional needs, test cases, transport and deployment, and operational handover. WRICEF is an object classification used by systems integrators on SAP and other ERP programmes (SAP Activate names WRICEF identification and design as Explore phase work for private cloud and on-premise projects). Replace every [bracketed] value and every row marked Example.

Document control

FieldValue
Document ID[WRS-001]
Object ID[INT-AP-003]
Object name[Scanned supplier invoices to draft invoices]
WRICEF type[W / R / I / C / E / F]
Complexity[Low / Medium / High / Very high]
Fit-gap ID and decision[FG-NNN], [FGD-NNN]
Target system and release[Product, edition, release]
Delivery release[R1]
Version[0.1]
Status[Draft / Functional approved / Technical approved / Built / Tested / Deployed]
Owner[@functional-consultant]
Approvers/reviewers[@process-owner], [@solution-architect], [@dev-lead], [@security-reviewer]
Developer[@developer]
Last updatedYYYY-MM-DD
Classification[Internal / Confidential]

Approvals

RoleNameScopeDecisionDate
Process owner[@name]Sections 1 to 4[Approve / Reject]YYYY-MM-DD
Solution architect[@name]Sections 4 to 6, clean core level[Decision]YYYY-MM-DD
Development lead[@name]Sections 5 to 11[Decision]YYYY-MM-DD
Security reviewer[@name]Section 8[Decision]YYYY-MM-DD

Revision history

VersionDateAuthorChange summary
0.1YYYY-MM-DD[@name]First draft of functional design
1.0YYYY-MM-DD[@name]Example: Functional and technical design approved
1.1YYYY-MM-DD[@name]Example: Added duplicate check after integration test defect DEF-221

Contents

1. Object summary

ItemValue
One-line descriptionExample: Receive scanned supplier invoices from the capture provider and create draft supplier invoices for review
ProcessExample: PRC-011 Supplier invoice with three-way match
Users affectedExample: 25 accounts payable clerks in 4 companies
Frequency and volumeExample: Continuous, 600 invoices per day, peak 1,500 at month end
Clean core levelExample: A (released API, Integration Suite)
Build effortExample: 10 person-days (estimate range 8 to 12)
DependenciesExample: Capture provider sandbox, supplier master migrated, communication arrangement set up

1.1 WRICEF types used in this project

CodeTypeCoversTypical specification focus
WWorkflowApprovals, notifications and multi-step tasks between people or systemsSteps, agents, deadlines, escalation
RReportLists, analytical views and extracts for usersSelection, layout, calculations, authorisation
IInterfaceData exchange with another system, in either directionPattern, protocol, mapping, error handling
CConversionOne-time or repeated migration of legacy dataSource, mapping, load method, reconciliation
EEnhancementAdded or changed logic at a supported extension pointTrigger, logic, extension point, side effects
FFormPrinted, emailed or electronic documentsLayout, data, channel, languages

1.2 Complexity rules

ComplexityGuideline (Example)Effort band
LowOne source, simple mapping, no new logic beyond validationUp to 5 person-days
MediumSeveral sources or rules, error handling, one external system5 to 15 person-days
HighComplex logic, several systems or high volume15 to 40 person-days
Very highNew application or algorithm, many systems, strict performanceOver 40 person-days; split if possible

2. Business requirement

ItemValue
Fit-gap referenceExample: FG-005, decision FGD-002
NeedExample: Supplier invoices arrive as paper and PDF; clerks retype them, causing delays and errors
Expected benefitExample: Remove manual keying for 80% of invoices; cut posting time from 2 days to same day
Options rejectedExample: Second capture product (duplicates current contract); manual upload (no saving)
Mandatory driversExample: None legal; internal control requires an audit trail from image to posting
Acceptance criteriaExample: A scanned invoice appears as a draft within 5 minutes with supplier, amount, currency, tax and order reference filled; the image is linked

2.1 Business rules

Rule IDRuleSource
BR-001 (Example)An invoice with an order reference is matched to the order; without one it goes to the non-order queueAP policy section [n]
BR-002 (Example)A duplicate is an invoice with the same supplier, invoice number and amount within 12 monthsAP policy
BR-003 (Example)Invoices above USD 50,000 need a second reviewer before postingDelegation of authority
[BR-NNN][Rule][Source]

3. Functional design

3.1 Process flow

Show the user-visible steps and every exit to an error path; Example for INT-AP-003 below.

3.2 Trigger, inputs and outputs

ItemDescription
TriggerExample: New document from the capture provider (push)
InputsExample: Invoice header, lines, tax, PDF image, capture confidence per field
ProcessingExample: Validate supplier, company, currency; apply BR-001 to BR-003; create draft
OutputsExample: Draft supplier invoice with image link; status message back to the provider
ExceptionsExample: Unknown supplier, closed period, duplicate, low capture confidence: send to error queue with reason

4. Type-specific design

4.1 Workflow (W)

ItemDesign
Business object and event that starts it[Object, event]
Steps and agents[Step, agent rule (role, org unit, amount), parallel or sequential]
Deadlines and escalation[Deadline per step, escalation target]
Substitution and absence[Rule]
Notifications[Channel, content, recipients]
Tool[Standard flexible workflow / platform workflow service / process automation tool]

4.2 Report (R)

ItemDesign
Purpose and users[Who decides what with this report]
Standard alternatives checked[Standard apps or analytics content shown and why rejected]
Selection criteria[Fields, mandatory or optional, defaults]
Output layout[Columns, sorting, totals, drill-down]
Calculations[Formula per derived field]
Data sources[Released views or tables]
Delivery[Interactive app, scheduled extract, analytics story]

4.3 Interface (I)

ItemDesign
Source and targetExample: Capture provider (source), ERP (target)
Direction and patternExample: Inbound, asynchronous push
Protocol and formatExample: HTTPS REST with JSON; image as base64 or link
MiddlewareExample: Integration platform, one integration flow
Target APIExample: Released supplier invoice API (check the vendor's API hub for the current version)
Volume and timingExample: 600 per day average, 1,500 per day peak, 5-minute latency target
IdempotencyExample: Provider document ID stored as external reference; repeats are ignored
Reference specificationIntegration Design (architecture/integration-design) entry INT-AP-003

4.4 Conversion (C)

ItemDesign
Migration object[Object name, for example open supplier items]
Source systems and extract[System, extract method, cut-off]
Load method and tool[For SAP: SAP S/4HANA Migration Cockpit with staging tables or direct transfer; other tool]
Cleansing and enrichment[Rules, owners]
Load sequence and dependencies[Objects that must load first]
Reconciliation[Counts, totals, samples: see Data Migration Reconciliation Report (project/data-migration-reconciliation)]
Mock loads[Number and dates]

4.5 Enhancement (E)

ItemDesign
Standard behaviour[What the product does today]
Required behaviour[What must change and when]
Extension point[Released extension point, business add-in, event or API]
Side effects[Other processes that use the same point]
Switch[How to deactivate the enhancement without transport, if possible]

4.6 Form (F)

ItemDesign
Document and trigger[For example customer invoice, on billing document creation]
Channels[Print, email, electronic invoice network, archive]
Layout[Mock-up reference, logo, sections, page breaks]
Data fields[Field list with source]
Languages and countries[Languages; country texts; legal mentions]
Output determination[Rules for when and to whom]

5. Technical design

5.1 Technology and clean core rating

ItemValue
TechniqueExample: Side-by-side integration flow; released API on the ERP
Clean core levelExample: A (SAP levels A to D; for other packages use the vendor's upgrade-safe criteria)
Justification for any level B, C or DExample: Not applicable
Alternatives consideredExample: On-stack custom API (rejected: released API exists)

5.2 Components

Component IDComponentKindPackage or namespacePurpose
CMP-01 (Example)IF_AP_SCAN_INVOICEIntegration flow[Package]Receive, validate, map and call the API
CMP-02 (Example)VM_AP_COMPANYValue mapping[Package]Map provider company codes to ERP company codes
CMP-03 (Example)AP_SCAN_ERRORSError queue view[Package]List rejected documents for clerks
[CMP-NN][Name][Kind][Package][Purpose]

5.3 Processing logic

Write the logic as pseudocode in the order it runs, naming each error reason used in section 7. Example:

receive document from provider
  if external reference already processed: acknowledge, stop
  validate mandatory fields; on failure: error queue (reason MISSING_FIELD)
  map company and supplier; on failure: error queue (reason UNKNOWN_SUPPLIER)
  check duplicate per BR-002; on match: error queue (reason DUPLICATE)
  call supplier invoice API as draft, attach image
  on success: store external reference, acknowledge provider
  on technical error: retry 3 times with backoff, then alert

5.4 Configuration needed

ItemValueEnvironment
Example: Communication arrangement for the invoice API[Arrangement ID]Test and production
Example: Technical user with API role only[User]All
[Item][Value][Env]

6. Data and mapping

6.1 Field mapping

Map IDTarget fieldMandatorySource fieldRuleDefault
MAP-01 (Example)Company codeYesheader.companyIdValue map VM_AP_COMPANYNone: error
MAP-02 (Example)SupplierYesheader.vatIdLook up supplier by tax numberNone: error
MAP-03 (Example)Document dateYesheader.invoiceDateISO date to target formatNone: error
MAP-04 (Example)Gross amountYesheader.totalDecimal, 2 placesNone: error
MAP-05 (Example)CurrencyYesheader.currencyISO 4217 codeCompany currency
MAP-06 (Example)Purchase orderNolines[].poNumberFirst non-empty valueEmpty
MAP-07 (Example)External referenceYesdocumentIdCopyNone: error
[MAP-NN][Field][Y/N][Source][Rule][Default]

6.2 Value mapping

Source valueTarget valueOwner
Example: ACME-DEDE01[@ap-lead]
Example: ACME-FRFR01[@ap-lead]
[Value][Value][@owner]

7. Error handling, logging and monitoring

Error IDErrorTypeDetected byHandlingNotifiedTarget time to resolve
ERR-01 (Example)Unknown supplierBusinessValidation stepError queue with reason; clerk fixes master data and reprocessesAP clerks1 working day
ERR-02 (Example)Duplicate invoiceBusinessDuplicate checkError queue; clerk confirms or rejectsAP clerks1 working day
ERR-03 (Example)Target API unavailableTechnicalAPI call3 retries with backoff, then alertIntegration support4 hours
ERR-04 (Example)Authentication failureTechnicalAPI callNo retry; alertIntegration support, security2 hours
[ERR-NN][Error][Type][Where][Handling][Who][Time]

Logging: record external reference, status, timestamps and error reason per message; never log full bank details or personal data beyond what support needs. Monitoring: [Integration monitoring tool], alert rules [names], dashboard [link].

8. Security and authorisations

ItemDesign
User accessExample: Clerks see the error queue for their companies only
Technical userExample: Dedicated communication user limited to the invoice API; certificate-based authentication
Segregation of dutiesExample: Object creates drafts only; posting stays with clerks, so the approval control is unchanged
Data in transitExample: TLS 1.2 or higher on every hop
Data at restExample: Images stored in the document store with retention per policy
Personal dataExample: Supplier contact names only; covered by the existing record of processing
Audit trailExample: Draft links image, external reference and creating user

9. Non-functional requirements

NFR IDQualityRequirementVerification
NFR-01 (Example)Latency95% of documents appear as drafts within 5 minutesIntegration test with timestamps
NFR-02 (Example)Throughput1,500 documents in 8 hours without backlogVolume test
NFR-03 (Example)ReliabilityNo document lost; every document ends as draft or in the error queueReconciliation of provider count to ERP count
NFR-04 (Example)UpgradeabilityUses released APIs only; passes upgrade regression testRegression suite per release
[NFR-NN][Quality][Requirement][Method]

Example throughput check: 1,500 documents in 8 hours is 187.5 per hour, about 3.1 per minute, well within the API's tested rate.

10. Test cases

Test IDLevelScenarioDataExpected resultCovers
TC-AP-010 (Example)FunctionalValid invoice with order referenceSupplier S1, order 4500001Draft created, image linked, within 5 minutesAcceptance, BR-001
TC-AP-011 (Example)FunctionalInvoice without order referenceSupplier S2Draft in non-order queueBR-001
TC-AP-012 (Example)IntegrationDuplicate within 12 monthsRepeat of TC-AP-010Error queue, reason DUPLICATEBR-002, ERR-02
TC-AP-013 (Example)FunctionalAmount above USD 50,000Supplier S1, USD 62,000Draft flagged for second reviewerBR-003
TC-AP-014 (Example)IntegrationUnknown supplierTax number not in masterError queue, reason UNKNOWN_SUPPLIERERR-01
TC-AP-015 (Example)IntegrationTarget API downStop API in test3 retries then alertERR-03
TC-AP-016 (Example)PerformancePeak volume1,500 documentsAll processed within 8 hoursNFR-02
TC-AP-017 (Example)User acceptanceMonth-end batch from real scans200 anonymised scansClerks confirm drafts are correctAcceptance
[TC-ID][Level][Scenario][Data][Expected][Covers]

Test planning and acceptance follow the UAT Plan (quality/uat-plan).

11. Transport and deployment

StepArtefactToolEnvironment orderManual stepRollback
1 (Example)Communication arrangement and technical userManual configuration with checklistTest, then productionYes: certificate uploadDeactivate arrangement
2 (Example)Integration packageCloud transport serviceDevelopment, test, productionNoRedeploy previous version
3 (Example)Value mappingsIntegration packageWith step 2Production values checkedPrevious version
4 (Example)Monitoring alert rulesMonitoring tool exportTest, then productionNoDisable rule
[n][Artefact][Tool][Order][Manual][Rollback]

Transport request or package IDs: [IDs]. Deployment window and freeze dates follow the Cutover Plan (project/cutover-plan).

12. Operations and support handover

ItemValue
Support groupExample: Integration support (level 2), AP key users (level 1 for business errors)
Normal behaviourExample: 400 to 900 documents per day; under 3% to the error queue
Health checksExample: Daily count reconciliation between provider and ERP; alert on queue older than 1 day
Known limitsExample: Multi-currency invoices with mixed tax rates go to the error queue by design
Runbook[Link to runbook]
Owner after go-live[@application-owner]

The handover follows the Operations Handover (ops/operations-handover).

13. Traceability and sign-off

Requirement or ruleDesign sectionComponentTest caseResult
Acceptance criterion (Example)3.2, 4.3CMP-01TC-AP-010, TC-AP-017[Pass / Fail]
BR-001 (Example)2.1, 5.3CMP-01TC-AP-010, TC-AP-011[Result]
BR-002 (Example)2.1, 5.3CMP-01TC-AP-012[Result]
BR-003 (Example)2.1, 3.1CMP-01TC-AP-013[Result]
NFR-02 (Example)9CMP-01TC-AP-016[Result]
[ID][Section][CMP][TC][Result]
MilestoneNameDate
Functional design approved[@process-owner]YYYY-MM-DD
Technical design approved[@dev-lead]YYYY-MM-DD
Build complete, unit tested[@developer]YYYY-MM-DD
Integration test passed[@test-lead]YYYY-MM-DD
User acceptance passed[@process-owner]YYYY-MM-DD
Deployed to production[@release-manager]YYYY-MM-DD

14. Glossary and references

14.1 Glossary

TermMeaning
WRICEFWorkflows, Reports, Interfaces, Conversions, Enhancements, Forms; some teams use RICEFW or RICEF for the same set
Clean core levelSAP's A to D rating of how upgrade-safe an extension is
Released APIInterface the vendor commits to keep stable across releases
Extension pointPlace in vendor code designed for customer logic
Integration flowMiddleware artefact that receives, transforms and routes messages
Value mappingTable that translates codes between systems
Staging tablesDatabase tables used to stage data for the migration tool

14.2 References

ReferenceVersion or date checkedUse
SAP Learning, Discovering SAP Activate: Explore phase overview, learning.sap.comChecked 2026-10-23WRICEF identification and design in Explore
SAP News, "Extend SAP S/4HANA Cloud the Right Way: Clean and Clear", news.sap.com2025-08-12Clean core levels A to D
SAP Business Accelerator Hub, api.sap.comCheck current API versionReleased APIs and events
Fit-Gap Analysis (architecture/fit-gap-analysis)This librarySource of the gap and decision
[Project development standards][Version]Naming, packages, code review

Standard and licence note

Structure aligned with the WRICEF object classification used in systems-integrator practice on ERP programmes and with the Explore phase deliverables of SAP Activate, using only phase, type, tool and level names. No SAP methodology content or third-party specification templates are reproduced; all text, examples and tables are original and written for this collection. Check the current vendor documentation before use. SAP, SAP Activate and SAP S/4HANA are trademarks of SAP SE or its affiliates; this template is not affiliated with or endorsed by them. Template licence: MIT.

関連テンプレート