Sunteți pe pagina 1din 13

XDO file name: Mapping of Paymentech Format: Date: 12/13/2004

IBY_PTK_O_7_2_en.rtf Paymentech Online Format

Spec Version:
On-Line Processing Technical Specification July 15, 2004 Revision 7.2

Format Setup:

<TEMPLATE TYPE> FIXED_POSITION_BASED

<OUTPUT CHARACTER SET> ISO-8859-1


<NEW RECORD CHARACTER>

Format Data Records:

Hint: This template supports online Paymentech messages for credit, debit, and purchase cards.

<LEVEL> FundsCaptureOrder
<POSITION> <LENGTH> <FORMAT> <PAD> <DATA> <COMMENTS>
<NEW RECORD> DetailRec
1 1 Alpha R, ' ' ‘P’ Record Type
2 2 Alpha R, ' ' ‘72’ Format Constant
4 1 Alpha R, ' ' ‘V’ Format Constant
5 22 Alpha R, ' ' OrderNumber/PayeeOrd Merchant’s Order Number (Tangible Id)
erNumber

1
27 2 Alpha R, ' ' IF Method of Payment (MOP)
(LENGTH(PayerCreditC DP = Generic PINless Debit
ard) > 0) THEN EC = ECP
IF
PayerCreditCard/Card
Issuer = ‘VISA’ THEN
‘VI’
ELSIF
PayerCreditCard/Card
Issuer =
‘MASTERCARD’ THEN
‘MC’
ELSIF
PayerCreditCard/Card
Issuer = ‘AMEX’ THEN
‘AX’
ELSIF
PayerCreditCard/Card
Issuer = ‘OPTIMA’
THEN ‘AX’
ELSIF
PayerCreditCard/Card
Issuer = ‘DISCOVER’
THEN ‘DI’
ELSIF
PayerCreditCard/Card
Issuer = ‘DINERS’
THEN ‘DC’
ELSIF
PayerCreditCard/Card
Issuer = ‘JCB’ THEN
‘JC’
ELSIF
PayerCreditCard/Card
Issuer =
‘CARTEBLANCHE’ THEN
‘CB’
ELSIF
PayerCreditCard/Card
Issuer = ‘SWITCH’
THEN ‘SW’

2
29 19 Alpha R, ' ' IF Account Number
(LENGTH(PayerCreditC
ard) > 0) THEN
PayerCreditCard/Card
Number
ELSIF
(LENGTH(PayerDebitCa
rd) > 0) THEN
PayerDebitCard/CardN
umber
ELSIF
(LENGTH(PayerBankAcc
ount) > 0) THEN
TRANSLATE(UPPER(Paye
rBankAccount/BankAcc
ountNumber),'0123456
789ABCDEFGHIJKLMNOPQ
RSTUVWXYZ-/_ ()*#',
'0123456789')
END IF
48 4 Date, R, ' ' IF Expiration Date
MMYY (LENGTH(PayerCreditC
ard) > 0) THEN
PayerCreditCard/Card
Expiration
ELSIF
(LENGTH(PayerDebitCa
rd) > 0) THEN
PayerDebitCard/CardE
xpiration
ELSIF
(LENGTH(PayerBankAcc
ount) > 0) THEN ‘ ‘
END IF
52 10 Number L, '0' / Division number
FundsCaptureInstruct
ion/PayeeAccount/Pay
mentSystemAccount/Ac
countOption[Name=’DI
V_NUM’]/Value

3
62 10 Number, L, ‘0’ IF Amount of Authorization. (Integer)
Integer (
(OrderAmount/Value =
0) OR
((LENGTH(PayerBankAc
count) > 0) AND
(OrderAmount/Currenc
y/Code = 'USD'))
) THEN 0
ELSE
OrderAmount/Value
END IF
72 2 Number, R, ‘0’ IF Amount of Authorization. (Decimal)
Decimal (
(OrderAmount/Value =
0) OR
((LENGTH(PayerBankAc
count) > 0) AND
(OrderAmount/Currenc
y/Code = 'USD'))
) THEN 0
ELSE
OrderAmount/Value
END IF

