Open the Portico Developer Guide site
PosGateway Schema
SendFundsReqBlock1Type Complex Type
PosGateway Schema : SendFundsReqBlock1Type Complex Type
Namespace http://Hps.Exchange.PosGateway
Diagram
SendFundsData Element WalletData Element TagData Element EMVData Element SurchargeAmtInfo Element TxnDescriptor Element Ecommerce Element AllowDup Element CardHolderData Element AmountIndicator Element Amt Element CardData Element x_global_transaction_id Element GatewayTxnId Element All SendFundsReqBlock1Type 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 from which card data will be reused.

Note: When using a prior transaction id, card data should not be sent and original transaction reference data will be required.

x_global_transaction_id optional x_global_transaction_idType Simple Type

Client generated transaction identifier sent in the request of the original transaction.

Note: This is for internal use only.

CardData optional SendFundCardDataType 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

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.

Amt amtTypeGlobal Simple Type

The amount requested for authorization; this includes all other "Info" amounts provided as part of this request.

AmountIndicator optional amountIndicatorType Simple Type

Valid values include:

  • 'E' indicates that Amt is an estimated amount
  • 'F' indicates the Amt is final

Note: In the case of 'F', the Amt should not be manipulated and no CreditIncrementalAuth should be ran.

All
CardHolderZip optional zipType Simple Type

Zip or postal code; see the associated Type pattern for restrictions.

Note: Canadian postal codes should be sent in the format "A0A0A0".

CardHolderPhone optional phoneType Simple Type

Phone number; see the associated Type pattern for restrictions.

CardHolderEmail optional emailType Simple Type

Email address

CardHolderLanguage optional languageIndicatorType Simple Type

CardHolder preferred language.

Note:This field is required for Canadian merchants.

AllowDup optional booleanType Simple Type

This is important in cases where the client processes a large number of similar transactions in a very short period of time; sending "Y" will skip duplicate checking on this transaction

Ecommerce optional eCommerceType Simple Type

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

TxnDescriptor optional TxnDescriptorType Simple Type

Transaction description that is concatenated to a configurable merchant DBA name. The resulting string is sent to the card issuer as the Merchant Name.

Note: Updates to the device are required to utilize this feature. See your Heartland representative for more details.

SurchargeAmtInfo optional amtTypeGlobal Simple Type

Surcharge amount information; this defines the portion of the total amount provided as part of this request that was specifically for a surcharge. This is informational only and will not alter the amount processed as part of the transaction.

Note: This field is limited to 8 digits with implied decimal.

EMVData optional EMVDataType Complex 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.

All
EMVTagData optional emvTagDataType Simple Type

EMV tag data in TLV format.

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

EMVChipCondition optional emvChipConditionType Simple Type

This must be provided when the POS was not able to successfully communicate to the chip card and was required to fall back to a magnetic stripe read on an EMV capable terminal.

The values can indicate multiple factors:

  • The EMV chip read failed
  • Did the previous attempt fail

See enumerations for specific values supported

PINBlock optional pinBlockType Simple Type

Chip card PIN block for online authentication

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.

WalletData optional WalletDataType Complex Type

Allows for sending Wallet Authentication data associated with the transaction.

All
PaymentSource PaymentDataSourceType Simple Type

Payment Source is the API or source of the cryptogram.

Cryptogram optional Extension of cryptogramType Simple Type

Cryptogram received from wallet payment. Supported formats are DSRP, TokenBlocks and TAVV cryptograms. Must be encoded using base16 (Hex encoding) or base64 encoding.

encoding optional EncodingType Simple Type

Encoding used to encode binary Cryptogram. Default is base64.

ECI optional eciType Simple Type

Electronic Commerce Indicator associated with the Cryptogram. This is an optional field.

DigitalPaymentToken optional xs:string

Payment payload used to send encrypted apple or google pay data.

TokenRequestorId optional tokenRequestorIdType Simple Type

FOR FUTURE USE

Value associated with a specific network token that uniquely identifies the pairing of a token requestor with a token domain.

NetworkToken optional cryptogramTypeType Simple Type

FOR FUTURE USE

For use with NetworkToken only. If type is not provided, and a cryptogram is sent, Portico will use the default cryptogram type for the card brand.

SendFundsData optional SendFundsDataType 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.

All
FundsTransferType FundsTransferType Simple Type

Indicates the type of funds transfer.

Valid values are:

  • VisaOCT
  • MCMoneySend
VisaTransferType optional VisaTransferType Simple Type

Contains type of money transfer being performed

Valid values include:

  • 'BB' indicates Business to business
  • 'BP' indicates Non-card bill payment
  • 'FD' indicates Funds disbursement (general)
  • 'GD' indicates Government disbursement
  • 'GP' indicates Gambling payout (other than online gambling)
  • 'OG' indicates Online gambling payout
  • 'PP' indicates Person to person
  • 'WT' indicates Wallet transfer
FundingSource optional FundingSourceType Simple Type

Indicates the method used by the sender to fund an OCT.

