API Reference

linked2pay (or L2P) offers a series of ways to seamlessly integrate your existing system with our award winning payments processing platform. Through our Checkout feature and WebService API Kits we have made it even easier for you to find what you've been looking for.

  1. Review this documentation in its entirety

  2. Download the WSDL file and review it in its entirety
    To obtain the corresponding WSDL for testing purposes click here

  3. Once you are ready to move to production, please register your client(s) by clicking "Register" on www.linked2pay.com and completing our simple 5 step registration process.

  4. Begin using the L2P Transaction Webservice and start accepting payments!

For more information about linked2pay's API please email us at: supportteam@linked2pay.com

API Reference

Before you start using/testing our web service features, make sure you register for a Sandbox account!

Go to the link to create a Sandbox Account.

								   https://linked2pay.com/web-services
								

Authentication

We care about your account security, that is why we need to make sure all users will authenticate their accounts before making a successful web service call.

Currently, we provide two ways for users to authenticating themselves.

FINGERPRINT: This is a more advanced way of authentication: we generate a temporary FINGERPRINT string for you and you can use it for a limited time.

AUTHENTICATION KEY: A Web Service Access Key is generated for you as an alternative "password". You can generate a new Web Service Access Key whenever you want and do not have to go through the process of changing your password every now and then.

L2pAuthenticationData

Object passed as the first parameter of every method. linked2pay web service calls can be authenticated in two different ways, via KEY Authentication or FINGERPRINT Authentication. Here are the details on how to authenticate your web service calls.


Component Type Description
AuthenticationMethod string There are two types of Authentication Method,"KEY" and "FINGERPRINT" Authentication.
"KEY" Authentication: Represents when User authenticates their web service call by providing linked2pay with their Login Username and their Web Service Access Key.
"FINGERPRINT" Authentication: Represents when User authenticates their web service call by providing linked2pay with their Login Username, Sequence Number, Time Stamp, and Fingerprint.
login string L2P client login name up to 20 characters.
key string A Unique key generated from my setting page.
fingerprint fingerprintBlock A bundle of information, containing user's sequence number, timestamp and a 16-character generated fingerprint.

Fingerprint

Fingerprint Authentication represents when user authenticates their web service call by providing linked2pay with their Login Username, Sequence Number, Time Stamp, and Fingerprint.

Component Type Description
sequence long A sequence of numbers that is set by the user which can be any random set of numbers or some set of numbers that make sense to the User.
This sequence number will be used in the mathematical calculation used to generate Users fingerprint.
timestamp long Time Stamp is the number of seconds from 01/01/1970 to the current time.
This time stamp will be used as a variable in the mathematical calculation used to generate Users fingerprint.
fingerprint fingerprintType A unique and temporary string of 16 characters generated from parameters including current timestamp, sequence number, login ID, and web service access key for the User.
Login Username: The Username of your login credentials used to login to the linked2pay web site.
Web Service Access Key: The Web Service Access Key generated on the My Settings page of the linked2pay web site.
Arguments
  • fingerprintType Restricting string

    Restrictions
    Length of value must be equal to 16.

Fingerprint

											package com.jcx.web.services.l2p.data;

import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import javax.crypto.Mac;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;

public class FingerprintGenerator {
private long sequence;
private long timeStamp;
private String fingerprintHash;
// Get the sequence that was used in creating the fingerprint.
// @return the sequence
public long getSequence() { return Math.abs(sequence); }
// Get the timestamp that was used in creating the fingerprint.
// @return the timestamp
public long getTimeStamp() { return timeStamp; }
// Get the fingerprint hash
// @return the fingerprintHash
public String getFingerprintHash() { return fingerprintHash; }
// Creates a fingerprint with raw data fields.
// @param loginID
// @param transactionKey
// @param sequence : this number will be concatenated with a random value
// @return A Fingerprint object.
public static FingerprintGenerator createFingerprint(String loginID,
String transactionKey, long sequence)
{
FingerprintGenerator fingerprint = new FingerprintGenerator();
// a sequence number is randomly generated
SecureRandom generator = new SecureRandom();
// Sequence is generated.
fingerprint.sequence = Long.parseLong(sequence + "" + generator.nextInt(1000));
// A timestamp is generated
fingerprint.timeStamp = System.currentTimeMillis() / 1000;
// This section uses Java Cryptography functions to generate a fingerprint
try
{
// First, the Transaction key is converted to a "SecretKey" object
SecretKey key = new SecretKeySpec(transactionKey.getBytes(), "HmacMD5");

//A MAC object is created to generate the hash
//using the HmacMD5 algorithm.
Mac mac = Mac.getInstance("HmacMD5");
mac.init(key);

String inputstring = null;
inputstring = loginID + "^" + fingerprint.sequence + "^"
+ fingerprint.timeStamp;
byte[] result = mac.doFinal(inputstring.getBytes());

// Convert the result from byte[] to hexadecimal format.
StringBuilder strbuf = new StringBuilder(result.length * 2);
for (byte aResult : result)
{
if (((int) aResult & 0xff) < 0x10) {
strbuf.append("0");
}
strbuf.append(Long.toString((int) aResult & 0xff, 16));
}

fingerprint.fingerprintHash = strbuf.toString();
}
catch (NoSuchAlgorithmException nsae) {
System.out.println("Fingerprint creation failed. " + nsae.getMessage()); }
catch (InvalidKeyException ike) {
System.out.println("Fingerprint creation failed. " + ike.getMessage());}
return fingerprint;
}
}

Authentication Key

Authentication Key represents when User authenticates their web service call by providing linked2pay with their Login Username and their Web Service Access Key.

A unique string for authentification purpose, generated and saved on user's Web Service Settings section in the "My Settings" page.

To generate this Web Service Access Key follow these instructions:

  1. Login to linked2pay using your Username and Password.

  2. Click on the "My Settings" link located at the upper right-hand corner of the page.

  3. Scroll down and expand the "Web Service Settings" section.

  4. Mark the "Enable Web Service" check box.

  5. Click on the "Generate Web Service Access Key" button.

  6. Click on the "Save Changes" button.

Contacts

Contact object allows you to perform recurring charges, and to track multiple charges that are associated with same customer. The API allows you to perform two operation board a Contact and update a Contact. You can further perfrom payment operations(ACH & Credit Card Transactions) for customers by using their contact information(Contact ID).

L2PContactDataType

It is a complexType object, passed as parameter to different methods. This complexType parameter contains all the information about a contact.


