EBICS Order Processing Service
The EBICS Order Processing service performs EBICS transaction and subscriber retrieval and packing and unpacking of encrypted symmetric keys.
System name |
EBICS Order Processing Service |
Graphical Process Modeler (GPM) categories |
All Services |
Description |
This service performs EBICS transaction and subscriber retrieval, and packing and unpacking of encrypted symmetric keys. |
Business usage |
This service is used as a central point to retrieve the information used by other services as part of the Order Data Processing activities. |
Usage examples |
Use this in a business process, which is a part of EBICS Order Data processing that requires information to perform tasks such as, signing, compression, encryption, and Base64 encoding. |
Preconfigured? |
This service must be installed and deployed before it is invoked. No configuration parameters are required. |
Requires third-party files? |
No |
Platform availability |
All supported Sterling B2B Integrator platforms. |
Related services |
None |
Application requirements |
None |
Initiates business processes? |
None |
Invocation |
This service is invoked from a business process. |
Business process context considerations |
The service is run in a business process when you require the transaction details associated with the Primary Document, Symmetric Key creation or retrieval, and transaction status updating. |
Returned status values |
Fatal - Non-recoverable error Transient – Recoverable error Logic - Recoverable error Success Warning |
Restrictions |
None |
Persistence level |
System Default |
Debug |
Debugging information for this service is located in Sterling B2B Integrator. Navigate to . |
Output from EBICS Order Processing Service to Business Process
getTrxDetails
.
Parameter | Description |
---|---|
HostId |
Required. The host ID of the system. |
PartnerId |
Required. The partner ID of the system. |
UserId |
Required. The user ID of the system. |
ProtocolVersion |
Required. The supported EBICS protocol version, for example, H003. |
CommSessionId |
Required. The session ID that is used as part of the DMI logging. Ensures that all the processes are tracked under the same session. |
Order Type |
Required. Specifies the order type. Valid values are INI, HIA, PUB, HCA, HCS, HPB, HPD, HEV, SPR, FUL, and FDL. |
FlowDirection |
Required. Indicates the direction of the order data. Valid values are Upload and Download. |
OrderDataType |
Required. Indicates the type of order data. Valid values are System and Technical. |
ResponseType |
Required. Indicates the response type. Valid values are Sync and Async. |
CompressReqd |
Required. Indicates if compression is required for Download flows or decompression is required for Upload flows. Valid values are True and False. |
EncryptReqd |
Required. Indicates if encryption is required for Download flows or decryption is required for Upload flows. Valid values are True and False. |
SignReqd |
Required. Indicates if signing is required for Download flows or verification is required for Upload flows. Valid values are True and False. |
SignVersion |
Optional. Indicates the version used in signing and verifying signatures. |
EncryptedDocId |
Optional. The document ID of the encrypted key. This value is extracted from the DataEncryptionInfo element found in the Upload message. |
ESDocID |
Optional. The document ID of the Electronic Signature (ES). This document contains the packaged SignatureData element found in the Upload message. |
HostEncrPrivKeyId |
Required. Host Private Certificate ID used in decrypting the transaction key to retrieve the symmetric key. |
HostEsPrivKeyId |
Required. Host Private Certificate ID used in signing messages. |
PtnerEncrPubKeyId |
Optional. Partner's Public Certificate ID used in encrypting messages. |
WfId |
Required. The workflow ID that is used to launch the initial business process that processes the transaction. This workflow ID is used when inserting records into a table that requires archive and restore capabilities to ensure that related records are archived and restored as a group. |
The following table contains the parameter passed from
the EBICS Order Processing service to a business process when it is
invoked, with the value of the output message type set to getEncryptKey
.
Parameter | Description |
---|---|
SymmetricKeyId |
Required. ID of the document containing the symmetric key. |
The following table contains the parameter passed from
the EBICS Order Processing service to a business process when it is
invoked, with the value of the output message type set to setEncryptKey
.
Parameter | Description |
---|---|
EncryptedDocId |
Required. The ID of the document containing the encrypted symmetric key. |
Output from Business Process to EBICS Order Processing Service
getTrxDetails
.
Parameter | Description |
---|---|
Primary Document |
Required. The primary document containing the order data. |
getEncryptKey
.
Parameter | Description |
---|---|
EncryptedDocId |
Required. The document ID containing the encrypted symmetric key. |
HostEncrPrivKeyId |
Required. The certificate ID of the host's private key used for encryption. |
HostEncrPubKeyId |
Required. The certificate ID of the host's public key. Used for validation of the hash value sent by the subscriber. |
PtnerEncrPubKeyId |
Required. The certificate ID of the subscriber's public key used for encryption. |
setEncryptKey
.
Parameter | Description |
---|---|
PtnerEncrPubKeyId |
Required. The certificate ID of the subscriber's public certificate used to encrypt the symmetric key. |
TransactionId |
Required. The transaction ID that is retrieved based on the body name of the Primary Document. This transaction ID is the key for all transaction-related records. |
WfId |
Required. The workflow ID of the transaction. Used to manage the archival process. |
SymmetricKeyId |
Required. ID of the document containing the symmetric key. |
setStatus
.
Parameter | Description |
---|---|
Status |
Required. Indicates the processing status. Valid values are Success and Error. |
TransactionId |
Required. The transaction ID that is retrieved based on the body name of the Primary Document. This transaction ID is the key for all transaction-related records. |
WfId |
Required. The workflow ID of the transaction. Used to manage the archival process. |
FlowDirection |
Required. The direction of the order flow. Valid values are Upload and Download. |
UncompressedSize |
Optional. The size of the uncompressed document in bytes. |
OrderDataType |
Required. The type of order. Valid values are System and Technical. |
Business Process Examples
The following example business process illustrates the options required when retrieving transaction and subscriber details. It assumes that the packaged order data is in the primary document:
<process name="getTrxDetails">
<sequence>
<operation name="TrxInfo">
<participant name="EBICSOrderProcessingService"/>
<output message="outMsg">
<assign to="." from="*"/>
<assign to="action" from=”'getTrxDetails'”/ >
</output>
<input message="inMsg">
<assign to="." from="*"></assign>
</input>
</operation>
</sequence>
</process>
The following example business process illustrates the process to unpack a document containing the decrypted symmetric key:
<process name="getEncryptedKey">
<sequence>
<operation name="DecryptKey">
<participant name="EBICSOrderProcessingService"/>
<output message="outMsg">
<assign to="." from="*"/>
<assign to="action" from=”'getEncryptedKey'”/ >
<assign to="EncryptedDocId">neith::1100909</assign>
</output>
<input message="inMsg">
<assign to="." from="*"></assign>
</input>
</operation>
</sequence>
</process>
<process name="setEncryptedKey">
<sequence>
<operation name="EncryptKey">
<participant name="EBICSOrderProcessingService"/>
<output message="outMsg">
<assign to="." from="*"/>
<assign to="action" from=”'setEncryptedKey'”/ >
<assign to="SymmetricKeyId">neith::2211909</assign>
</output>
<input message="inMsg">
<assign to="." from="*"></assign>
</input>
</operation>
</sequence>
</process>
The following example illustrates how to set the processing status.
<process name="setStatus">
<sequence>
<operation name="setStatus">
<participant name="EBICSOrderProcessingService"/>
<output message="outMsg">
<assign to="." from="*"/>
<assign to="Status" from=”'SUCCESS'”/ >
</output>
<input message="inMsg">
<assign to="." from="*"></assign>
</input>
</operation>
</sequence>
</process>