4
74 3 Number L, ‘0’ IF Currency Code
OrderAmount/Currency
/Code = 'USD' THEN
'840'
ELSIF
OrderAmount/Currency
/Code = 'AUD' THEN
'036'
ELSIF
OrderAmount/Currency
/Code = 'ATS' THEN
'040'
ELSIF
OrderAmount/Currency
/Code = 'BEF' THEN
'056'
ELSIF
OrderAmount/Currency
/Code = 'GBP' THEN
'826'
ELSIF
OrderAmount/Currency
/Code = 'CAD' THEN
'124'
ELSIF
OrderAmount/Currency
/Code = 'DKK' THEN
'208'
ELSIF
OrderAmount/Currency
/Code = 'EUR' THEN
'978'
ELSIF
OrderAmount/Currency
/Code = 'FIM' THEN
'246'
ELSIF
OrderAmount/Currency
/Code = 'FRF' THEN
'250'
ELSIF

5
77 1 Alpha R, ' ' IF Transaction Type.
PayerCreditCard/Card Credit/Purchase Cards and ECP
Issuer =‘MASTERCARD’ Transactions
AND 7 = Non-Set Channel Encrypted
OrderAmount/Value = 8 = Non-Secure Electronic Commerce
0 THEN ‘2’ 1 = Single. Mail/Telephone order
ELSIF 2 = Recurring
(LENGTH(PayerCreditC
ard) > 0 OR Pinless Debit Cards Transactions
LENGTH(PayerBankAcco I = (IVR) Interactive Voice Response
unt) > 0) THEN 7 = Non-Set Channel Encrypted
IF (OrderMedium =
‘ECOMMERCE_SECURE’)
THEN ‘7’
ELSIF (OrderMedium =
‘ECOMMERCE_NONSEC’)
THEN ‘8’
ELSIF (OrderMedium =
‘RECURRING’) THEN
‘2’
ELSIF (OrderMedium =
‘MAIL’ OR
OrderMedium =
‘TELEPHONE’) THEN
‘1’
ELSE ‘7’
END IF
ELSIF
(LENGTH(PayerDebitCa
rd) > 0) THEN
IF (OrderMedium =
‘IVR’) THEN ‘I’
ELSE ‘7’ END IF
END IF
78 3 Alpha R, ' ' Encryption Flag. Not used.
81 1 Alpha R, ' ' Reserved