Component Type Max Length Description
companyName string 50 Name of the company or dba.
(Either Company Name or First Name/Last Name is required for a contact.)
firstName string 50 First name of client.
(Either First Name/Last Name or Company Name is required for a contact.)
lastName string 50 Last Name of client.
(Either First Name/Last Name or Company Name is required for a contact.)
email string 50 Email address of the customer, used to send payment receipts, etc.
phone string 20 Phone number of the customer, accepted formats include: (123) 456-7890, 123-456-7890, and 1234567890.
mobile string 20 Mobile Number of client.
address1 string 50 First line of address of client.
address2 string 50 Second line of address of client.
city string 50 City of client.
state string 2 State of the client.
zip string 9 Zipcode of the area.
Matching Pattern: "^[0-9A-Za-z]*"
externalId string 50 external ID of the client.

Board a Contact

This method allows you to board a new contact by submitting the login parameters ( containing login authentication information to linked2pay ) and Contact data for new contact.

If you would like to try our JSON-oriented web Service feature for boarding a contact

To try our JSON-oriented web Service feature for boarding a contact please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.

























Phone

Mobile Phone




Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactData L2PContactDataType It contains all the required information about the new contact.
(Required)
Returns

Returns a positive response code and unique ID if the call succeeded. If it returns a negative response code then there is an error in boarding the contact. (e.g. Not providing a required information about the contact.)

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique ID of the contact.

Board a Contact

