Status

OwnerAlexander Bechter
StakeholdersIvan Chane Won, Antonio Gonzalvez
Jira Request ID

Jira Development ID

High- Level Specification

ParameterValue
Application SystemS/4 HANA (all systems)
Business Process Reference09.05.02.02. Post Sundry Debtor Invoices/Credit Memos

Functional Overview

Scope and Objectives

As part of the SyWay program, it was decided to re-introduce an FI-AR invoicing process for exceptional (sundry) customer invoicing scenarios where the use of the regular sales processes via the Sales and Distribution (SD) module is not feasible/practical due to master data, accounting requirements and/or process design constraints. To bypass the complexities and in terms of configuration and master data dependencies, the FI-AR sundry invoicing process is meant for non-recurring or urgent sales scenarios only that can't be managed adequately in the upstream Sales and Distribution module. To safeguard that the process is only used in exception scenarios, various controls are implemented. One of the endorsed controls is a park/post workflow approval process to ensure that all sundry invoices posted via the direct FI-AR route are validated by authorized reviewers and approvers.

The park and post approval process will use customized workflow templates to enable the electronic flow of initially parked documents through to the appropriate reviewers and approvers.

This document explains the triggers, start conditions routing requirements and processing requirements for the park/post approval workflow implemented as part of this process. It also outlines how the integration with the e-invoicing portal needs to be established as part of the working

Assumptions

  • Approvers are required to log on to the respective S/4HANA systems to complete the approvals via Fiori application ‘My Inbox'. Approval or rejection of G/L journals shall only be possible out of SAP Fiori application ‘My Inbox’. 

Security, Integrity and Controls

Accounts Receivable Processes shall be given authorizations for the following tasks as part of the invoice entry process:

  • Park AR invoice document
  • Set status of parked documents to ‘Saved as Completed’
  • Delete parked AR invoice document
  • Display parked AR invoice document

AR Invoice Approvers shall be granted authorizations to:

  • Display parked AR invoice document
  • Release/reject parked invoice document

Special Requirements

No special requirements identified at the time of writing.


Design Rationale

Functional Requirements

The following enhancements/customizations will be required to cover all business requirements for the park/post workflow:

  • Custom field in document header table for parked document (VBKPF):

To be able to differentiate between invoice requestor and invoice processor a new field needs to be created at document header level (table VBKPF) where the invoice processors are required to specify the user ID of the invoice requestor. This must be a mandatory input field in the respective Fiori app used for the outgoing invoice process (Fiori app ID: FV70). The inputs in this field shall be validated against table USR01. A match-code search function shall be made available to search for the respective user IDs based on user’s first and last name.

The workflow logic needs to check whether the user ID of the requester and the user ID of the approver are matching. In case there is a match, the document should be automatically released/approved and subsequently posted. 

  • Lock document after submission for approval:

Once a document has been submitted for approval it shall no longer be editable until it gets approved or rejected by the reviewers/approvers. In case there are any changes required to the document, the document needs to be rejected by the approver to flow back to the processor to make the necessary changes.

  • Add variables to workflow container and include them in the subject line/work item body text:

Some variables need to be added to the workflow container and eventually included in the subject line/work item body texts. The required variables are:

  • Document Number: <VBKPF-BELNR>
  • Invoice Number: <VBKPF-XBLNR>
  • Company Code: <VBKPF-BUKRS>
  • Fiscal Year: <VBKPF-GJAHR>
  • Amount: <VBSEGS-WRBTR>
  • Document Currency: <VBKPF- WAERS>
  • Document Header Text: <VBKPF-BKTXT>
  • Profit Center: <VBSEGS-PRCTR>
  • Profit Center Description: <CEPC-KTEXT>

If multiple Profit Centers are used in one invoice, the Profit Center from the line item with the highest LC2 value shall be selected.

  • Approval levels and agent determination logic

All FI-AR sundry invoices parked in the system shall be subjected to the below approval levels and agent determination logic:

  • All invoices are subject to a mandatory review by the tax team. This is required as the invoice entry application does not have automatic tax code determination capabilities and relies on manual selection by the user which is prone to errors without proper understanding of the tax legislations in the respective countries.
  • The second level of review and final approval of the invoice is only required if the invoice exceeds a certain threshold amount. Any invoices below the defined threshold amounts shall be auto-approved and posted immediately.
