Vantiv eCommerce Sandbox

Document created by gjsissons on May 10, 2016Last modified by mgreenfi on Mar 23, 2017
Version 13Show Document
  • View in full screen mode

 

Vantiv has multiple environments that developers can use to progress an application integration from development to certification to production. These include our Sandbox environment, the Pre-Live environment and the Post-Live environment.

 

An overview of Vantiv's various environments is included in the document Certification and Testing environments.

 

The Vantiv eCommerce Sandbox Environment

 

The eCommerce Sandbox functions as a simulator of our production environment.  You send your transactions to the sandbox environment the exact same way you’d send them to our certification or production systems.

 

The Sandbox validates the transaction format and approves it if it matches our requirements. The Sandbox server makes it easy to get started using our SDKs or XML endpoints. There are no forms to fill out, no credentials required, and no special access needed.

 

The endpoint for our Sandbox environment is https://www.testlitle.com/sandbox/communicator/online

 

A working example of an authorization using the sandbox endpoint is provided below.  You should be able to run this on any platform with internet access that support cURL and Linux / UNIX bash including OS/X.  The values provided in the authentication tags do not matter for the Sandbox.  Similarly, values provided in the authorization tag are ignored.

 

#!/bin/sh
curl https://www.testlitle.com/sandbox/communicator/online --tlsv1.2  \
   -H "Content-Type: text/xml; charset=UTF-8"  \
   -X POST  \
   -d  \
     '<?xml version="1.0"?>
      <litleOnlineRequest version="8.10" xmlns="http://www.litle.com/schema" merchantId="default">
        <authentication>
            <user>MyStore</user>
            <password>VantivR0ck$</password>
        </authentication>
        <authorization id="ididid" reportGroup="Money2020" customerId="12345">
            <orderId>1</orderId>
            <amount>1000</amount>
            <orderSource>ecommerce</orderSource>
            <billToAddress>
                <name>Jane Doe</name>
                <addressLine1>20 Main Street</addressLine1>
                <city>San Jose</city>
                <state>CA</state>
                <zip>95032</zip>
                <country>USA</country>
                <email>my-email-address@vantiv.com</email>
                <phone>978-551-0040</phone>
            </billToAddress>
            <card>
                <type>MC</type>
                <number>5454545454545454</number>
                <expDate>1112</expDate>
                <cardValidationNum>123</cardValidationNum>
            </card>
        </authorization>
      </litleOnlineRequest>'

 

Assuming your device is able to reach the sandbox endpoint, you should receive a response like the one below from the Sandbox.

 

<litleOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'>
  <authorizationResponse id='ididid' reportGroup='Money2020' customerId='12345'>
    <litleTxnId>571289423901768000</litleTxnId>
    <orderId>1</orderId>
    <response>000</response>
    <responseTime>2017-03-16T12:42:43</responseTime>
    <message>Approved</message>
    <authCode>47767</authCode>
  </authorizationResponse>

 

The example above shows a test card data being passed inside the <card> XML tags. Additional information about test card numbers for the sandbox is provided below.  For developers who want to reduce PCI scope and avoid directly handling and transmitting card holder data, you can use Vantiv's eProtect service (formerly known as paypage) and submit a low-value token that represents vaulted payment card credentials instead. For details, consult the eProtect Integration Guide.

 

PLEASE DO NOT USE REAL CARD NUMBERS WHEN TESTING AGAINST THE SANDBOX

 

The eCommerce Sandbox supports online transactions only and needs at least version 8 of LitleXML. It has no state and doesn't actually tie the transactions with one another, but it does simulate responses for tied transactions. To test your batch transactions, you'll need access to our "Pre-Live" environment.

 

The Vantiv eCommerce Pre-Live Environment

 

Once you have applications working in the Sandbox, you can request access to our Pre-Live environment for additional testing. You can request an account here. All you need is your e-mail address and organization name. After you register for an account in the Pre-Live environment you will receive an e-mail with four pieces of information:

 

 

The same test script above can be adapted to use the Pre-Live environment by updating the endpoint, ensuring that the valid Username and Password values are entered in the <authentication> tag, and passing the proper Merchant Id (referred to as the "id") in the <authorization> tag.

 

The Prelive environment uses a simulator for responses.  There are specific test cards that produce specific test responses.  Please see the XML Reference Guide Section 2.4.1 for the specific test cards.  Any test card sent into the Pre-live environment that is not listed in the XML Reference Guide and passes mod10 will Approve.