Sample JSON Request:

										{
"action":"board_contact",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactData":{
"companyName":"",
"firstName":"john",
"lastName":"cena",
"address1":"123 Wwf St,",
"address2":"",
"city":"Oxnard",
"state":"CA",
"zip":"12345",
"phone":"111-111-11111",
"mobilePhone":"",
"email":"abc@xyz.com",
"externalId":"346546657"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Update a Contact

This method allows you to update a contact by submitting the login parameters ( containing login authentication information to linked2pay ) ,Contact ID and Contact data to update the contact. Any Contact data parameter not provided will remain same as you provided at the time of boarding the contact. This request accepts mostly the same argument as of boarding a contact.

If you would like to try our JSON-oriented web Service feature for updating a contact,

To try our JSON-oriented web Service feature for updating a contact please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.



























Phone

Mobile Phone




Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactId Integer Each contact has it's own unique ID. It is generated at the time you create a contact.
(Required)
contactData L2PContactDataType It contains all the required information about the new contact.
(Required)
Returns

Returns a positive response code and unique ID if the update succeeded. Throws an error if update parameters are invalid (e.g. specifying an invalid contactId or an invalid customerData).

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique ID of the contact.

Update a Contact

Sample JSON Request:

										{
"action":"update_contact",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"4356743",
"contactData":{
"companyName":"",
"firstName":"Mike",
"lastName":"James",
"address1":"123 Main St,",
"address2":"",
"city":"Oxnard",
"state":"CA",
"zip":"12345",
"phone":"111-111-11111",
"mobilePhone":"",
"email":"abcd@xyz.com",
"externalId":"346546657"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Payment Instrument

The L2P Transaction WebService allows you to use 3 payment instruments. Manual credit card, Swipe credit card and Bank account. You can further perform different operation on these payment instruments like updating a bank account or removing a bank account, register a card or remove a card.

Register a Card

This method allows you to register a card by submitting the login parameters ( containing login authentication information to linked2pay) , Contact ID and Card data to register the card.

If you would like to try our JSON-oriented web Service feature to register a card,

To try our JSON-oriented web Service feature for registering a card please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.
























Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactId Integer Each contact has it's own unique ID. It is generated at the time you create a contact.
(Required)
cardData L2PCardManualEntryType This represents credit card data for a manual entry credit card transaction.
(Required)
L2PCardManualEntryType

Object passed as parameter to register a card or to make a credit card transaction. This parameter contains all the information about card. Here are the details of a credit card.


Component Type Length Description
cardName string 50 Name on Card.
(Required)
cardNbr string 22 Number on Card.
(Required)
cvv string 6 CVV security code on card.
(Required)
expMonth integer 50 Month of card's expiration date.
(Required)
expYear integer 50 Year of card's expiration date.
(Required)
cardZipcode integer 5 Zip code of card's billing address.
(Required)
CardPresent booleanType 1 This represents if the card is present.
(Required)
ENUMERATION:
Y: Yes, N: No
SaveCard booleanType 1 This represents if the card should be saved or not.
ENUMERATION:
Y: Yes, N: No
Returns

Returns a positive response code and unique ID if the card registeration is succeeded. Throws an error with negative response code if required parameters to register a card are invalid (e.g. specifying an invalid contactId or an invalid cardData).

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique Identification Number assigned to your Card.

Register a Card:

Sample JSON Request:

									    {
"action":"register_card",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"234567",
"cardData":{
"cardName":"Don",
"cardNbr":"4388345609871234",
"expMonth":"2",
"expYear":"2020",
"cvv2":"999",
"cardZipcode":"12345",
"cardPresent":"NO"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Register Swipe Card

This method allows you to register a swipe card by submitting the login parameters ( containing login authentication information to linked2pay) , Contact ID and Card data to register the swipe card.

If you would like to try our JSON-oriented web Service feature to register a swipe card,

To try our JSON-oriented web Service feature for registering a swipe card please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.


















Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactId Integer Each contact has it's own unique ID. It is generated at the time you create a contact.
(Required)
cardData L2PSwipeEntryType It contains all the required information about the card.
(Required)
L2PSwipeEntryType

Object passed as parameter to register a swipe card or to make a swipe card payment. This parameter contains all the information about swipe card. Here are the details of a swipe card.

Component Type Description
track1 string Track 1 of card data collected from a card swipe.
(Required)
track2 string Track 2 of card data collected from a card swipe.
(Required)
cvv string CVV security code on card.
(Required)
cardZipcode integer Zip code of card's billing address.
(Required)
SaveCard booleanType This represents if the card should be saved or not.
ENUMERATION:
Y: Yes, N: No
Returns

Returns a positive response code and unique ID if the swipe card registeration is succeeded. Throws an error with a negative response code if required parameters to register a swipe card are invalid (e.g. specifying an invalid contactId or an invalid cardData).

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique Identification Number assigned to your Card.

Register Swipe Card

Sample JSON Request:

										{
"action":"register_swipe_card",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"234567",
"swipeData":{
"track1":"B4388345609871234^John Tester1^15101011234567890123",
"track2":"4388345609871234=15101011234567890123",
"cvv2":"999",
"cardZipcode":"12345"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Remove Card

This method allows you to remove a card by submitting the login parameters ( containing login authentication information to linked2pay ) , Card Identifier ( Containing Contact ID and Card ID ) to remove a card.

If you would like to try our JSON-oriented web Service feature to remove a card,

To try our JSON-oriented web Service feature for removing card please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.












Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
cardIdentifier CardIdentifier It contains all the required information about the card.
(Required)
CardIdentifier

Object passed as parameter of removeCard method. This parameter contains all the information about card that you want to remove. Here are the details on how to register a swipe card.

Component Type Description
contactId long Contact ID generated at the time of boarding the contact.
(Required)
cardId long Card ID generated at the time of cad registration.
(Required)
Returns

Returns a positive response code and unique ID if the remove card is succeeded. Throws an error with negative response code if required parameters to remove a card are invalid (e.g. specifying an invalid contactId or an invalid cardId).

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique Identification number referring to your card.

Remove Card

Sample JSON Request:

										{
"action":"remove_card",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"cardIdentifier":{
"contactId":"234567",
"cardId":"4388345609871234",
"cvv2":"999",
"cardZipcode":"12345"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Register Bank Account

This method allows you to register a bank account by submitting the login parameters, containing login authentication information to linked2pay, Contact ID and account data to register an account.

If you would like to try our JSON-oriented web Service feature to register a bank account,

To try our JSON-oriented web Service feature for registering bank account please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.




















Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactId Integer Each contact has it's own unique ID. It is generated at the time you create a contact.
(Required)
accountData L2PAchAccountDataType It contains all the required information about the new contact.
(Required)
L2PAchAccountDataType

Object passed as parameter to register a bank account or update a bank account. This parameter contains all the Bank Account information. Here are the details on how to register a bank account.


Component Type Description
routingNumber string Routing number of the bank account with a maximim value of 25.
(Required)
accountNumber string Account number of the bank account with a maximim value of 25.
(Required)
AccountType accountType Represents your customers Type of Bank Account. Acceptable parameters here are PERSONAL or BUSINESS.
(Required)
DepositType depositType This is used to specify whether the deposit is being made into a regular checking account or into a savings account. Acceptable parameters here are SAVINGS or CHECKING.
(Required)
AuthorizeBy authorizeBy Represents the manner in which you obtained authorization for this transaction request. Acceptable parameters here are: 1) Online, 2) Written, or 3) Telephone.
(Required)
Returns

Returns a positive response code and unique ID if the account registeration is succeeded. Throws an error with a negative response code if required parameters for account registeration are invalid (e.g. specifying an invalid contactId or an invalid accountData).

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique Identification Number referring to your Bank Account.

Arguments
  • accountType Restricting String

    Enumeration
    PERSONAL
    BUSINESS

  • depositType Restricting String

    Enumeration
    SAVINGS
    CHECKINGS

  • authorizeBy Restricting String

    Enumeration
    ONLINE
    WRITTEN
    TELEPHONE

Register Bank Account

Sample JSON Request:

									    {
"action":"register_account",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"234567",
"accountData":{
"acountType":"BUSINESS",
"depositType":"CHECKING",
"routingNumber":"121000358",
"accountNumber":"10002000300040005",
"authorizeBy":"ONLINE"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Update Bank Account

This method allows you to update a bank account by submitting the login parameters ( containing login authentication information to linked2pay) , Account Identifier ( containing Contact ID & Account ID ) and account data to update an account.

If you would like to try our JSON-oriented web Service feature to update a bank account,

To try our JSON-oriented web Service feature for updating bank account please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.






















Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
accountIdentifier AccountIdentifier Account Identifier contains Contact ID and Account ID. Each ACH account is identified by contactId and accountId.
(Required)
accountData L2PAchAccountDataType It contains all the required information about the new contact.
(Required)
Account Identifier

Object passed as parameter of updateBankAccount method. This parameter contains contactId and accoutnId information of the account to be updated. Here are the details on how to update a bank account.


Component Type Description
ContactId Integer Each contact has it's own unique ID. It is generated at the time you create a contact.
(Required)
AccountId Integer Each account has it's own unique ID. It is generated at the time you register an account.
(Required)
Returns

Returns a positive response code and unique ID if the account update is succeeded. Throws an error with negative return code if required parameters for account update are invalid (e.g. specifying an invalid contactId or an invalid accountId).

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique Identification Number referring to your Account Number.

Update Bank Account

Sample JSON Request:

									 {
"action":"update_account",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"234567",
"accountId":"375954",
"accountData":{
"acountType":"BUSINESS",
"depositType":"CHECKING",
"routingNumber":"121000001",
"accountNumber":"10006000800000405",
"authorizeBy":"ONLINE"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Remove Bank Account

This method allows you to remove a bank account by submitting the login parameters (containing login authentication information to linked2pay ) , Account Identifier ( containing Contact ID & Account ID ) to remove an account.

If you would like to try our JSON-oriented web Service feature to remove a bank account,

To try our JSON-oriented web Service feature for removing a bank account please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.












Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
accountIdentifier AccountIdentifier Account Identifier contains Contact ID and Account ID. Each ACH account is identified by contactId and accountId.
(Required)
Returns

Returns a positive response code and unique ID if the delete succeeded. Throws an error with negative return code if delete parameters are invalid (e.g. specifying an invalid contactId or an invalid accountId).

Boarding Response
  • RspCode String

    Description
    Response Code returned by linked2pay.

  • RspText String

    Description
    Response Text returned by linked2pay.

  • id Integer

    Description
    Unique Identification Number referring to your Account Number.

Remove Bank Account

Sample JSON Request:

									 {
"action":"remove_account",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321John"},
"accountIdentifier":{
"contactId":"234567",
"accountId":"375954"}
}

Sample JSON Response:

										{
"rspCode":"0",
"rspText":"L2P_OK",
"id":"158903"
}

Payments

The L2P Transaction WebService allows you to submit direct ACH or Credit Card transactions against your customers’ bank or credit card accounts. The L2P Transaction WebService will help you expedite those transactions for which you already have ACH and Credit Card data on file.

The L2P Transaction Webservice can be used for creating profiles and sending transactions where the merchant already possesses the required authorization. Using the L2PtransactWebService a client can easily interface any TSYS supported reader to submit transactions.

Credit Card

This method allows you to make a credit card payment by submitting login parameters(containing login authentication information to linked2pay) , L2PContactDataType(containing contcat information) , cardData (containing all the required information about card) and pymtData(contains all the information about payment you want to make). linked2pay will then process a credit card transaction based on your request.

If you would like to try our JSON-oriented web Service feature for a credit card payment,

To try our JSON-oriented web Service feature to make a credit card payment, please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.

























Phone

Mobile Phone
































Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactData L2PContactDataType It contains all the required information about the contact.
(Required)
cardData L2PCardManualEntryType This represents credit card data for a manual entry credit card transaction.
(Required)
pymtData L2pCreditCardPymtReqType This represents a manual credit Card payment request.
(Required)

If you are processing a transaction for an existing contact, just provide the contactId for the specfic contact rather than providing all the contact info again.

If you would like to try our JSON-oriented web Service feature to make a credit card payment using Contact ID,

To try our JSON-oriented web Service feature to make credit card payment using Contact ID, fill the following form and click Show JSON.






































Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactId Integer Unique ID of the Contact.
(Required)
cardData L2PCardManualEntryType This represents credit card data for a manual entry credit card transaction.
(Required)
pymtData L2pCreditCardPymtReqType This represents a manual credit Card payment request.
(Required)

If you are processing a transaction for an existing card that is already registered with linked2pay, just provide th cardId rather than providing all the card info again.

If you would like to try our JSON-oriented web Service feature to make a credit card payment using Contact ID and Card ID,

To try our JSON-oriented web Service feature to make a credit card payment using Contact ID and Card ID, fill the following form and click Show JSON.
























Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
cardIdentifier cardIdentifier Unique ID for the Card & Contact.
(Required)
pymtData L2pCreditCardPymtReqType This represents a manual credit Card payment request.
(Required)
CardIdentifier

Object passed as parameter of cardOnFileTran method. This parameter contains all the information about your credit card.

Component Type Description
contactId long Contact ID generated at the time of boarding the contact.
(Required)
cardId long Card ID generated at the time of cad registration.
(Required)
L2pCreditCardPymtReqType

L2pCreditCardPymtReqType is a complex type that contains all the payment information. This represents linked2pay credit card payment request.

Component Type Description
Operation string Two type of operations can be performed on credit card : 1)Authorize, 2)Charge
(Required)
Amt amtType The payment amount requested.
(Required)
TipAmt amtType Tip amount added to the requested amount.
Ecommerce eCommerceType Represents the e-commerce type. Acceptable parameters here are: 1) Mobile, 2) Retail, and 3) ecommerce.
(Required)
Frequency frequencyType Frequency of the transction.
NumberOfPymts Integer Number of Payments.
Returns

A transactionResponse element has the structure defined by the following table:

Component Type Description
RspCode string Response code.
RspText string Response description.
AuthCode string Authorization Code. A unique identification number assigned to each of your linked2pay Transaction Requests.
AuthAmt amtType Total Amount paid for your request.
RequestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
PymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
Arguments
  • amtType Restricting string

    Restrictions
    1. The number of digits to the right of the decimal point must be less than or equal to 2.
    2. The number of digits in the value must be less than or equal to 12.
    3. The value must be greater than or equal to 0.

  • frequencyType string

    Enumeration
    NONE: No Frequency
    WEEKLY: Once in a Week
    MONTHLY: Once in a Month
    QUARTERLY: Once in 3 Months
    YEARLY: Once a year
    DAILY: Everyday
    BIWEEKLY: Every 2 weeks

  • eCommerceType Restricting string

    Enumeration
    ECOMM: Transactions that your customer will initiate.
    MOTO: Transactions you will initiate through linked2pays Virtual Terminal.
    RETAIL: Transactions you will initiate via linked2pays Mobile App.

  • transNumberType Restricting string

    Restrictions
    Maximum Length of value can be equal to 8.

Credit Card

Sample JSON Credit Card Payment Request using Contact Data & Card Data:

									    {
"action":"card_tran",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactData":{
"companyName":"",
"firstName":"john",
"lastName":"cena",
"address1":"123 Wwf St,",
"address2":"",
"city":"Oxnard",
"state":"CA",
"zip":"12345",
"phone":"111-111-11111",
"mobilePhone":"",
"email":"abc@xyz.com",
"externalId":"346546657"},
"cardData":{
"cardName":"Don",
"cardNbr":"4388345609871234",
"expMonth":"2",
"expYear":"2020",
"cvv2":"999",
"cardZipcode":"12345",
"cardPresent":"NO",
"saveCard":"YES"},
"cardPaymentData":{
"operation":"REQUEST_TOKEN_AND_AUTHORIZE",
"amt":"10.53",
"tipAmt":"1.00",
"ecommerce":"ECOMM",
"frequency":"WEEKLY",
"numberOfPymts":"2"}
}

Sample JSON Credit Card Payment Request using Contact ID:

									    {
"action":"card_contact_on_file_tran",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"958302",
"cardData":{
"cardName":"Don",
"cardNbr":"4388345609871234",
"expMonth":"2",
"expYear":"2020",
"cvv2":"999",
"cardZipcode":"12345",
"cardPresent":"NO",
"saveCard":"YES"},
"cardPaymentData":{
"operation":"REQUEST_TOKEN_AND_AUTHORIZE",
"amt":"10.53",
"tipAmt":"1.00",
"ecommerce":"ECOMM",
"frequency":"WEEKLY",
"numberOfPymts":"2"}
}

Sample JSON Credit Card Payment Request using Contact ID & Card ID:

									    {
"action":"card_on_file_tran",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"958302",
"cardId":"740219",
"cardPaymentData":{
"operation":"REQUEST_TOKEN_AND_AUTHORIZE",
"amt":"10.53",
"tipAmt":"1.00",
"ecommerce":"ECOMM",
"frequency":"WEEKLY",
"numberOfPymts":"2"}
}

Sample JSON Response:

											{
"rspCode":"0",
"rspText":"L2P_OK",
"authCode":"158903",
"authAmt":"170.00",
"requestId":"F87C7D9E",
"pymtId":"D45E4C8A"
}

Swipe Credit Card

This method allows you to make a swipe credit card payment by submitting login parameters ( contain- ing login authentication information to linked2pay ) , L2PContactDataType ( containing contcat information ) , cardData ( containing all the required information about swipe card ) and pymtData ( contains all the information about payment you want to make ). linked2pay will then process a credit card transaction based on your request.

If you would like to try our JSON-oriented web Service feature for swipe card payment,

To try our JSON-oriented web Service feature to make a Swipe Credit Card Payment, fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.

























Phone

Mobile Phone


























Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactData L2PContactDataType It contains all the required information about the contact.
(Required)
cardData L2PSwipeEntryType This represents swipe credit card data for swipe credit card transaction.
(Required)
pymtData L2pCreditCardPymtReqType This represents a manual credit Card payment request.
(Required)

If you are processing a transaction for an existing contact, just provide th contactId for the specfic contact rather than providing all the info again.

If you would like to try our JSON-oriented web Service feature for a swipe card payment using Contact ID,

To try our JSON-oriented web Service feature to make a Swipe Credit Card Payment using Contact ID, fill the following form and click Show JSON.
































Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
contactId Integer Unique ID of the Contact.
(Required)
cardData L2PSwipeEntryType This represents credit card data for a manual entry credit card transaction.
(Required)
pymtData L2pCreditCardPymtReqType This represents a manual credit Card payment request.
(Required)
L2pCreditCardPymtReqType

L2pCreditCardPymtReqType is a complex type that contaims all the payment information. This represents linked2pay credit card payment request.

Component Type Description
Operation string Two type of operations can be performed on credit card : 1)Authorize, 2)Charge
(Required)
Amt amtType The payment amount requested.
(Required)
TipAmt amtType Tip amount added to the requested amount.
Ecommerce eCommerceType Represents the e-commerce type. Acceptable parameters here are: 1) Mobile, 2) Retail, and 3) ecommerce.
(Required)
Frequency frequencyType Frequency of the transction.
NumberOfPymts Integer Number of Payments.
Returns

