Open the Portico Developer Guide site
PosGateway Schema
CreditReversalReqBlock1Type Complex Type
PosGateway Schema : CreditReversalReqBlock1Type Complex Type
Namespace http://Hps.Exchange.PosGateway
Diagram
CurrencyConversion Element x_global_transaction_id Element TagData Element EMVTagData Element ClientTxnId Element AdditionalTxnFields Element Ecommerce Element AuthAmt Element Amt Element CardData Element GatewayTxnId Element All CreditReversalReqBlock1Type Complex Type
Overview
All
GatewayTxnId optional txnIdType Simple Type

Gateway-generated transaction identifier returned in the response of the original transaction. This indicates the transaction to be updated.

CardData optional CardDataType Complex Type

A common element used in several different transactions for supplying payment method information.

This includes a choice of typical payment representations like track data, manually entered data, and token information. It also includes options for specifying how the supplied data has been encrypted or to request a multi-use token be supplied in the response.

Sequence
Choice
TrackData CardDataTypeTrackData Complex Type

Track data is the full magnetic stripe data.

Note: TrackData is unique in that it has an attribute "method" that is used to indicate how the associated data was obtained.

method optional CardDataTypeTrackDataMethod Simple Type

Indicates the method by which the track data was obtained; see the associated Type enumerations for specific values supported

Note: If not provided, the method is assumed to be a typical card swipe.

ManualEntry

This is typically manually entered card data, but can be used in any case where only the card number is used rather than the full track.

All
CardNbr cardNbrType Simple Type

Card number; also referred to as Primary Account Number (PAN)

ExpMonth monthTypeExp Simple Type

Card expiration month

ExpYear Restriction of yearType Simple Type

Card expiration year

CardPresent optional booleanType Simple Type

Indicates whether or not the card was present at the time of the transaction

ReaderPresent optional booleanType Simple Type

Indicates whether or not a reader was present at the time of the transaction

CVV2 optional Restriction of cvv2Type Simple Type

CVV Number ("Card Verification Value"); 3 digits on VISA, MasterCard, Discover and UnionPay and 4 on American Express.

CVV numbers are also known as CSC numbers ("Card Security Code"), as well as CVV2 numbers, which are the same as CVV numbers, except that they have been generated by a 2nd generation process.

Note: This field is not used for EBT transactions.

CVV2Status optional cvv2Status Simple Type

Indicates why the CVV2 value was not provided; see the associated Type enumerations for specific values supported.

Note: This field is not used for EBT transactions.

TokenData

This is used when the card number from a previous transaction has been tokenized. This supports both multi-use and single-use tokens.

All
TokenValue xs:string

Multi-use or single-use token; used as a reference to a payment method for this transaction

ExpMonth optional monthType Simple Type

Card expiration month

Note: If expiration month and year are provided, they will be used for processing the transaction rather than the stored values associated with the provided token. This is for the current transaction only and will not be stored for future use.

ExpYear optional Restriction of yearType Simple Type
CardPresent optional booleanType Simple Type

Indicates whether or not the card was present at the time of the transaction

ReaderPresent optional booleanType Simple Type

Indicates whether or not a reader was present at the time of the transaction

CVV2 optional Restriction of cvv2Type Simple Type

CVV Number ("Card Verification Value"); 3 digits on VISA, MasterCard, Discover and UnionPay and 4 on American Express.

CVV numbers are also known as CSC numbers ("Card Security Code"), as well as CVV2 numbers, which are the same as CVV numbers, except that they have been generated by a 2nd generation process.

Note: This field is not used for EBT transactions.

CVV2Status optional cvv2Status Simple Type

Indicates why the CVV2 value was not provided; see the associated Type enumerations for specific values supported.

Note: This field is not used for EBT transactions.

EncryptionData optional EncryptionDataType Complex Type

If the supplied card data was encrypted, this must be supplied.

All
DataFormat optional encryptedDataFormatType Simple Type

EncryptionDataFormat is an optional field to be used for encryption Version "05" to define the encryption encoding format

EncryptionDataFormat 1 Denotes the CardData sent to PORTICO is Binary

EncryptionDataFormat 2 Denotes the CardData sent to PORTICO is ASCII

Version encryptionVersionType Simple Type

The encryption version used on the supplied data.

