Provider guide

Verifone XML

Integration notes, required parameters, test details and example requests for integrating Verifone XML with the Revo PCI platform.

At a glance
4
Supported transaction types

Supported modes
SALE, TOKEN, TOKENSALE, REFUND

Key setup requirement
Supports encrypted and unencrypted for all options, double check implementation for each customer
!
Important
Verifone have alot of different ways to create the payment, please double check each implentation to make sure you are using the right one.
Testing

Test card details

Card Number:
4444333322221111
Expiry Date:
0531
CVV:
123

Tokenize Request - Unencrypted

Requesting a token, suitable for backend code where the request is not exposed to a client application which can intercept the passcode.

transactionType
TOKEN
systemId
This is provided by Verifone.
systemGuid
This is provided by Verifone.
passcode
This is provided by Verifone.
purchase
Allow purchase transaction type.
refund
Allow refund transaction type.
cashback
Allow cashback transaction type.
tokenExpirationDate
The date you would like the created token to become inactive.

Tokenize Request - Encrypted

When embedding into a client application, to prevent the client intercepting or changing important parameters then these parameters should be encrypted by the developer and the encrypted string can be embedded into the application to prevent tampering. The encrypted string can be generated using the encrypt method in the general API documentation.

tokenExpirationDate
The date you would like the created token to become inactive.

Token Payment Request – Unencrypted

To collect a payment after obtaining a token the TOKENSALE method can be used

transactionType
TOKENSALE
systemId
This is provided by Verifone.
systemGuid
This is provided by Verifone.
passcode
This is provided by Verifone.
accountId
This is provided by Verifone.
accountPasscode
This is provided by Verifone.
transactionCurrencyCode
ISO standard country code for merchant location. Info can be found here.
terminalCountryCode
ISO standard currency code of transaction. Info can be found here.
avsHouse
House number for the card owner.
avsPostcode
Postcode for the card owner.
txnValue
Always should be a whole or decimal, for example £2.50 is 2.50.
tokenId
Token Id for the card to take the payment from.

Token Payment Request - Encrypted

Like the Token Request, all parameters which should not be visible to a user should be encrypted when embedding settings inside a user application including web applications.

avsHouse
House number for the card owner.
avsPostcode
Postcode for the card owner.
txnValue
Always should be a whole or decimal, for example £2.50 is 2.50.
tokenId
Token Id for the card to take the payment from.

Refund Request – Unencrypted

To refund a stored card token the TOKENREFUND method can be used.

transactionType
REFUND
systemId
This is provided by Verifone.
systemGuid
This is provided by Verifone.
passcode
This is provided by Verifone.
accountId
This is provided by Verifone.
accountPasscode
This is provided by Verifone.
transactionCurrencyCode
ISO standard country code for merchant location. Info can be found here.
terminalCountryCode
ISO standard currency code of transaction. Info can be found here.
txnValue
Always should be a whole or decimal, for example £2.50 is 2.50.
tokenId
Token Id for the card to take the payment from.

Refund Request – Encrypted

Like the Token Request, all parameters which should not be visible to a user should be encrypted when embedding settings inside a user application including web applications.

txnValue
Always should be a whole or decimal, for example £2.50 is 2.50.
tokenId
Token Id for the card to take the payment from.

Non Tokenised Payments

The transactionType of SALE can be used instead of TOKENSALE. When using SALE then a TokenId is not used and the card details are obtained from the Phone call session.

The transactionType of REFUND can be used instead of TOKENREFUND. When using REFUND then a TokenId is not used and the card details are obtained from the Phone call session.

Other actions such as VERIFY, TOKENVERIFY, AUTH, TOKENAUTH, CHARGE and TOKENCHARGE follow the same patterns as SALE and REFUND, however, are beyond the scope of this document.

i
Other Information

Verifone don't have documentation avaliable online however information can be found here

Reference

Example request

cURL exampleAPI request
curl --location 'https://api.revopci.co.uk/' \
            --header 'X-Session;' \
            --header 'X-Auth;' \
            --header 'Content-Type: application/json' \
            --data '{
            "provider": "verifoneXml",
            "mode": "test",
            "method": "payment",
            "parameters":
            {
            //Tokenize Request - Unencrypted
            "transactionType": "TOKEN",
            "systemId": "",
            "systemGuid": "",
            "passcode": "",
            "purchase": "true",
            "refund": "true",
            "cashback": "false",
            "tokenExpirationDate": "010631"

            //Tokenize Request - Encrypted
            "tokenExpirationDate": "010631"

            //Token Payment Request – Unencrypted
            "transactionType": "TOKENSALE",
            "systemId": "",
            "systemGuid": "",
            "passcode": "",
            "accountId": "",
            "accountPasscode": "",
            "transactionCurrencyCode": "826",
            "terminalCountryCode": "826",
            "avsHouse": "123",
            "avsPostcode": "SANTA1",
            "txnValue": "1.10",
            "tokenId": "000000000000"

            //Token Payment Request - Encrypted
            "avsHouse": "123",
            "avsPostcode": "SANTA1",
            "txnValue": "1.10",
            "tokenId": "000000000000"

            //Refund Request – Unencrypted
            "transactionType": "REFUND",
            "systemId": "",
            "systemGUID": "",
            "passcode": "",
            "accountId": "",
            "accountPasscode": "",
            "transactionCurrencyCode": "826",
            "terminalCountryCode": "826",
            "txnValue": "1.10",
            "tokenId": "000000000000"

            //Refund Request – Encrypted
            "txnValue": "1.10",
            "tokenId": "000000000000"
            }
            }'