6
82 2 Alpha L, ' ' IF Action Code
(OrderAmount/Value) AU = Authorize
= 0 THEN ‘VF’ PA = Purchase Authorization
ELSIF LO = Verify Only for any currency other than
(LENGTH(PayerCreditC USD.
ard) > 0) THEN ‘AU’ VO = Verify Only for Currency Code= USD
ELSIF VF = Account Verification
(LENGTH(PayerDebitCa
rd) > 0) THEN ‘PA’
ELSIF
((LENGTH(PayerBankAc
count) > 0) AND
(OrderAmount/Currenc
y/Code = 'USD'))
THEN ‘VO’
ELSIF
LENGTH(PayerBankAcco
unt) > 0 THEN ‘LO’
END IF
84 1 Alpha R, ' ' Reserved
<NEW RECORD> AddressCCRec
<DISPLAY CONDITION> LENGTH(PayerCreditCard) > 0 AND
((PayerCreditCard/CardHolder/HolderName IS NOT NULL AND
PayerCreditCard/CardHolder/BillingAddress/AddressLine1 IS NOT NULL AND
PayerCreditCard/CardHolder/BillingAddress/City IS NOT NULL AND
PayerCreditCard/CardHolder/BillingAddress/State IS NOT NULL AND
PayerCreditCard/CardHolder/BillingAddress/Country IS NOT NULL AND
PayerCreditCard/CardHolder/BillingAddress/PostalCode IS NOT NULL))
1 2 Alpha R, ‘ ‘ ‘AB’ Format Indicator
3 1 Alpha R, ‘ ‘ IF Telephone Type
PayerCreditCard/Card
Holder/PhoneNumber
IS NOT NULL THEN ‘D’
ELSE ‘ ‘ END IF
4 14 Alpha R, ‘ ‘ TRANSLATE(UPPER(Paye Telephone Number
rCreditCard/CardHold
er/PhoneNumber),
‘0123456789ABCDEFGHI
JKLMNOPQRSTUVWXYZ()-
_ #+ ’,

7
‘0123456789’)
18 30 Alpha R, ‘ ‘ UPPER( Name Text
SUBSTR(PayerCreditCa
rd/CardHolder/Holder
Name,
1,
INSTR(PayerCreditCar
d/CardHolder/HolderN
ame,' ',-1)
)
||'*'||
SUBSTR(PayerCreditCa
rd/CardHolder/Holder
Name,
INSTR(PayerCreditCar
d/CardHolder/HolderN
ame, ' ',-1)+1,
LENGTH(PayerCreditCa
rd/CardHolder/Holder
Name) -
INSTR(PayerCreditCar
d/CardHolder/HolderN
ame, ' ',-1))
)
48 30 Alpha R, ‘ ‘ UPPER(PayerCreditCar Address Line 1
d/CardHolder/Billing
Address/AddressLine1
)
78 28 Alpha R, ‘ ‘ UPPER(PayerCreditCar Address Line 2
d/CardHolder/Billing
Address/AddressLine2
)
106 2 Alpha R, ‘ ‘ IF Country Code
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘US’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)

8
ELSIF
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘CA’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)
ELSIF
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘UK’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)
ELSIF
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘GB’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)
ELSE ‘ ‘ END IF
108 20 Alpha R, ‘ ‘ UPPER(PayerCreditCar City
d/CardHolder/Billing
Address/City)
128 2 Alpha R, ‘ ‘ UPPER(PayerCreditCar State
d/CardHolder/Billing
Address/State)
130 10 Alpha R, ‘ ‘ IF Zip Code
(LENGTH(PayerCreditC
ard/CardHolder/Billi
ngAddress/PostalCode
)= 9) THEN
SUBSTR(PayerCreditCa
rd/CardHolder/Billin
gAddress/PostalCode,
1,5)||’-‘||

9
SUBSTR(PayerCreditCa
rd/CardHolder/Billin
gAddress/PostalCode,
6,4)
ELSE
PayerCreditCard/Card
Holder/BillingAddres
s/PostalCode
END IF
<NEW RECORD> AddressBARec
<DISPLAY CONDITION> PayerBankAccount/AccountHolderName IS NOT NULL
1 2 Alpha R, ‘ ‘ ‘AB’ Format Indicator
3 1 Alpha R, ‘ ‘ Telephone Type
4 14 Alpha R, ‘ ‘ Telephone Number
18 30 Alpha R, ‘ ‘ UPPER( Name Text.
SUBSTR( This validation assumes the last word in
PayerBankAccount/Acc the AccountHolderName is the last name
ountHolderName,
1,
INSTR(PayerBankAccou
nt/AccountHolderName
,' ',-1)
)
||'*'||
SUBSTR(PayerBankAcco
unt/AccountHolderNam
e,
INSTR(PayerBankAccou
nt/AccountHolderName
, ' ',-1)+1,
LENGTH(PayerBankAcco
unt/AccountHolderNam
e) -
INSTR(PayerBankAccou
nt/AccountHolderName
, ' ',-1))
)
48 30 Alpha R, ‘ ‘ Address Line 1
78 28 Alpha R, ‘ ‘ Address Line 2