For PAN encryption, use version "02" or "04" for Heartland E3 encryption. This requires the client to parse the E3 MSR output. The encrypted PAN is passed in the card data element as the manual entry card number. The KTB must be provided as part of the encryption data. If sending an encrypted CVV2, use version "04" which expects the PAN and CVV2 to be encrypted.

For PAN encryption, use version "05" for TDES DUKPT encryption with and without CVV encryption. This requires the client to parse the output. The encrypted PAN is passed in the card data element as the manual entry card number. The KSN must be provided as part of the encryption data.

For track encryption, use version "01", "02", or "04" for Heartland E3 encryption. Version "01" will not require parsing and it will not require additional fields in the encryption data, but the full E3 MSR output must be passed in the card data element as track data. Version "02" and "04" requires the client to parse the E3 MSR output. The KTB must be provided as part of the encryption data. In addition, the client must parse the data specific to either encrypted track 1 or track 2 and provide this in the card data element as track data as well as supply the track number as EncryptedTrackNumber.

For track encryption, use either version "03" for AES encryption with DUKPT, or "05" for TDES encryption with DUKPT. The "03" option supports the IdTECH card readers. The "05" option will work with any device that supports TDES with DUKPT data encryption per AINSI 9.24-1. Both options require the client to parse reader output. The KSN must be provided as part of the encryption data. In addition, the client must parse the data specific to either encrypted track 1 or track 2 and provide this in the card data element as track data as well as supply the track number as EncryptedTrackNumber.

For track encryption "05" is used for TDES encryption with DUKPT. The "05" option will work with any device that supports TDES with DUKPT data encryption per ANSI 9.24-1. Both options require the client to parse reader output. The KSN must be provided as part of the encryption data. In addition, the client must parse the data specific to either encrypted track 1 or track 2 and provide this in the card data element as track data, as well as supply the track number as EncryptedTrackNumber.

EncryptedTrackNumber optional encryptedTrackNumberType Simple Type

Required for encryption version "02","03","04" and "05"; indicates which track is being supplied encrypted (i.e. "1" or "2").

KTB optional encryptionKTBType Simple Type

Required for encryption version "02" or "04"; the Key Transmission Block (KTB) used at the point of sale.

KSN optional encryptionKSNType Simple Type

Required for encryption version "03" and "05"; the Key Serial Number (KSN) used at the point of sale.

TokenRequest optional booleanType Simple Type

This is used to request the gateway to return a multi-use token for the supplied card data. If a token is provided in the card data and this flag is set, it will be echoed in the response.

TokenParameters optional TokenParametersType Complex Type

Parameters allowing the client to control aspects of how a requested multi-use token is generated.

Not Applicable for Reward Cash transactions.

All
Mapping optional TokenMappingType Simple Type

This indicates the type of token to return; see the associated Type enumerations for specific values supported.

Note: If not supplied, "CONSTANT" is assumed. This means that the same token will be returned for the same card data.

Amt amtTypeGlobal Simple Type

This must match the authorization amount from the original transaction. This is required for both full and partial reversals. If not supplied an error response will be returned.

AuthAmt optional amtTypeGlobal Simple Type

This field is required for a partial reversal and indicates the desired new authorization amount once the reversal has been processed. If not supplied it will be defaulted to zero indicating a full reversal.

Ecommerce optional eCommerceType Simple Type

Identifies this transaction as eCommerce or mail order/telephone order; see the associated Type enumerations for specific values supported.

AdditionalTxnFields optional AdditionalTxnFieldsType Complex Type

A common group of optional fields that are supported in several different transaction types for Merchant use.

All
Description optional descriptionType Simple Type

Free-form description field. This must not contain sensitive information.

InvoiceNbr optional Restriction of xs:string

Used to log the invoice number on transactions that are not eCommerce.

CustomerID optional customerIDType Simple Type

Used to log Merchant specific customer identification.

Note: For GETI check transactions, this is sent in the CUSTOM3 field.

ClientTxnId optional clientIdType Simple Type

Client generated transaction identifier sent in the request of the original transaction. This indicates the transaction to be updated.

Note: Client generated ids are critical for situations when the client never receives a response from the gateway.

EMVTagData optional emvTagDataType Simple Type

When processing with an EMV capable client, this element may need to be provided. It consists of certain online authentication data or the reason for not utilizing the EMV capabilities. EMV tag data should be sent in the separate TagData field.