A transactionResponse element has the structure defined by the following table:

Component Type Description
RspCode string Response code.
RspText string Response description.
AuthCode string Authorization Code. A unique identification number assigned to each of your linked2pay Transaction Requests.
AuthAmt amtType Total Amount paid for your request.
RequestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
PymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
Arguments
  • amtType Restricting string

    Restrictions
    1. The number of digits to the right of the decimal point must be less than or equal to 2.
    2. The number of digits in the value must be less than or equal to 12.
    3. The value must be greater than or equal to 0.

  • frequencyType string

    Enumeration
    NONE: No Frequency
    WEEKLY: Once in a Week
    MONTHLY: Once in a Month
    QUARTERLY: Once in 3 Months
    YEARLY: Once a year
    DAILY: Everyday
    BIWEEKLY: Every 2 weeks

  • eCommerceType Restricting string

    Enumeration
    ECOMM: Transactions that your customer will initiate.
    MOTO: Transactions you will initiate through linked2pays Virtual Terminal.
    RETAIL: Transactions you will initiate via linked2pays Mobile App.

  • transNumberType Restricting string

    Restrictions
    Maximum Length of value can be equal to 8.

Swipe Credit Card

Sample JSON Request for Contact Swipe Payment:

									    {
"action":"swipe_tran",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactData":{
"companyName":"",
"firstName":"john",
"lastName":"cena",
"address1":"123 Wwf St,",
"address2":"",
"city":"Oxnard",
"state":"CA",
"zip":"12345",
"phone":"111-111-11111",
"mobilePhone":"",
"email":"abc@xyz.com",
"externalId":"346546657"},
"swipeData":{
"track1":"B4388345609871234^John Tester1^15101011234567890123",
"track2":"4388345609871234=15101011234567890123",
"cvv2":"999",
"cardZipcode":"12345",
"saveCard":"YES"},
"cardPaymentData":{
"operation":"AUTHORIZE_TOKEN_ONLY",
"amt":"10.53",
"tipAmt":"1.00",
"ecommerce":"ECOMM",
"frequency":"WEEKLY",
"numberOfPymts":"2"}
}

