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.

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

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:

  • 1=Authorize Only

  • 2=Authorize & Bill

  • 3=Bill Only

  • 4=Credit

  • 5=Authorize Reversal

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

EMAIL

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

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

EMAIL

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

EMAIL

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.

  • 01=Visa

  • 02=MasterCard

  • 03=Diners Club

  • 04=American Express

  • 05=Discover

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:

  • 0=Approve (no error)

  • 100-199=Decline

    For self-service application, you can display the vendor return message to self-service users.

  • 200-299=Decline

    For self-service application, do not display the vendor return message to self-service users.

  • 300-399=Connection Error

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.