Note: This field has been obsoleted.See the TagData field for the alternative.

TagData optional TagDataType Complex Type

EMV or Non-EMV tag data in TLV format

All
TagValues optional Extension of xs:string

This field holds the tag data values.

source required Restriction of xs:string

This field specifies the source of the tag data value. It can be either chip or msd.

x_global_transaction_id optional x_global_transaction_idType Simple Type

Client generated transaction identifier sent in the request of the original transaction. This indicates the transaction to be updated.

Note: This is for internal use only.

CurrencyConversion optional CurrConversionDataType Complex Type

Data block for Currency Conversion.

Integration must be through GP-API

All
CurrConvOptOutFlag booleanType Simple Type

This setting indicates if the Customer has decided Opt Out of currency conversion and have the amount remain in the Merchants currency. If the customer does not opt out, the amount will be converted to currency associated with the card.

RateLookupTxnId optional guidType Simple Type

The Retrieval Reference Number (RRN) of the RateLookup or Incremental Authorization that provided the rate used for the calculations in this transaction, if it is different from the original Authorization.

CardHolderCurrCode optional currCodeType Simple Type

Indicates the currency associated with the cardholder card.

CardHolderAmt optional amtTypeGlobal Simple Type

The charge amount in the cardholder currency.

ExchangeRateApplied optional exchangeRateType Simple Type

The exchange rate used for currency conversion.

MarkupFee optional Restriction of xs:decimal

The mark up percentage applied to the transaction, resulting in the commission fee.

Used By
Block1 Element
Source
<xs:complexType name="CreditReversalReqBlock1Type" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:all>
    <xs:element name="GatewayTxnId" type="txnIdType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Gateway-generated transaction identifier returned in the response of the original transaction. This indicates the transaction to be updated.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="CardData" type="CardDataType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">A common element used in several different transactions for supplying payment method information.</p>
          <p xmlns="http://Hps.Exchange.PosGateway">This includes a choice of typical payment representations like track data, manually entered data, and token information. It also includes options for specifying how the supplied data has been encrypted or to request a multi-use token be supplied in the response.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="Amt" type="amtTypeGlobal">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">This must match the authorization amount from the original transaction. This is required for both full and partial reversals. If not supplied an error response will be returned.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="AuthAmt" type="amtTypeGlobal" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">This field is required for a partial reversal and indicates the desired new authorization amount once the reversal has been processed. If not supplied it will be defaulted to zero indicating a full reversal.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="Ecommerce" type="eCommerceType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Identifies this transaction as eCommerce or mail order/telephone order; see the associated Type enumerations for specific values supported.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="AdditionalTxnFields" type="AdditionalTxnFieldsType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">A common group of optional fields that are supported in several different transaction types for Merchant use.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="ClientTxnId" type="clientIdType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Client generated transaction identifier sent in the request of the original transaction. This indicates the transaction to be updated.</p>
          <p xmlns="http://Hps.Exchange.PosGateway" />
          <p xmlns="http://Hps.Exchange.PosGateway">
            <strong>Note:</strong> Client generated ids are critical for situations when the client never receives a response from the gateway.
            </p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="EMVTagData" type="emvTagDataType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">When processing with an EMV capable client, this element may need to be provided. It consists of certain online authentication data or the reason for not utilizing the EMV capabilities. EMV tag data should be sent in the separate TagData field.</p>
          <p xmlns="http://Hps.Exchange.PosGateway" />
          <p xmlns="http://Hps.Exchange.PosGateway">
            <strong>Note: This field has been obsoleted.</strong>See the TagData field for the alternative.
            </p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="TagData" type="TagDataType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">EMV or Non-EMV tag data in TLV format</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="x_global_transaction_id" type="x_global_transaction_idType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Client generated transaction identifier sent in the request of the original transaction. This indicates the transaction to be updated.</p>
          <p xmlns="http://Hps.Exchange.PosGateway" />
          <p xmlns="http://Hps.Exchange.PosGateway">
            <strong>Note:</strong> This is for internal use only.
            </p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="CurrencyConversion" type="CurrConversionDataType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Data block for Currency Conversion.</p>
          <p xmlns="http://Hps.Exchange.PosGateway">Integration must be through GP-API</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
  </xs:all>
</xs:complexType>
See Also
PosGateway Schema