Sandbox environment features

 

The Sandbox uses the request to calculate the response. This is done so that any response that our systems can generate can be retrieved through the Sandbox as well. For Sale and Auth transactions, the last three digits of the credit card will be used for the response reason code. Some sample numbers/responses include:

 

Desired responseCredit card number
000: Approved4470330769941000
010: Partially Approved4658512425423010
100: Processing Network Unavailable4215176886320101
101: Issuer Unavailable4215176886320101
110: Insufficient Funds4488282659650110

 

 

Other numbers in the credit card can be used to simulate a variety of features, including AVS, CVV, Auto AU, etc. To identify the feature, characters two to four are used and depending on the feature, other characters will be used. The following shows how we count the characters from the card number and highlighted in green are the three character feature identifiers.

 

A simple example is the following card number:

 

Characters:      0123456789012345

                         4100280190123000

 

The green characters specify the feature (in this case Vault). The red characters specify the token response code. The blue digits specify the response reason code, as explained above.

 

So for example, to simulate a transaction that will respond with insufficient funds, we can use a different test card number (a VISA card in this case) ending in the digits 110 as below:

 

 

#!/bin/sh
curl https://www.testlitle.com/sandbox/communicator/online --tlsv1.2  \
   -H "Content-Type: text/xml; charset=UTF-8"  \
   -X POST  \
   -d  \
     '<?xml version="1.0"?>
      <litleOnlineRequest version="8.10" xmlns="http://www.litle.com/schema" merchantId="default">
        <authentication>
            <user>MyStore</user>
            <password>VantivR0ck$</password>
        </authentication>
        <authorization id="ididid" reportGroup="Money2020" customerId="12345">
            <orderId>1</orderId>
            <amount>1000</amount>
            <orderSource>ecommerce</orderSource>
            <billToAddress>
                <name>Jane Doe</name>
                <addressLine1>20 Main Street</addressLine1>
                <city>San Jose</city>
                <state>CA</state>
                <zip>95032</zip>
                <country>USA</country>
                <email>my-email-address@vantiv.com</email>
                <phone>978-551-0040</phone>
            </billToAddress>
            <card>
                <type>VI</type>
                <number>4488282659650110</number>
                <expDate>1118</expDate>
                <cardValidationNum>123</cardValidationNum>
            </card>
        </authorization>
      </litleOnlineRequest>'

 

As expected, this script responds with a message indicating there are insufficient funds to process the transaction.

 

<litleOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'>
  <authorizationResponse id='ididid' reportGroup='Money2020' customerId='12345'>
    <litleTxnId>149986033714496110</litleTxnId>
    <orderId>1</orderId>
    <response>110</response>
    <responseTime>2017-03-16T12:55:49</responseTime>
    <message>Insufficient Funds</message>
  </authorizationResponse>

 

The following table shows all the features available and the meaning for the special characters. You can try with different values for each one of them and check the responses that you get back.

 

Example Card NumberFeature IdentificationFeatureOther characters
4100117890123000001Account UpdaterNothing needed, new randomly generated card number will be returned
4100280140123000002Vault/Tokenization5-7 - Token response code
4100322311199000003Enhanced Authorizations

5 - Funding Source Type

6 - Reloadable

7 - Prepaid card type

8 - Affluence

9 - Issuer Country

4200410886320101004Address Verification (AVS)5-7 - AVS response code
4100521234567000005Card Security Code Validation5 - Card validation result

 

 

The Sandbox and Apple Pay

 

Use a three-digit amount to specify the desired responses, Some sample numbers/responses include:

 

Desired responseTransaction amount
000Approved 000
010Partially Approved 010
100Processing Network Unavailable 100
101Issuer Unavailable 101
110Insufficient Funds 110

 

For Apple Pay, when the amount is not in this table or not a three digit number, the transaction will automatically be approved and return '000' as the response code, 'Approved' as the response message.

 

Learning more

 

Documentation about the Sandbox and other Vantiv certification environments are provided in the Certification and Test Environment guide.

 

The URL to send your transactions to our Sandbox is the following:

https://www.testlitle.com/sandbox/communicator/online

 

Sample XML transactions and command lines using curl are provided on the eCommerce GitHub site that exercise the Sandbox.

http://litleco.github.io/sandbox/#howItWorks

1 person found this helpful

Attachments

    Outcomes