10
106 2 Alpha R, ‘ ‘ Country Code
108 20 Alpha R, ‘ ‘ City
128 2 Alpha R, ‘ ‘ State
130 10 Alpha R, ‘ ‘ Zip Code
<NEW RECORD> ZipCodeRec
<DISPLAY CONDITION> LENGTH(PayerCreditCard) > 0 AND
LENGTH(PayerCreditCard/CardHolder/BillingAddress/PostalCode) > 0 AND
(LENGTH(PayerCreditCard/CardHolder/HolderName ) = 0 OR
LENGTH(PayerCreditCard/CardHolder/BillingAddress/AddressLine1 ) = 0 OR
LENGTH(PayerCreditCard/CardHolder/BillingAddress/City ) = 0 OR
LENGTH(PayerCreditCard/CardHolder/BillingAddress/State ) = 0 OR
LENGTH(PayerCreditCard/CardHolder/BillingAddress/Country ) = 0 )
1 2 Alpha R, ‘ ‘ ‘AZ’ Format Indicator
3 10 Alpha R, ‘ ‘ IF Zip Code
(LENGTH(PayerCreditC
ard/CardHolder/Billi
ngAddress/PostalCode
)= 9) THEN
SUBSTR(PayerCreditCa
rd/CardHolder/Billin
gAddress/PostalCode,
1,5)||’-‘||
SUBSTR(PayerCreditCa
rd/CardHolder/Billin
gAddress/PostalCode,
6,4)
ELSE
PayerCreditCard/Card
Holder/BillingAddres
s/PostalCode
END IF
13 2 Alpha R, ‘ ‘ IF Country Code
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘US’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)

11
ELSIF
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘CA’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)
ELSIF
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘UK’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)
ELSIF
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country) =
‘GB’ THEN
UPPER(PayerCreditCar
d/CardHolder/Billing
Address/Country)
ELSE ‘ ‘ END IF
<NEW RECORD> FraudRec
<DISPLAY CONDITION> (LENGTH(PayerCreditCard) > 0 AND
PayerCreditCard/SecurityValue IS NOT NULL) OR
(LENGTH(PayerDebitCard) > 0 AND
PayerDebitCard/SecurityValue IS NOT NULL)
1 2 Alpha R, ‘ ‘ ‘FR’ Format Indicator
3 1 Alpha R, ‘ ‘ IF Card Security Presence
((PayerCreditCard/Se
curityValue IS NOT
NULL) AND
(PayerCreditCard/Car
dIssuer = ‘DISCOVER’
OR
PayerCreditCard/Card
Issuer = ‘VISA’ OR

12
PayerCreditCard/Card
Issuer =
‘MASTERCARD’)) THEN
‘1’ ELSE ‘ ‘ END IF
4 4 Alpha R, ‘ ‘ IF Card Security Value
LENGTH(PayerCreditCa
rd) > 0 THEN
PayerCreditCard/Secu
rityValue
ELSIF
LENGTH(PayerDebitCar
d) > 0 THEN
PayerDebitCard/Secur
ityValue
END IF
<NEW RECORD> OrderInformation2Rec
<DISPLAY CONDITION> LENGTH(PayerDebitCard) > 0
1 2 Alpha R, ‘ ‘ ‘O2’ Format Indicator
3 25 Alpha R, ‘ ‘ IF Biller Reference Number
(LENGTH(Payer/PartyN
umber) = 0) THEN
‘0000’
END IF
<NEW RECORD> ElectronicCheckProcessingRec
<DISPLAY CONDITION> LENGTH(PayerBankAccount) > 0
1 2 Alpha R, ‘ ‘ ‘EC’ Format Indicator
3 9 Alpha R, ‘ ‘ PayerBankAccount/Bra RDFI/Bank Id
nchNumber
12 1 Alpha R, ‘ ‘ Authorization Method
Space = N/A
P = (POP) Point of Purchase
A = (ARC) Accounts Receivable
Conversion
<END LEVEL> FundsCaptureOrder

13

S-ar putea să vă placă și