Sample JSON Request for Swipe Payment using Contact ID:

									    {
"action":"swipe_contact_on_file_tran",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":"7493027",
"swipeData":{
"track1":"B4388345609871234^John Tester1^15101011234567890123",
"track2":"4388345609871234=15101011234567890123",
"cvv2":"999",
"cardZipcode":"12345",
"saveCard":"YES"},
"cardPaymentData":{
"operation":"REQUEST_TOKEN_AND_AUTHORIZE",
"amt":"10.53",
"tipAmt":"1.00",
"ecommerce":"ECOMM",
"frequency":"WEEKLY",
"numberOfPymts":"2"}
}

Sample JSON Response:

											{
"rspCode":"0",
"rspText":"L2P_OK",
"authCode":"158903",
"authAmt":"170.00",
"requestId":"F87C7D9E",
"pymtId":"D45E4C8A"
}

ACH Debit

This method allows you to make an ACH debit request by submitting login parameters ( containing login authentication information to linked2pay ), AccountIdentifier( containing Contact ID & Account ID ) and AchData. linked2pay will then process an ACH transaction based on your request.

If you would like to try our JSON-oriented web Service feature for ACH Debit,

To try our JSON-oriented web Service feature for ACH Debit please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.




















Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
accountIdentifier AccountIdentifier Account Identifier contains Contact ID and Account ID. Each ACH account is identified by contactId and accountId.
(Required)
achData L2pAchDebitReqType It contains all the required information about the ACH data.
(Required)

L2pAchDebitReqType

L2pAchDebitReqType is passed as an parameter to achDebit metod. This represents linked2pay debit payment request.

Component Type Description
Amt amtType The payment amount requested.
(Required)
TipAmt amtType Tip amount added to the requested amount.
Frequency frequencyType Frequency of the transction.
NumberOfPymts Integer Number of Payment.
SameDayAch booleanType If cutomer wants Same Day ACH or not.
Returns

A transactionResponse element has the structure defined by the following table:

Component Type Description
RspCode string Response code.
RspText string Response description.
AuthCode string Authorization Code. A unique identification number assigned to each of your linked2pay Transaction Requests.
AuthAmt amtType Total Amount paid for your request.
RequestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
PymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
Arguments
  • amtType Restricting string

    Restrictions
    1. The number of digits to the right of the decimal point must be less than or equal to 2.
    2. The number of digits in the value must be less than or equal to 12.
    3. The value must be greater than or equal to 0.

  • frequencyType string

    Enumeration
    NONE: No Frequency
    WEEKLY: Once in a Week
    MONTHLY: Once in a Month
    QUARTERLY: Once in 3 Months
    YEARLY: Once a year
    DAILY: Everyday
    BIWEEKLY: Every 2 weeks

  • booleanType Restricting string

    Restrictions
    Length of value must be equal to 1.
    Enumeration
    Y-yes , N-no

  • transNumberType Restricting string

    Restrictions
    Maximum Length of value can be equal to 8.

ACH Debit

Sample JSON Request:

									    {
"action":"ach_debit",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"accountIdentifier":{
"contactId":"234567",
"accountId":"375954"},
"achDebitData":{
"amt":"10.53",
"tipAmt":"1.00",
"frequency":"WEEKLY",
"numberOfPymts":"2"}
}

Sample JSON Response:

											{
"rspCode":"0",
"rspText":"L2P_OK",
"authCode":"158903",
"authAmt":"170.00",
"requestId":"F87C7D9E",
"pymtId":"D45E4C8A"
}