LevelRegionCountryCompany CodeAmount (EUR)Approver HR Position
1***-Tax Accountant or job equivalent
2*BE*>=1000.00Country Accounting Manager or job equivalent

Note:

  • The threshold amounts are maintained in EUR for all company codes. The processing logic should compare the amounts in the agent determination table against the group currency amounts specified in the invoice document.
  • Columns Region, Country and Company Code should be optional. Wildcard entries (*) should be possible for all three columns.
  • All columns should be considered key fields. Multiple HR positions may be assigned to a specific combination of row attributes.
  • The dimensions region/country/company code shall be considered from most specific to least specific by the determination logic. The following order shall be followed (from most specific to least specific):
    1.) Company Code
    2.) Country
    3.) Region

          Example:

          In the table, an entry is maintained at level 2 for country BE (Belgium) and amount >=1,000.00 EUR assigned to HR position 'S01'. Another entry is maintained for company code 1000, which is an entity operating in Belgium, and amount >=1,000.00 EUR and assigned to HR position                 'S02'. If an invoice gets parked in the system for entity 1000 with an amount of 1,000.00 EUR, the approver determined at level 2 should be the user assigned to position 'S02' not 'S01'. 

  • Region and country should be determined based on the country of the legal entity (T001-LAND1).
  • An additional custom check needs to be implemented to ensure that invoice requested by a final invoice approver are exempted from the 2nd level review.


  • Notifications to invoice requestor:

Notifications shall be sent out to the invoice requestor once requested invoices have been approved and posted in the system.

  • Notifications to invoice processor:

The work item shall be routed back to the invoice processor in case errors are encountered during background processing of the invoice after initial approval of the document by the invoice approver. The following message shall be output:

Subject line: invoice <BELNR><BUKRS> contains errors – Action required

Body Text:

invoice <BELNR><BUKRS> raised by you contains errors. The following errors were encountered:

<Error Message 1>

<Error Message 2>

Perform the necessary corrections and re-submit the invoice for approval.

  • Approval/Rejection via Fiori application ‘MyInbox’

SAP standard Fiori application ‘MyInbox’ will be the user interface used for approving/rejecting parked G/L invoices. An additional enhancement may be required to enable usage of MyInbox for this park/post workflow.

  • Substitution of user ID in document header:

The user ID of the invoice approver shall be substituted into the document header (BKPF-USNAM) once the document has been approved and posted successfully. This is needed to enable easy identification of the approvers for follow-ups if audit queries arise.

  • Integration with EDICOM for e-invoicing:

Per ​​regulatory requirement for Argentina (RR-????), the outgoing FI-AR invoice has to be sent electronically to government before being posted as accounting document. This requires an additional enhancement to the workflow in order to intercept and send it Edicom (e-invoicing service provider) for government validation.

Configuration Requirements

Specify the configuration requirements for this object.

SAP Standard Workflow

Workflow developments are typically based on an existing, standard Workflow. If such a Workflow is known, then name it here. E.g. WS 03100019 - General Notification Process.


Triggers and Start Conditions

What Transactions and Batch Programs trigger the workflow? Are Start Conditions required? E.g. ‘Purchase Order workflow should trigger only for PO Types XYZ'.

Business ObjectsEventConditionDesign Rationale Ref













Process Overview

The flow below is the standard process flow for approval of parked documents in SAP:

Note: Mail in this context refers to the workflow notification sent to the ‘My Inbox’ application of the approver. It will not trigger emails to the approvers.

1.) Business Scenario for regular invoices/invoices:

  • G/L Accountant or AR Processor (initiator) parks the document
  • Workflow is triggered on ‘Completed’ event (document must be showing status ‘Saved as Completed’ to trigger workflow)
  • A SAP Inbox notification will be sent to the approver
  • Invoice gets either approved or rejected by the approver.
  • When rejected, the document flows back to the requester for further adjustment and re-submission
  • When approved, the document shall be posted in the background. A notification shall be sent out to the requester's inbox in SAP that the document has been approved and posted.


 2.) Business Scenario for Argentina e-Invoicing: 


  • AR Processor (initiator) parks the document.
  • Workflow is triggered on ‘Save as Completed’ event (document must be showing status ‘Saved as Completed’ to trigger workflow)
  • SAP Inbox notification will be sent to the approver
  • If Company is not an Argentina Entity, either approved or rejected by the approver.
  • If Company is an Argentina Entity, e-document XML is sent to Argentina government for validation.
  • When rejected, or when government returns failed validation result, the document flows back to the AR processor for further adjustment and re-submission
  • When approved and government validation result is successful, the document shall be posted in the background. A notification shall be sent out to the AR processor's (VBKPF-USNAM) inbox in SAP that the document has been approved and posted.

