Understanding XML-Based Integration Using Integration Broker
You can use PeopleSoft Integration Broker to process your PeopleSoft credit card transactions with the third-party credit card processing vendor of your choice. Oracle delivers messages and a synchronous service for you to use to set up a synchronous connection with your third-party vendor. Because each third-party vendor requires a different format for communication, PeopleSoft applications do not deliver transformations to your third-party vendor. This is because each third-party vendor has different requirements for inputs and outputs to their services. Therefore, part of setting up an integration involves writing your own transformation programs for the request and response message. The transformation programs are a mapping between the fields in the PeopleSoft system and the fields in your third-party vendor’s service. You also need to set up a node in the PeopleSoft application to process the response from your third-party vendor.
Oracle delivers XML messages for use with XML-based credit card processing vendors. You must build your own XML message transformation into the format that the vendor is expecting.
You can use PeopleSoft Application Engine to perform your transformations. You use the delivered EOEC_CCI_SYNC message for the request transaction and the delivered EOEC_CCI_RESPONSE message for the response transaction. The messages are detailed later in this section.
Note: If you have upgraded from a PeopleTools 8.47 or earlier release, the upgrade program creates service operations for these messages. The service operation names and message names are the same.
Image: EOEC_CCI_SYNC and EOEC_CCI_RESPONSE is used to integrate with a third-party credit processing vendor
The diagram shows the process flow for integration with a third-party credit processing vendor.
![EOEC_CCI_SYNC and EOEC_CCI_RESPONSE is used to integrate with a third-party credit processing vendor](img/i-1de106ban-7efa.png)
EOEC_CCI_Sync Message
The EOEC_CCI_SYNC message is a synchronous request that the credit card interface sends to the third-party vendor. The request can be for an authorize, bill, authorize and bill, credit transaction, or authorization reversal. The PeopleCode that supports this message is located in App Package EOEC_CCI. The following tables describe the request fields and how they are populated by the PeopleSoft system.
Level 0 Record: EOEC_CCI_XMLPAY:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_UNIQUE_ID |
UNIQUEID |
Unique ID generated for each transaction. |
Level 1 Record: EOEC_CCI_RQST:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_MERCHANT |
VENDOR |
Populated from the merchant ID set up on the Credit Card Interface Installation page. |
EOEC_CCI_PARTNER |
PARTNER |
Hardcoded to “PeopleSoft”. |
Level 2 Record: EOEC_CCI_TRANS:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_TRANSID |
TRANSACTION_ID |
Either blank or contains the request ID of a previous transaction (such as a prior authorization transaction). |
EOEC_CCI_MERCH_REF |
TRANSACTION_CUSTREF |
Contains a reference to the transaction such as an order or invoice number. |
EOEC_CCI_RQSTTOKEN |
N/A |
Either blank or contains the request token of a previous transaction (such as a prior authorization transaction). |
Level 3 Record: EOEC_CCI_TRNTYP:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_TRANSACT |
TRANSTYPE |
The service to be performed:
|
Level 4 Record: EOEC_CCI_PAYDAT:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_TRANSACT |
N/A |
N/A |
Level 5 Record: EOEC_CCI_INV:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_INV_NUM |
INVNUM |
Either blank or contains the request ID of a pervious transaction (such as a prior authorization transaction). Oracle recommends that you use TRANSACTION_ID instead of INVNUM in transformation programs because the field is only 20. |
EOEC_DATE |
N/A |
|
DESCR254 |
DESCRIPTION |
Hardcoded to “Description”. |
EOEC_CCI_DISC_AMT |
DISCOUNTAMT |
N/A |
EOEC_CCI_SHIP_AMT |
SHIPAMT |
N/A |
EOEC_CCI_DUTY_AMT |
DUTYAMT |
N/A |
EOEC_CCI_TAX_AMT |
TAXAMT |
N/A |
EOEC_CCI_TAX_INCL |
NATIONALTAXINCL |
N/A |
EOEC_CCI_TOTAL_AMT |
TOTALAMT |
The total amount of the transaction. |
EOEC_CCI_COMMENT |
COMMENT |
N/A |
CURRENCY_CD |
N/A |
N/A |
Level 6 Record: EOEC_CCI_BILLFM:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_FULLNAME |
NAME |
N/A |
EOEC_EMAIL_ADDR |
|
N/A |
PHONE |
N/A |
N/A |
FAX |
N/A |
N/A |
URL |
N/A |
N/A |
Level 7 Record: EOEC_CCI_ADDR1:
Message field |
Alias |
Populated with |
---|---|---|
ADDRESS1 |
STREET |
N/A |
ADDRESS2 |
N/A |
N/A |
ADDRESS3 |
N/A |
N/A |
ADDRESS4 |
N/A |
N/A |
CITY |
N/A |
N/A |
STATE |
N/A |
N/A |
POSTAL |
ZIP |
N/A |
COUNTRY |
N/A |
N/A |
Level 6 Record: EOEC_CCI_BILLTO:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_CUSTID |
CUSTOMERID |
N/A |
EOEC_CCI_FULLNAME |
NAME |
N/A |
EOEC_EMAIL_ADDR |
|
Email address of the consumer. |
PHONE |
N/A |
Telephone number of the consumer. |
FAX |
N/A |
N/A |
EOEC_CCI_CUSTCODE |
CUSTCODE |
N/A |
EOEC_CCI_PO_NUM |
PONUM |
N/A |
EOEC_CCI_TAXEXEMPT |
TAXEXEMPT |
N/A |
Level 7 Record: EOEC_CCI_ADDR2:
Message field |
Alias |
Populated with |
---|---|---|
ADDRESS1 |
STREET |
Street address of the consumer. |
ADDRESS2 |
N/A |
N/A |
ADDRESS3 |
N/A |
N/A |
ADDRESS4 |
N/A |
N/A |
CITY |
N/A |
City address of the consumer. |
STATE |
N/A |
State address of the consumer. |
POSTAL |
ZIP |
Postal address of the consumer. |
COUNTRY |
N/A |
Country address of the consumer. |
Level 6 Record: EOEC_CCI_SHIPFM:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_FULLNAME |
NAME |
N/A |
EOEC_EMAIL_ADDR |
|
N/A |
PHONE |
N/A |
N/A |
FAX |
N/A |
N/A |
Level 7 Record: EOEC_CCI_ADDR3:
Message field |
Alias |
Populated with |
---|---|---|
ADDRESS1 |
STREET |
N/A |
ADDRESS2 |
N/A |
N/A |
ADDRESS3 |
N/A |
N/A |
ADDRESS4 |
N/A |
N/A |
CITY |
N/A |
N/A |
STATE |
N/A |
N/A |
POSTAL |
ZIP |
N/A |
COUNTRY |
N/A |
N/A |
Level 6 Record: EOEC_CCI_SHIPTO:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_FULLNAME |
NAME |
N/A |
EOEC_EMAIL_ADDR |
|
N/A |
PHONE |
N/A |
N/A |
FAX |
N/A |
N/A |
Level 7 Record: EOEC_CCI_ADDR4:
Message field |
Alias |
Populated with |
---|---|---|
ADDRESS1 |
STREET |
N/A |
ADDRESS2 |
N/A |
N/A |
ADDRESS3 |
N/A |
N/A |
ADDRESS4 |
N/A |
N/A |
CITY |
N/A |
N/A |
STATE |
N/A |
N/A |
POSTAL |
ZIP |
N/A |
COUNTRY |
N/A |
N/A |
Level 6 Record: EOEC_CCI_ITEM:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_ITEM NUM |
ITEM_NUMBER |
N/A |
EOEC_CCI_SKU |
SKU |
N/A |
EOEC_CCI_UPC |
UPC |
N/A |
DESCR254 |
DESCRIPTION |
N/A |
EOEC_CCI_QTY AMT TOTALAMT |
QUANTITY |
N/A |
EOEC_CCI_UOM |
UNITOFMEASURE |
N/A |
EOEC_CCI_UNITPRICE |
UNITPRICE |
N/A |
EOEC__CCI_EXTAMT |
EXTAMT |
N/A |
EOEC_CCI_DISC_AMT |
DISCOUNTAMT |
N/A |
EOEC_CCI_TAX_AMT |
TAXAMT _ |
N/A |
EOEC_CCI_TOTAL |
TOTALAMT |
N/A |
Level 4 Record: EOEC_CCI_TENDER:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_TRANSACT |
N/A |
N/A |
Level 5 Record: EOEC_CCI_CARD:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_TYPE |
CARDTYPE |
Two-character code for the type of card used in the transaction.
|
EOEC_CCI_NUMBER |
CARDNUM |
Credit card number used in the transaction. |
EOEC_CCI_EXPYR |
EXPYR |
Expiration year of the card. |
EOEC_CCI_EXPMO |
EXPMO |
Expiration month of the card. |
EOEC_CCI_CVNUM |
CVNUM |
Card verification number. |
EOEC_CCI_MAGDATA |
MAGDATA |
N/A |
EOEC_CCI_FULLNAME |
NAMEONCARD |
First and last name of the consumer. |
EOEC_CCI_FNAME |
FIRSTNAME |
First name of the consumer. |
EOEC_CCI_LNAME |
LASTNAME |
Last name of the consumer. |
Level 5 Record: EOEC_CCI_STATUS:
Message field |
Alias |
Populated with |
---|---|---|
EOEC_CCI_TRANS_REF |
PNREF |
N/A |
Note: When writing your transformation program, use the alias name to reference the fields. When you view the “Request — Original” text of the message, the alias name is displayed.
EOEC_CCI_RESPONSE Message
The EOEC_CCI_RESPONSE message is a response to the request that the credit card interface receives from the third-party vendor. Your transformation should populate the response message fields as shown in the tables.
Level 0 Record: EOEC_CCI_XMLRSP:
Message field |
Alias |
Populate with |
---|---|---|
EOEC_CCI_UNIQUE_ID |
UNIQUEID |
N/A |
Level 1 Record: EOEC_CCI_RSPNS:
Message field |
Alias |
Populate with |
---|---|---|
EOEC_CCI_MERCHANT |
VENDOR |
N/A |
EOEC_CCI_PARTNER |
PARTNER |
N/A |
Level 2 Record: EOEC_CCI_TRRSLT:
Message field |
Alias |
Populate with |
---|---|---|
EOEC_CCI_TRANSID |
TRANSACTIONID |
The request ID or identifier returned from the third-party vendor. |
EOEC_CCI_RESULT |
RESULT |
Map the appropriate return code for the transmission result in the following way:
|
EOEC_CCI_AVS |
AVS |
N/A |
EOEC_CCI_CVRESULT |
CVRESULT |
N/A |
EOEC_CCI_RET_MSG |
MESSAGE |
Populate this with a text response from the vendor or this can be populated with text that explains to the user why a transaction was not successful. |
EOEC_CCI_TRANS_REF |
PNREF |
N/A |
EOEC_RET_AUTHCD |
AUTHCODE |
This should be populated with the authorization code returned from the vendor. |
EOEC_CCI_HOSTCODE |
HOSTCODE |
N/A |
EOEC_CCI_HOST_URL |
HOSTURL |
N/A |
EOEC_CCI_ORIGRSLT |
ORIGRESULT |
N/A |
EOEC_RET_STATUS |
TRSTATUS |
N/A |
EOEC_RET_STATUSMSG |
N/A |
N/A |
EOEC_RET_AUTHDTTM |
N/A |
N/A |
EOEC_CCI_RQSTTOKEN |
N/A |
N/A |
Level 3 Record: EOEC_CCI_AVRSLT
Message field |
Alias |
Populate with |
---|---|---|
EOEC_MATCH_STREET |
STREETMATCH |
N/A |
EOEC_MATCH_ZIP |
ZIPMATCH |
N/A |
When writing the transformation program, use the alias name to reference the fields.
Note: The alias name is shown in the “Response — Original” message from within the Service Operations Monitor.
Agents can then process credit cards using their application-specific credit card transaction page to submit the transaction to the vendor for authorization, billing, authorization and billing, or credit. You can choose which types of transactions to permit.
For more information, refer the product documentations for PeopleTools: Integration Broker
PeopleTools: Security Administration
PeopleTools: Portal Technology.