The tag is required in all domestic and cross-border money trans-fer OCTs destined to U.S. recipient issuers.

Valid values include:

  • 01 = Visa credit
  • 02 = Visa debit
  • 03 = Visa prepaid
  • 04 = Cash
  • 05 = Debit/deposit access accounts other than those linked to a Visa card (includes checking/savings accounts and proprietary debit/Automated Teller Machine (ATM) cards)
  • 06 = Credit accounts other than those linked to a Visa card (includes credit cards and proprietary credit lines)

Note: Prepaid cards must be reloadable

PaymentPurpose optional PaymentPurposeType Simple Type

LLVAR. Contains the purpose of payment code valid for the recipient country.

RefNbr optional SendfundrefNbrType Simple Type

Contains the code that denotes whether the customer identification data belongs to the sender or the recipient.

Valid values include:

  • '05' (Payer (sender))
  • '06' Payee (recipient))

If present, the following must also be present:

  • Identification Type Code
  • Identification Value
MCTransferType optional MCTransferType Simple Type

Indicates the type of additional transaction purpose.

Valid values are:

  • C04 - Gaming Re-pay
  • C07 - General Person-to-Person
  • C55 - Business Disbursement
  • C56 - Government/Non-Profit Disbursement
  • C65 - General Business to Business Transfer
ParticipantData optional ParticipantDataType Complex Type

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
SenderAccountNbr optional SendFundAccountNbrType Simple Type

The account number of the entity funding the transaction

SenderRefNbr optional SenderRefNbrType Simple Type

Contains a transaction reference number that is provided by the merchant and can be used to uniquely identify the entity funding the transaction.

SenderFirstName optional SendFundName Simple Type

The first name of the entity funding the transaction

SenderMiddleName optional SendFundName Simple Type

The middle name of the entity funding the transaction

SenderLastName optional SendFundName Simple Type

The last name of the entity funding the transaction

SenderAddr optional SendFundAdd Simple Type

The address of the entity funding the transaction

SenderCity optional SendFundCity Simple Type

The city of the entity funding the transaction

SenderState optional SendFundState Simple Type

The state or province of the entity funding the transaction.

SenderZipPostal optional SendFundZipPostal Simple Type

The postal code of the entity funding the transaction.

SenderPhone optional SendFundPhoneType Simple Type

The phone number of the person sending the funds

SenderCountry optional SendFundSenderCountry Simple Type

The country of the entity funding the transaction

SenderDOB optional SendFundDOB Simple Type

Date of birth for the person sending the transaction in mmddyyy

SenderNationality optional SendFundNationalityType Simple Type

The country of citizenship for the person sending the funds

SenderBirthCountry optional SendFundBirthCountryType Simple Type

The country of birth for the person sending the funds

SenderAccountType optional SendFundAccountType Simple Type

The type of account for the value received in SenderAccountNumber

Valid values include:

  • 00 - Other
  • 01 - RTN + Bank Account
  • 02 - IBAN
  • 03 - Card Account
  • 04 - Email
  • 05 - Phone Number
  • 06 - Bank account number (BAN) + Bank Identification Code (BIC)
  • 07 - Wallet ID
  • 08 - Social Network ID
SenderIdType optional SendFundSenderIdType Simple Type

Contains the type of sender identification.

Valid values include:

  • 'CUID' Customer identification (unspecified)
  • 'NTID' National identification
  • 'PASN' Passport number
  • 'DRLN' Driver license
  • 'TXIN' Tax identification
  • 'CPNY' Company registration number
  • 'PRXY' Proxy identification
  • 'SSNB' Social security number
  • 'ARNB' Alien registration number
  • 'LAWE' Law enforcement identification
  • 'MILI' Military identification
  • 'TRVL' Travel identification (non-passport)
  • 'EMAL' Email
  • 'PHON' Phone number

Valid values for MC MoneySend are

  • '00' Passport
  • '01' National Identification Card
  • '02' Driver's License
  • '03' Government Issued
  • '04' Other
SenderIdSubType optional SendFundIdSubType Simple Type

Denotes whether the tax ID is a business or individual tax ID when the Identification Type Code contains the value of TXIN (Tax identification). This field is applicable only for Visa OCT.

Valid values are:

  • '0B' Business
  • '0I' Individual
SenderIdNbr optional SendFundIdNbr Simple Type

The value associated with the IdType

SenderIdCountry optional SendFundIdCountry Simple Type

The issuing country of the identification specified for the IdType

SenderIdExpDate optional SendFundIdExpDate Simple Type

The expiration date of the identification specified for the IdType

RecipientFirstName optional SendFundName Simple Type

First name of the person receiving the funds

RecipientMiddleName optional SendFundName Simple Type

Middle initial of the person receiving the funds

RecipientLastName optional SendFundName Simple Type

Last name of the person receiving the funds

RecipientAddr optional SendFundAdd Simple Type

Address of the person receiving the funds

RecipientCity optional SendFundCity Simple Type

City of the person receiving the funds

RecipientState optional SendFundState Simple Type

State or province of the person receiving the funds