ACH Credit

This method allows you to make an ACH credit request by submitting login parameters ( containing login authentication information to linked2pay ), AccountIdentifier ( containing Contact ID & Account ID ) and AchData. linked2pay will then process an ACH transaction based on your request.

If you would like to try our JSON-oriented web Service feature for ACH Credit,

To try our JSON-oriented web Service feature for ACH Credit please fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.




















Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
accountIdentifier AccountIdentifier Account Identifier contains Contact ID and Account ID. Each ACH account is identified by contactId and accountId.
(Required)
achData L2pAchCreditReqType It contains all the required information about the ACH data.
(Required)

L2pAchCreditReqType

L2pAchCreditReqType is passed as an parameter to achCredit metod. This represents linked2pay credit payment request.

Component Type Description
Amt amtType The payment amount requested.
(Required)
TipAmt amtType Tip amount added to the requested amount.
Frequency frequencyType Frequency of the transction.
NumberOfPymts Integer Number of Payment.
SameDayAch booleanType If cutomer wants Same Day ACH or not.
Returns

A transactionResponse element has the structure defined by the following table:

Component Type Description
RspCode string Response code.
RspText string Response description.
AuthCode string Authorization Code. A unique identification number assigned to each of your linked2pay Transaction Requests.
AuthAmt amtType Total Amount paid for your request.
RequestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
PymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
Arguments
  • amtType Restricting string

    Restrictions
    1. The number of digits to the right of the decimal point must be less than or equal to 2.
    2. The number of digits in the value must be less than or equal to 12.
    3. The value must be greater than or equal to 0.

  • frequencyType string

    Enumeration
    NONE: No Frequency
    WEEKLY: Once in a Week
    MONTHLY: Once in a Month
    QUARTERLY: Once in 3 Months
    YEARLY: Once a year
    DAILY: Everyday
    BIWEEKLY: Every 2 weeks

  • booleanType Restricting string

    Restrictions
    Length of value must be equal to 1.
    Enumeration
    Y-yes , N-no

  • transNumberType Restricting string

    Restrictions
    Maximum Length of value can be equal to 8.

ACH Credit

Sample JSON Request:

									    {
"action":"ach_credit",
"login":{
"authenticationMethod":"FINGERPRINT",
"login":"john11",
"fingerprint":{
"sequence":"812004",
"timesatmp":"1538503944",
"fingerprint":"DD9617285B0CE443C714EEC08F07E3A1"}
},
"accountIdentifier":{
"contactId":"234567",
"accountId":"375954"},
"achCreditData":{
"amt":"10.53",
"tipAmt":"1.00",
"frequency":"WEEKLY",
"numberOfPymts":"2"}
}

Sample JSON Response:

											{
"rspCode":"0",
"rspText":"L2P_OK",
"authCode":"158903",
"authAmt":"170.00",
"requestId":"F87C7D9E",
"pymtId":"D45E4C8A"
}

Refund Payment

This method allows you to refund a payment by submitting login parameters(containing login authentication information to linked2pay) and Payment Identifier. Linked2pay will then refund a payment based on your request

If you would like to try our JSON-oriented web Service feature to refund a payment,

To try our JSON-oriented web Service feature to refund a payment, fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.














Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
pymtIdentifier PymtIdentifier Payment Identifier represents Payment ID and Request ID. Each Credit Card & ACH Transaction has it's own Payment ID and Request ID.
(Required)
refundData RefundDataType RefundDataType contains amount that needs to be refunded.
PymtIdentifier

PymtIdentifier is a complx type that represents the Request ID & Payment ID for your transaction.

Component Type Description
requestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
(Either Request ID or Payment ID is Required.)
pymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
(Either Request ID or Payment ID is Required.)
RefundDataType

RefundDataType is a complx type that contains the amount that you want to get refund.

Component Type Description
Amount BigDecimal Amount that you want to get refunded.

Returns

A transactionResponse element has the structure defined by the following table:

Component Type Description
RspCode string Response code.
RspText string Response description.
AuthCode string Authorization Code. A unique identification number assigned to each of your linked2pay Transaction Requests.
AuthAmt amtType Total Amount paid for your request.
RequestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
PymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
Arguments
  • amtType Restricting string

    Restrictions
    1. The number of digits to the right of the decimal point must be less than or equal to 2.
    2. The number of digits in the value must be less than or equal to 12.
    3. The value must be greater than or equal to 0.

  • transNumberType Restricting string

    Restrictions
    Maximum Length of value can be equal to 8.

Refund Payment

Sample JSON Request:

									    {
"action":"refund_pymt",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"pymtIdentifier":{
"requestId":"GHJ58C99",
"pymtId":"FGH56US8"},
"refundData":{
"amount":"457.00"}
}

Sample JSON Response:

											{
"rspCode":"0",
"rspText":"L2P_OK",
"authCode":"158903",
"authAmt":"170.00",
"requestId":"F87C7D9E",
"pymtId":"D45E4C8A"
}

Void Payment

This method allows you to void payment by submitting login parameters(containing login authentication information to linked2pay) and Payment Identifier. Linked2pay will then void a payment based on your request.

If you would like to try our JSON-oriented web Service feature to void a payment,

To try our JSON-oriented web Service feature to void a payment, fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.












Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
pymtIdentifier PymtIdentifier Payment Identifier represents Payment ID and Request ID. Each Credit Card & ACH Transaction has it's own Payment ID and Request ID.
(Required)
PymtIdentifier

PymtIdentifier is a complx type that represents the Request ID & Payment ID for your transaction.

Component Type Description
requestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
(Either Request ID or Payment ID is Required.)
pymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
(Either Request ID or Payment ID is Required.)

Returns

A transactionResponse element has the structure defined by the following table:

Component Type Description
RspCode string Response code.
RspText string Response description.
AuthCode string Authorization Code. A unique identification number assigned to each of your linked2pay Transaction Requests.
AuthAmt amtType Total Amount paid for your request.
RequestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
PymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
Arguments
  • amtType Restricting string

    Restrictions
    1. The number of digits to the right of the decimal point must be less than or equal to 2.
    2. The number of digits in the value must be less than or equal to 12.
    3. The value must be greater than or equal to 0.

  • transNumberType Restricting string

    Restrictions
    Maximum Length of value can be equal to 8.

Void Payment

Sample JSON Request:

									    {
"action":"void_pymt",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"pymtIdentifier":{
"requestId":"GHJ58C99",
"pymtId":"FGH56US8"}
}