Workflow Steps

Step Description

Release/Reject Invoice Document

Step Type

Decision Step

Approve / Reject texts and actions (for user decision steps)

Two buttons are required for this decision step:

1.      Approve:

o   Parked document should be posted automatically in the background (same behaviour as if it was released via SBWP).

o   Notify requester that document has been approved and posted.


2.      Reject:

o   Document should be routed back to the invoice processor.

o   Rejection reason must be entered and attached to work item.

o   Work item needs to be visible in processor's Fiori inbox. Rejection reason/comments must be available under ‘Comments’ or ‘Attachments’ section in the work item message


Subject Text
(Work Item Text)

Att. To: <CEPCT- LTEXT> Release G/L journal <BELNR><BUKRS>

Body Text
(Task Description)

ATTENTION TO: <CEPCT-LTEXT> (bold letters)

‘Sundry Customer Invoice <document number> raised in company code <company code> requires your action. Please validate the invoice entry, tax details and supporting documents to take the necessary actions.’

  • Document number: <VBKPF-BELNR>
  • Company Code: <VBKPF-BUKRS>
  • Fiscal Year: <VBKPF-GJAHR>
  • Amount: <VBSEGS-WRBTR>
  • Document Currency: <VBKPF- WAERS>
  • Document Header Text: <VBKPF-BKTXT>


Possible Approvers (Possible Agents)

The agent determination should follow the logic as outlined in section 'Functional Requirements' of this functional specification.

Approver Selection (Selected Agents)

The selection of the right approving agent out of the pool of possible approving agents shall be facilitated by checking the 

In case no approver can be found at the corresponding level for a given position in the approval matrix, the approvers shall be determined from the next level upwards based on the reporting lines defined in organizational chart structures.

Escalation

Reminders should be sent if no action was taken by the approvers with a span of 24h after the document's initial submission.

Email Notification

No email notification required. Only internal SAP message to approver’s inbox is required.

Attachments

The list of attachments shall include the supporting documents attached by the user to the invoice document subject to approval.

A link to the parked document shall also be provided to allow the user to review the document in S/4 in document entry view (link to transaction code FV53).

Step XXX (to be specified for each step in the workflow)

i. Decisions and Actions (e.g. if approved then post, if reject then route work item back to requester)

ii. Agent Determination

iii. Alerts, Notifications and Messages (Subject Line & Body Text)

iv. Other Requirements (e.g. Review Comments, Attachments, Email)

Error Handling

Define the error handling process

Deadline Monitoring

Describe deadline monitoring requirements

Substitution/Forwarding/Reserving

Do we allow Substitution, Forwarding or Task Reservation



Dependencies & Constraints

Indicate any dependencies or constraints that may impact development, in terms of requirements from internal or external applications or teams, limited access to legacy systems, time constraints or data restrictions. Also, please specify schedule dependencies e.g. interface or batch jobs that must run prior to execution.


Volumetrics

Provide volumetrics details for the workflow



Testing

How to Test

Please provide some guidance and/or test data to help the developer unit test the workflow. This can be included here or in a separate document.

The developer will need to test repeatedly, so where appropriate provide instructions to reverse the actions performed so the test may be run again or explain how to create new input data to the test. The developer will need logons for test users representing the various roles within the approval process.

In particular, the developer will need logons for test users representing the various roles within the approval process.


Test Conditions and Expected Results

IDConditionExpected Result










Test Considerations/Dependencies

List any considerations essential for application test planning (e.g. test this before ABC along with DEF separate from GHI). If the development encompasses a user interface, explain how to test it. List any insights as to how this component could be tested the most efficiently.


Other Information


Development Details

Package

Package NameParent Package




Workflow Implementation

UI TypeUI NameFiori CatalogueDesign Rationale Reference









Other Development Objects

Object TypeObject NamePurpose/High Level LogicDesign Rationale Reference









Appendix

See also

Insert links and references to other documents which are relevant when trying to understand this decision and its implications. Other decisions are often impacted, so it's good to list them here with links. Attachments are also possible but dangerous as they are static documents and not updated by their authors.


Change log