RecipientZipPostal optional SendFundZipPostal Simple Type

The postal code of the person receiving the funds

RecipientCountry optional SendFundReceiverCountry Simple Type

The country of the person receiving the funds

RecpientPhone optional SendFundPhoneType Simple Type

The phone number of the person receiving the funds

RecipientDOB optional SendFundDOB Simple Type

Date of birth for the person receiving the funds in mmddyyy

RecipientNationality optional SendFundNationalityType Simple Type

The country of citizenship for the person receiving the funds

RecipientBirthCountry optional SendFundBirthCountryType Simple Type

The country of birth for the person receiving the funds

RecipientAccountType optional SendFundAccountType Simple Type

The type of account for the value received in RecipientAccountNumber

Valid values include:

  • 00 - Other
  • 01 - RTN + Bank Account
  • 02 - IBAN
  • 03 - Card Account
  • 04 - Email
  • 05 - Phone Number
  • 06 - Bank account number (BAN) + Bank Identification Code (BIC)
  • 07 - Wallet ID
  • 08 - Social Network ID
RecipientAccountNumber optional SendFundAccountNbrType Simple Type

The account number to which the funds are to be posted.

RecipientIdType optional SendFundSenderIdType Simple Type

The type of identification provided by the Recipient.

Valid values for Visa OCT include:

  • 'CUID' Customer identification (unspecified)
  • 'NTID' National identification
  • 'PASN' Passport number
  • 'DRLN' Driver license
  • 'TXIN' Tax identification
  • 'CPNY' Company registration number
  • 'PRXY' Proxy identification
  • 'SSNB' Social security number
  • 'ARNB' Alien registration number
  • 'LAWE' Law enforcement identification
  • 'MILI' Military identification
  • 'TRVL' Travel identification (non-passport)
  • 'EMAL' Email
  • 'PHON' Phone number

Valid values for MC MoneySend are

  • '00' Passport
  • '01' National Identification Card
  • '02' Driver's License
  • '03' Government Issued
  • '04' Other
RecipientIdSubType optional SendFundIdSubType Simple Type

When the IdType indicates Tax Identification, this element specifies whether it is a business or individual tax ID.

Valid values are:

  • '0B' indicates Business
  • '0I' indicates Individual
RecipientIdNbr optional SendFundIdNbr Simple Type

The value associated with the IdType

RecipientIdCountry optional SendFundIdCountry Simple Type

The issuing country of the identification specified for the IdType

RecipientIdExpDate optional SendFundIdExpDate Simple Type

The expiration date of the identification specified for the IdType

Used By
Block1 Element
Source
<xs:complexType name="SendFundsReqBlock1Type" 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 from which card data will be reused.</p>
          <p xmlns="http://Hps.Exchange.PosGateway" />
          <p xmlns="http://Hps.Exchange.PosGateway">
            <strong>Note:</strong> When using a prior transaction id, card data should not be sent and original transaction reference data will be required.
            </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.</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="CardData" type="SendFundCardDataType" 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">The amount requested for authorization; this includes all other "Info" amounts provided as part of this request.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="AmountIndicator" type="amountIndicatorType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">
              Valid values include:
              <ul><li><strong>'E'</strong> indicates that Amt is an estimated amount
                </li><li><strong>'F'</strong> indicates the Amt is final
                </li></ul></p>
          <p xmlns="http://Hps.Exchange.PosGateway">
            <strong>Note:</strong> In the case of <strong>'F'</strong>, the Amt should not be manipulated and no CreditIncrementalAuth should be ran.
            </p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="CardHolderData" type="CardHolderDataType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Card holder data</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="AllowDup" type="booleanType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">This is important in cases where the client processes a large number of similar transactions in a very short period of time; sending "Y" will skip duplicate checking on this transaction</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="TxnDescriptor" type="TxnDescriptorType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Transaction description that is concatenated to a configurable merchant DBA name. The resulting string is sent to the card issuer as the Merchant Name.</p>
          <p xmlns="http://Hps.Exchange.PosGateway" />
          <p xmlns="http://Hps.Exchange.PosGateway">
            <strong>Note:</strong> Updates to the device are required to utilize this feature. See your Heartland representative for more details.
            </p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="SurchargeAmtInfo" type="amtTypeGlobal" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Surcharge amount information; this defines the portion of the total amount provided as part of this request that was specifically for a surcharge. This is informational only and will not alter the amount processed as part of the transaction. </p>
          <p xmlns="http://Hps.Exchange.PosGateway" />
          <p xmlns="http://Hps.Exchange.PosGateway">
            <strong>Note:</strong> This field is limited to 8 digits with implied decimal.
            </p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="EMVData" type="EMVDataType" 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>
        </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="WalletData" type="WalletDataType" minOccurs="0">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://Hps.Exchange.PosGateway">Allows for sending Wallet Authentication data associated with the transaction.</p>
        </xs:documentation>
      </xs:annotation>
    </xs:element>
    <xs:element name="SendFundsData" type="SendFundsDataType" 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:all>
</xs:complexType>
See Also
PosGateway Schema