Sample JSON Response:

											{
"rspCode":"0",
"rspText":"L2P_OK",
"authCode":"158903",
"authAmt":"170.00",
"requestId":"F87C7D9E",
"pymtId":"D45E4C8A"
}

Lookup

Thru the L2P Transaction WebService not only will you have the ability to submit ACH and Credit Card transactions but you will also have the capability of running a lookup function that will help you track the transaction(s) history, Boarded Contact, Registered Account and Credit Cards.

Lookup a Contact

This method allows you to lookup a contact by submitting login parameters ( containing login authenti- cation information to linked2pay ) and Contact ID. linked2pay will then process a lookup contact based on your request.

If you would like to try our JSON-oriented web Service feature to lookup a contact,

To try our JSON-oriented web Service feature to lookup a contact, fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.










Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required).
contactId Integer Contact Id generated at the time of boarding the contact.
(Required).
Returns

Returns a Contact Data if a valid Contact identifier was provided.If the request is not valid then it returns a negative return code with error.

Component Type Description
companyName string Name of the company or dba.
firstName string First name of client.
lastName string Last Name of client.
email string Email address of the customer, used to send payment receipts, etc.
phone string Phone number of the customer, accepted formats include: (123) 456-7890, 123-456-7890, and 1234567890.
mobile string Mobile Number of client.
address1 string First line of address of client.
address2 string Second line of address of client.
city string City of client.
state string State of the client.
zip string Zipcode of the area.
externalId string external ID of the client.
paymentMethods PaymentMethodData It contains payment methods list for this contact.
PaymentMethodData

PaymentMethodData is a complex type that contaims pymtMethodType and pymtMethodId.

Component Type Description
pymtMethodType String Type of payment method used.
Examples:
CC -> Credit card payment method
ACH -> ACH payment method
pymtMethodId Integer Payment method Id for your payment.

Lookup a Contact

Sample JSON Request:

										{
"action":"lookup_contact",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"contactId":11078656
}

Sample JSON Response:

										{
"returnCode":"0",
"contactData":{
"companyName":"",
"firstName":"john",
"lastName":"cena",
"address1":"123 Wwf St,",
"address2":"",
"city":"Oxnard",
"state":"CA",
"zip":"12345",
"phone":"111-111-11111",
"mobilePhone":"",
"email":"abc@xyz.com",
"externalId":"346546657",
"paymentMethods":{
"paymentMethodData":[
{"pymtMethodType":"CC", "pymtMethodId":27},
{"pymtMethodType":"CC", "pymtMethodId":41},
{"pymtMethodType":"ACH", "pymtMethodId":933},
{"pymtMethodType":"CC", "pymtMethodId":1005},
{"pymtMethodType":"ACH", "pymtMethodId":1367},
{"pymtMethodType":"ACH", "pymtMethodId":1389},
{"pymtMethodType":"ACH", "pymtMethodId":1689},
{"pymtMethodType":"CC", "pymtMethodId":2401}
]
}
}
}

Lookup a Payment

This method allows you to lookup a payment by submitting login parameters ( containing login authen- tication information to linked2pay ) and Payment Identifier. Linked2pay will then process lookup on a payment based on your request.

If you would like to try our JSON-oriented web Service feature to lookup a contact,

To try our JSON-oriented web Service feature to lookup a payment, fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.












Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required).
pymtIdentifier PymtIdentifier Payment Identifier represents Payment ID and Request ID. Each Credit Card & ACH Transaction has it's own Payment ID and Request ID.
(Required).
PymtIdentifier

PymtIdentifier is a complx type that represents the Request ID & Payment ID for your transaction.

Component Type Description
requestId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment request.
(Either Request ID or Payment ID is Required.)
pymtId transNumberType Unique 8 digit alphanumeric Identification Number assigned to your payment.
(Either Request ID or Payment ID is Required.)
Returns

Returns the details of your requested payment if valid Payment Identifier is provided. If the request is not valid then it returns a negative return code with error.

Component Type Description
PaymentId String Unique Payment Identification Number assigned to your payment.
RequestId String Unique 8 digit alphanumeric Identification Number assigned to your payment request.
ReferenceId String Unique Reference Identification Number assigned to your customer.
ContactId Integer Unique Identification Number of the contact.
FirstName String First Name of Contact.
LastName String Last Name of contact.
Type String Represents the type of transaction made.
Status String Status of the payment request.
Amount amtType Dollar amount of the payment request.
CreatedDate String Created Date is when the payment request is first created by the user
EffDate String Date in which funds are funded to deposit account.
ReturnDate String Return date is when the transaction was reversed, so the amount was taken back out of the account.
ReturnCode String
Arguments
  • amtType Restricting string

    Restrictions
    1. The number of digits to the right of the decimal point must be less than or equal to 2.
    2. The number of digits in the value must be less than or equal to 12.
    3. The value must be greater than or equal to 0.

  • transNumberType Restricting string

    Restrictions
    Maximum Length of value can be equal to 8.

Lookup a Payment

Sample JSON Request:

									    {
"action":"lookup_payment",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"pymtIdentifier":{
"requestId":"GHJ58C99",
"pymtId":"FGH56US8"}
}

Sample JSON Response:

										{
"returnCode":"0",
"rows":{
"PymyLookupData":{
"paymentId":"FGH56US8",
"requestId":"GHJ58C99",
"referenceId":"47890383",
"contactId":"119065",
"firstName":"John",
"lastName":"Cena",
"type":"ACH",
"status":"Pending",
"amount":"200.64",
"createdDate":"10/23/2018",
"effDate":"10/26/2018",
"returnDate":"10/28/2018",
"returnCode":"0"}
}
}

Lookup a Card

This method allows you to lookup a card by submitting login parameters ( containing login authentica- tion information to linked2pay ) and cardIdentifier ( containing Card ID & Contact ID ). linked2pay will then return the card data based on your request.

If you would like to try our JSON-oriented web Service feature to lookup a card,

To try our JSON-oriented web Service feature to lookup a card, fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.












Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required).
CardIdentifier cardIdentifier Account Identifier contains Contact ID and Account ID. Each ACH account is identified by contactId and accountId.
(Required).
Card Identifier

Object passed as parameter of lookupCard method. This parameter contains contactId and cardId information of the card.


Component Type Description
ContactId Integer Each contact has it's own unique ID. It is generated at the time you create a contact.
(Required)
CardId Integer Each Card has it's own unique ID. It is generated at the time you register a card.
(Required)
Returns

Returns a positive code and card data if a valid Card identifier was provided. If the request is not valid then it returns a negative return code with error.

Component Type Description
cardName String Name on the card.
cardType String Type of the card.
cardNbr String Number on the Card.
expMonth Integer Expiration Month of the Card.
expYear Integer Expiration Year of the card.
Primary Integer 0: Not a Primary/Main Account.
1: Primary/Main Account.
Enrolled Integer 0: Card has not been tokenized
1: Card has been tokenized.

Lookup a Card

Sample JSON Request:

										{
"action":"lookup_card",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"cardIdentifier":{
"contactId":"234567",
"cardId":"4388345609871234"}
}

Sample JSON Response:

										{
"returnCode":"0",
"cardData":{
"cardName":"John Cena",
"cardType":"Visa",
"cardNbr":"4388345609871234",
"expMonth":"02",
"expYear":"2020",
"primary":"1",
"Enrolled":"1"}
}

Lookup an Account

This method allows you to lookup an account by submitting login parameters ( containing login authen- tication information to linked2pay ) and accountIdentifier ( containing Account ID & Contact ID ). linked2pay will then return account data based on your request.

If you would like to try our JSON-oriented web Service feature to lookup an account,

To try our JSON-oriented web Service feature to lookup an account, fill the following form and click Show JSON.

To see the Response JSON, go to the JSON Request URL returned by this form.












Component Type Description
auth L2pAuthenticationData Data object that contains authentication information based on user's choice of authentication method.
(Required)
AccountIdentifier accountIdentifier Account Identifier contains Contact ID and Account ID. Each ACH account is identified by contactId and accountId.
(Required)
Account Identifier

Object passed as parameter of lookupAch method. This parameter contains contactId and accoutnId information of the account.


Component Type Description
ContactId Integer Each contact has it's own unique ID. It is generated at the time you create a contact.
(Required)
AccountId Integer Each account has it's own unique ID. It is generated at the time you register an account. (Required)
Returns

Returns Account Data if a valid Account identifier was provided.If the request is not valid then it returns a negative return code with error.

Component Type Description
routingNumber routingNumberType Routing number of the bank account.
accountNumber accountNumberType Account number of the bank account.
AccountType accountType Type of the bank account, acceptable values are PERSONAL or BUSINESS.
DepositType depositType Type of account the deposit is to be made to, acceptable values are SAVINGS or CHECKING.
AuthorizeBy authorizeBy Represents the manner in which you obtained authorization for this transaction request. Acceptable parameters here are: 1) Online, 2) Written, or 3) Telephone.
primary Integer 0: Not a Primary/Main Account.
1: Primary/Main Account.
Arguments
  • routingNumberType Restricting string

    Restrictions
    1. Length of value must be less than or equal to 9.
    2. Value must match the following pattern:
    ^((0[0-9])|(1[0-2])|(2[1-9])|(3[0-2])|(6[1-9])|(7[0-2])|80)([0-9]{7})$

  • accountNumberType Restricting string

    Restrictions
    1. Length of value must be less than or equal to 17.
    2. Value must match the following pattern: ^[0-9]*

  • accountType Restricting string

    Enumeration
    PERSONAL- Personal Bank Account
    BUSINESS- Business Bank Account.

  • depositType Restricting string

    Enumeration
    SAVINGS- Saving Bank Account
    CHECKINGS- Checking Bank Account.

  • authorizeBy Restricting String

    Enumeration
    ONLINE
    WRITTEN
    TELEPHONE

Lookup an Account

Sample JSON Request:

										{
"action":"lookup_ach",
"login":{
"authenticationMethod":"KEY",
"login":"john11",
"password":"987654321john"},
"accountIdentifier":{
"contactId":"234567",
"accountId":"4388345609871234"}
}

Sample JSON Response:

										{
"returnCode":"0",
"accountData":{
"routingNumber":"121000001",
"accountNumber":"10006000800000405",
"authorizeBy":"ONLINE",
"acountType":"BUSINESS",
"depositType":"CHECKING",
"primary":"1"}
}

Errors

Error Code Description
-1 Database Exception.
-2 User does not exist.
-3 User access Denied.
-4 Request does not exist.
-5 Request Access Denied.
-6 No Requests found.
-7 Contact does not exist.
-8 Email Failed.
-9 Contact Opt-out.
-10 Email is too long.
-11 Payment URL missing.
-12 System Error.
-13 Header does not exist.
-14 No Attatchment.
-15 No Headers found.
-16 No widgets found.
-17 Comapny Name is too long.
-18 Last Name is not present.
-19 Last Name is too long.
-20 First Name is not present.
-21 First Name is too long.
-22 Email is Invalid.
-23 Email is not present.
-24 Amount is not present.
-25 CC invalid.
-26 CC too long.
-29 Phone Number is too long.
-33 Address1 is not present.
-34 Address1 is too long.
-35 Address2 is too long.
-37 City name is too long.
-38 State not present.
-39 State too long.
-40 Zip not present.
-41 Zip too long.
-42 Zip Invalid.
-51 Email in use.
-52 Contact ID Email is not present.
-53 Service is not enabled.
-54 Unsupported Authentication Method.
-55 Web Services are not Enabled.
-56 Fingerprint is Expired.
-57 Fingerprint is Invalid.
-58 Key is Invalid.
-59 Password is Invalid.
-62 Web services not affiliate.
-63 No Primary ACH account.
-401 Contact Processing Error.
-402 Company Name & Contact Name is Missing.
-403 Invalid State.
-404 Mobile Phone is too long.
-405 External ID is too Long.
-406 Bank Account Processing Error.
-407 Invalid Route Number.
-408 Account Number is Required.
-409 Account Number is too long.
-410 Account Type is Required.
-411 Deposit Type is Required.
-412 Account does not exist OR Not belongs to Contact.
-413 Contact ID is Required.
-414 Account ID is Required.
-415 Authorize By is Required.
-416 Lookup Error.
-417 Card does not exist or belong to contact.
-418 Payment does not exist or belong to client.
-419 Contact does not exist or belong to client.
-420 Card Name is required.
-421 Card Name is too long.
-422 Card Number is required.
-423 Card Number is too long.
-424 Card exp year is invalid.
-425 Card exp month is invalid.
-426 Contact does not exist or belong to client.
-427 Cw2 is required.
-428 Card zipcode is required.
-429 Card zipcode is too long.
-430 Card ID is required.
-431 Request Id is required.
-432 Request Id is 8 char long.
-433 Pymt Id is required.
-434 Pymt id is 8 char long.
-435 Contact Data is not provided.
-436 Account Data is not provided.
-437 Card Data is not provided.
-438 Request does not exist or not belong to the client.
-439 Request has multiple payments.
-440 Request has no payments.
-441 Request ID or Payment ID is required.