Overview

Date Updated: 02/24/2025

Addition of a new APIs to process ACH Debit transaction.

Date Updated: 01/14/2025

Addition of a new API to generate Hosted Pay Page URL.

This API allows merchants to seamlessly generate a hosted payment page URL for facilitating transactions. With this new capability, merchants can offer their customers a streamlined and secure payment experience.

Date Updated: 01/08/2025

The Sale and Authorize Request has been enhanced to include the optional "LocationId" parameter. This addition allows merchants to process transactions at a specific location.

If the "LocationId" parameter is not included in the request, the transaction will automatically be processed at the default location.

The default location refers to the location that is automatically created and associated with the merchant during their onboarding process in PaymentLync.

Impact

No breaking changes have been introduced; existing functionality remains unaffected.

Date Updated: 12/13/2024

A new field "BIN" has been added in the response of GetDisputedTransaction API.

A Bank Identification Number (BIN) is the first six to eight digits of the long number on a credit, debit, or prepaid card.

Impact

No breaking changes have been introduced; existing functionality remains unaffected.

Date Updated: 10/07/2024

An update to the PaymentLync Transaction APIs was released to the production environment on 10/07/2024.

This release adds the "Currency" support to the Sale, Auth and ProfileSale transaction APIs.

New Key: Currency

This key accepts the three-letter ISO currency code which specifies the currency in which the transaction is being processed.

Currency Codes: USD, CAD, MXN, EUR, GBP, etc. See complete list of supported currency codes

Default Behavior: If the "Currency" key is not included in the API request, the transaction will default to USD.

Date Updated: 04/16/2024

An update to the PaymentLync Transaction APIs was released to the production environment on 04/16/2024.

This release includes the following enhancements to support 3D Secure (3DS) transactions:

1. New Key: Is3DS

This key indicates whether 3DS authentication is required for a transaction.

Possible Values: True or False.

2. New Key: ReturnUrl

This key is used to update the transaction status following 3DS authentication, ensuring the transaction flow is completed securely.

Date Updated: 12/08/2023

An update to the PaymentLync Transaction APIs was released to the production environment on 12/08/2023.

This release includes the following updates:

  • Updated the API success status message to OK
  • Concatenated the Stripe's response in status message of declined transactions.

Transaction

Sale

This API allows you to process a credit card sale (authorize+capture) transaction.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Sale
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo: CardHolderName String True The name of the cardholder.
CreditCardInfo: ExpMonth Int True The expiry month of the card.
CreditCardInfo: ExpYear Int True The expiry year of the card.
CreditCardInfo: CVV Int False The security code of the card.
CreditCardInfo: CardNumber String True The card number
Amount Decimal True The requested amount
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.
Address String False The first address line of the customer.
Address2 String False The second address line of the customer.
City String False The city of the customer.
State String False The state of the customer.
ZipCode String False The zip code of the customer.
Country String False The country of the customer.
Company String False The company of the customer.
Email String False The email address of the customer.
CustomerName String True The name of the customer.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
RedirectURL String The Stripe redirect URL to complete the 3D Secure (3DS) transaction.

Authorize

This API allows you to process an Auth-Only transaction.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Authorize
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo: CardHolderName String True The name of the cardholder.
CreditCardInfo: ExpMonth Int True The expiry month of the card.
CreditCardInfo: ExpYear Int True The expiry year of the card.
CreditCardInfo: CVV Int False The security code of the card.
CreditCardInfo: CardNumber String True The card number
Amount Decimal True The requested amount
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.
Address String False The first address line of the customer.
Address2 String False The second address line of the customer.
City String False The city of the customer.
State String False The state of the customer.
ZipCode String False The zip code of the customer.
Country String False The country of the customer.
Company String False The company of the customer.
Email String False The email address of the customer.
CustomerName String True The name of the customer.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
RedirectURL String The Stripe redirect URL to complete the 3D Secure (3DS) transaction.

Capture

This API allows you to capture an Auth-Only transaction. You need to pass the transaction ID of an original Auth-Only transaction in the capture request.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Capture
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
TransactionId Int True The identifier of the transaction.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalChargeID String The original charge ID.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
RedirectURL String The Stripe redirect URL to complete the 3D Secure (3DS) transaction.

Cancel Authorize

This API allows you to cancel an Auth-Only transaction. You need to pass the transaction ID of an original Auth-Only transaction in the cancel request.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/CancelPayment
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
TransactionId Int True The identifier of the transaction.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
RedirectURL String The Stripe redirect URL to complete the 3D Secure (3DS) transaction.

Void

This API allows you to void (reverse) a sale transaction. You need to pass the transaction ID of an original sale transaction in the void request.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Void
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Description
TransactionId Int The identifier of the transaction.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
RedirectURL String The Stripe redirect URL to complete the 3D Secure (3DS) transaction.

Refund

This API allows you to process a refund transaction against the sale. You need to pass the transaction ID of an original sale transaction in the refund request and the amount to refund.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Refund
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
RedirectURL String The Stripe redirect URL to complete the 3D Secure (3DS) transaction.

Save Card

This API allows you to process a sale (authorize+capture) transaction and store the card as well. You need to pass the key “IsCreateProfile = true” in the sale API request and it will return the Customer Token in response which will be used for profile (token) sale.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Sale
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo: CardHolderName String True The name of the cardholder.
CreditCardInfo: ExpMonth Int True The expiry month of the card.
CreditCardInfo: ExpYear Int True The expiry year of the card.
CreditCardInfo: CVV Int False The security code of the card.
CreditCardInfo: CardNumber String True The card number
Amount Decimal True The requested amount
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
IsCreateProfile String False “True” or “False” If you want to save the card then set it “True” otherwise “False”
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.
Address String False The first address line of the customer.
Address2 String False The second address line of the customer.
City String False The city of the customer.
State String False The state of the customer.
ZipCode String False The zip code of the customer.
Country String False The country of the customer.
Company String False The company of the customer.
Email String False The email address of the customer.
CustomerName String True The name of the customer.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Token String The unique token of the customer.
Discount Int The discount amount applied.
BinLookUp: CardID String The first six digits of card.
BinLookUp: Label String The name of card brand.
BinLookUp: Bank String The name of card issuer bank.
BinLookUp: CardType String The type of card.
BinLookUp: Country String The country of card issuer.
BinLookUp: Website String The card brand website.

Profile (Token) Sale

This API allows you to process a sale (authorize+capture) transaction using the stored card (profile sale). You need to pass the Stripe Customer ID in Token key.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/SaleProfile
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
Token String True The unique token of the customer
Amount Decimal True The requested amount
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
BinLookUp: CardID String The first six digits of card.
BinLookUp: Label String The name of card brand.
BinLookUp: Bank String The name of card issuer bank.
BinLookUp: CardType String The type of card.
BinLookUp: Country String The country of card issuer.
BinLookUp: Website String The card brand website.

Save Card Without Charge

This API allows you to save the card without actually charge it. The API returns the Token in response that can be used for processing profile transaction.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/PreAuthToken
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo: CardHolderName String True The name of the cardholder.
CreditCardInfo: ExpMonth Int True The expiry month of the card.
CreditCardInfo: ExpYear Int True The expiry year of the card.
CreditCardInfo: CVV Int False The security code of the card.
CreditCardInfo: CardNumber String True The card number
Address String False The first address line of the customer.
Address2 String False The second address line of the customer.
City String False The city of the customer.
State String False The state of the customer.
ZipCode String False The zip code of the customer.
Country String False The country of the customer.
Company String False The company of the customer.
Email String False The email address of the customer.
CustomerName String True The name of the customer.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”
BinLookUp: CardID String The first six digits of card
BinLookUp: Label String The name of card brand
BinLookUp: CardType String The type of card
BinLookUp: Country String The country of card issuer
BinLookUp: Website String The card brand website
Token String The unique token of the customer

Transaction By ID

This GET Transaction API allows you to retrieve details of a specific transaction using its unique identifier (TransactionID). It has been designed to fetch transaction-related data.

‌ ‌ ‌ Service

Environment Production
Method GET
End Point https://api.paymentlync.com/api/Transaction/
GetTransactionById/[TransactionID]
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
CustomerName String The name of the customer.
Amount Decimal The amount of the transaction.
SurchargeFee Decimal The surcharge fee of the transaction.
StripeFee Decimal The Stripe fee of the transaction.
PaymentlyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CustomerEmail String The email of the customer.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
AccountType String The type of the account.
ParentTransID Int The identifier of the parent transaction.
Stripe String The Stripe details of the transaction.
SubscriptionId Int The identifier of the subscription.
LocationId Int The identifier of the merchant’s location.
LocationName String The name of the location.
ProcessorType String The type of the processor.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
MerchantName String The name of the merchant.
UserId Int The identifier of the user.
TransSource Int The source of the transaction.
RemainingAmount Decimal The remaining amount of the transaction.
ReverseRemainingAmount Decimal The reverse remaining amount of the transaction.
RequestData String The request data.
Custom6 String The custom field 6.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
Discount Decimal The discount amount applied.
IsVoid Boolean Indicates if the transaction is void.
IsRefund Boolean Indicates if the transaction is a refund.
HasChild Boolean Indicates if the transaction has a child transaction.
ReturnUrl String The ReturnUrl key specifies the merchant's API endpoint for updating transaction status, ensuring synchronization between merchant and paymentlync
ThreeDSecure Object The 3DSecure details.
Authenticated Boolean Indicates if the authentication was successful.
Authentication_flow String Specifies the flow used (e.g., challenge).
result String Outcome of the 3DS process (e.g., authenticated).
transaction_id String Unique identifier for the 3DS transaction.
version String Version of the 3DS protocol used.
IsDeleted Boolean Indicates if the transaction is deleted.
DeletedBy Int The identifier of the user who deleted the transaction.
InsertedBy Int The identifier of the user who inserted the transaction.
InsertedOn Date/Time The date and time when the transaction was inserted.
UpdatedBy Int The identifier of the user who updated the transaction.
UpdatedOn Date/Time The date and time when the transaction was updated.

ACH Debit

Steps:

1. Create Token

  • The user enters their bank account details (account number, routing number, account type).
  • The system encrypts the data and sends a request to generate a customer token.
  • A secure token is returned and stored for future ACH transactions.

2. Verify Bank Account
  • The system initiates two small deposits (micro-deposits) into the customer's bank account.
  • The customer checks their bank statement and notes the deposit amounts.
  • The customer enters these amounts in the system for verification.
  • If the amounts match, the bank account is verified and ready for transactions.

3. Make ACH Transaction
  • The system processes the ACH debit transaction using the Customer ID.

Create Token

This API generates a secure token for a customer and bank account to be used in ACH transactions.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/
CreateBankAccountToken
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CustomerName String True The name of the customer.
Email String True The email address of the customer..
Country String False The country of the customer.
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
AccountHolderName String True The name of the account holder.
AccountHolderType Int True The type of the account holder.
1= Company
2 = Individual
RoutingNumber String True The routing number of the bank account.
AccountNumber String True The account number of the bank account.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “Success”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Field Type Description
CustomerId Int The identifier of the customer.
MerchantId Int The identifier of the merchant.
ResellerId Int The identifier of the reseller.
CustomerName String The name of the customer.
Email String The email address of the customer.
Country String The country of the customer.
Currency String The currency code
(USD / CAD / MXN / EUR / GBP etc.)
AccountHolderName String The name of the account holder.
AccountHolderType Int The type of the account holder.
1= Company
2 = Individual
RoutingNumber String The routing number of the bank account.
AccountNumber String The account number of the bank account.
CustomerToken String The unique token of the customer.
BankAccountToken String The token of the bank account.
BankAccountId String The identifier of the bank account.
InsertedBy Int The identifier of the user who inserted the record.
InsertedOn String The timestamp when the record was inserted.
IsVerified Boolean Indicates if the bank account is verified.

Verify Bank Account

This API confirms the validity of a bank account by verifying micro-deposit amounts.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/
VerifyBankAccountToken
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CustomerToken String True The unique token of the customer.
Amount1 Decimal True The amount of the transaction .
Amount2 Decimal True The amount of the transaction.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “Success”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Field Type Description
CustomerId Int The identifier of the customer.
MerchantId Int The identifier of the merchant.
ResellerId Int The identifier of the reseller.
Name String The name of the customer.
Email String The email address of the customer.
Country String The country of the customer.
Currency String The currency code
(USD / CAD / MXN / EUR / GBP etc.)
AccountHolderName String The name of the account holder.
AccountHolderType Int The type of the account holder.
1= Company
2 = Individual
RoutingNumber String The routing number of the bank account.
AccountNumber String The account number of the bank account.
CustomerToken String The unique token of the customer.
BankAccountToken String The token of the bank account.
BankAccountId String The identifier of the bank account.
InsertedBy Int The identifier of the user who inserted the record.
InsertedOn String The timestamp when the record was inserted.
IsVerified Boolean Indicates if the bank account is verified.

Make ACH Transaction

This API processes an ACH debit transaction using a customer token.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/ACHSale
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CustomerToken String True The unique token of the customer.
LocationId Int True The identifier of the location.
Amount Decimal True The amount to be charged.
StatementDescriptor String False The statement descriptor for the transaction.
Address String True The address of the customer.
Address2 String False The secondary address of the customer.
City String True The city of the customer.
State String True The state of the customer.
ZipCode String True The zip code of the customer.
Country String True The country of the customer.
Company String False The company of the customer.
Email String True The email address of the customer.
CustomerName String True The name of the customer.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following
      details.

Field Type Description
TransactionId Int The identifier of the transaction.
CustomerId Int The identifier of the customer.
Amount Decimal The amount of the transaction.
paymentlyncFee Decimal The fee charged by PaymentLync.
FundedAmount Decimal The funded amount after fees.
TransactionType Int The type of the transaction.
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The last four digits of the account number.
Currency String The currency code
(USD / CAD / MXN / EUR / GBP etc.)
OriginalChargeID String The original charge ID.
OriginalPaymentID String The original payment ID.
ConnectedAccountID String The connected account ID.
Company String The company of the customer.
Country String The country of the customer.
ZipCode String The zip code of the customer.
City String The city of the customer.
State String The state of the customer.
Address String The address of the customer.
Address2 String The secondary address of the customer.
ParentTransID Int The parent transaction ID.
Stripe String The Stripe details of the transaction.
LocationId Int The identifier of the location.
AuthCode String The authorization code of the transaction.
AVSDetail String The AVS details of the transaction.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The remaining amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn String The timestamp when the transaction was inserted.
SurchargeFee Decimal The surcharge fee of the transaction.
AccountHolderType Int The type of the account holder.
1= Company
2 = Individual
RoutingNumber String The routing number of the bank account.
ShippingRate Decimal The shipping rate of the transaction.
SalesTax Decimal The sales tax of the transaction.
CustomerName String The name of the customer.
Discount Decimal The discount of the transaction.
BinLookUp Object The BIN lookup details of the transaction.
Token String The unique token of the customer.

Hosted Pay Page

Generate URL

This API allows you to generate a hosted payment page URL.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/HostedPayment/
GenerateLink
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CartId String True A unique identifier for the cart associated with the transaction.
Amount Decimal True The requested transaction amount.
CancelUrl String True The URL to redirect the user in case the payment is canceled.
SuccessUrl String True The URL to redirect the user to after the payment is successfully completed.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “Success”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
Response Object API response object.
HostedPaymentLink String The hosted payment page URL.

Terminal

Create Location

This API allows you to create a location for a merchant within PaymentLync.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Location/Create
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
DisplayName String True The name of the location.
Address1 String True The address of the location.
City String True The city of the location.
State String True The state of the location
Country String True The country of the location
Zip String True The zip code of the location
IsActive Boolean False Possible Values: true or false
If “true” then location will be set to active.
IsDefault Boolean False Possible Values: true or false
If “true” then location will be set as default location.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “Succes”
1 = “Failed”
Response Field Type Description
LocationId Int The identifier of the location in PaymentLync
MerchantId Int The identifier of the merchant in PaymentLync
DisplayName String The name of the location.
GatewayLocationId String The identifier of the location in Stripe.
Address1 String The address of the location.
City String The city of the location.
State String The state of the location
Country String The country of the location
Zip String The zip code of the location
IsActive Boolean true or false
IsDefault Boolean true or false

Create Terminal

This API allows you to register a terminal in Stripe and assign a PaymentLync location to it.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Terminal/Create
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
RegistrationCode String True The registration code of the terminal or reader.
LocationId Int True The identifier of the location in PaymentLync.
Label String True The name of the terminal or reader in Stripe.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “Succes”
1 = “Failed”
Response Field Type Description
Id Int The identifier in Database
LocationId Int The identifier of the location in PaymentLync
MerchantId Int The identifier of the merchant in PaymentLync
TerminalId String The identifier of the terminal or reader in Stripe
DeviceType String The type of the terminal or reader
Label String The name of the terminal or reader in Stripe.
City String The city of the location.
GatewayLocation String The identifier of the location in Stripe
SerialNumber String The serial number of the terminal or reader
Status String The status of the terminal or reader
IsError Boolean true or false
StatusCode Boolean 0 or 1
If IsError returns false then StatusCode is 0

View Terminal

This API allows you to retrieve a list of terminals from Stripe associated with a specific PaymentLync location.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Terminal/Search
Content-Type application/json
Authorization <Merchant API Key>

Terminal Capture

This API allows you to Capture a transaction on Terminal.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Terminal/Capture
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
Amount Decimal True The Requested Amount (In Cents).
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
TerminalId String True The identifier of the terminal or reader in Stripe.
OrderId String True Order Id

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
statuscode Int Status code “0” indicates API success.
Status code “1” indicates API error
statusmessage String 0 = “OK”
1 = “Failed”

      The response includes the following status details.

Response Field Type Description
amount Decimal The amount of the transaction.
transactiontype Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
cardtype String The type of the card.
last4digit String The last four digits of the card number.
currencycode String The currency of the card.
authcode String The authorization code of the card.
surchargefee Decimal The surcharge fee applied.
expmonth Int The expiry month of the card.
expyear Int The expiry year of the card.
billing_details String Biiling Details of the customer
statementdescriptor String a statement descriptor is a text that appears on a customer's credit card statement when a transaction is processed.
terminalid String Terminal ID
emv_auth_data String EMV Authorization Data (EMV Auth Data) refers to the information exchanged between the card chip and the card issuer during the authorization process of a transaction.
fingerprint String a unique fingerprint (cryptogram) based on various transaction data elements. This fingerprint is specific to each transaction and is used to verify the authenticity of the card and the integrity of the transaction data./td>
bin String The first six digits of the card number.
docno String The Reference Order ID.

Terminal Cancel

This API allows you to Cancel a transaction on Terminal.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Terminal/Cancel
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
TerminalId String True The identifier of the terminal or reader in Stripe

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

Merchant

Statement Descriptor

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Merchant/UpdateStatementDescriptor
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
MerchantId Int True The identifier of the merchant.
StatementDescriptor String True Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Surcharge

Set Surcharge

To enable and configure a Surcharge Fee, follow these steps:


1.  Log in to your PaymentLync Merchant Portal.

2.  Navigate to Settings from the left-hand menu.

3.  Click on the Surcharge Fee tab.

4.  Use the Global Hierarchy search to select the desired Merchant Location.

5.  Toggle the Surcharge Fee setting to Active.

6.  Enter the desired Surcharge Percentage (%).

7.  Click Save to apply your changes.

Get Location

This GET Location API allows you to retrieve a list of all locations associated with a specific merchant account.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Merchant/GetMerchantLocations
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
LocationId Int The identifier of the location in PaymentLync
Display Name String The name of the location.
Address String The first line of the address of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
ZipCode String The zip code of the cardholder.
IsActive String Possible Values: true or false If “true” then location will be set to active.
IsDefault String Possible Values: true or false If “true” then location will be set as default location.
IsDeleted String

Sale

Send a location ID of the merchant's location in the sale request.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Sale
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo: CardHolderName String True The name of the cardholder.
CreditCardInfo: ExpMonth Int True The expiry month of the card.
CreditCardInfo: ExpYear Int True The expiry year of the card.
CreditCardInfo: CVV Int False The security code of the card.
CreditCardInfo: CardNumber String True The card number.
Amount Decimal True The requested amount
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.
Address String False The first address line of the customer.
Address2 String False The Second address line of the customer.
City String False The City of the customer.
State String False The State of the customer.
ZipCode String False The Zip Code of the customer.
Country String False The Country of the customer.
Company String False The Company of the customer.
Email String False The Email Address of the customer.
CustomerName String False The Name of the customer.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
9 = pending - Transaction Requires Action
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
BinLookup: CardID String 6 digits card bin
BinLookup: Label String Label on the card
BinLookup: Bank String Name of the Bank
BinLookup: CardType String Debit or Credit
BinLookup: Country String Country Name
BinLookup: Website String URL of the website

Authorize

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Authorize
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo: CardHolderName String True The name of the cardholder.
CreditCardInfo: ExpMonth Int True The expiry month of the card.
CreditCardInfo: ExpYear Int True The expiry year of the card.
CreditCardInfo: CVV Int False The security code of the card.
CreditCardInfo: CardNumber String True The card number.
Amount Decimal True The requested amount
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.
Address String False The first address line of the customer.
Address2 String False The Second address line of the customer.
City String False The City of the customer.
State String False The State of the customer.
ZipCode String False The Zip Code of the customer.
Country String False The Country of the customer.
Company String False The Company of the customer.
Email String False The Email Address of the customer.
CustomerName String False The Name of the customer.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
9 = pending - Transaction Requires Action
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
BinLookup: CardID String 6 digits card bin
BinLookup: Label String Label on the card
BinLookup: Bank String Name of the Bank
BinLookup: CardType String Debit or Credit
BinLookup: Country String Country Name
BinLookup: Website String URL of the website

Capture

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Capture
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
TransactionId Int True The identifier of the transaction

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following details.

Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
9 = pending - Transaction Requires Action
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
BinLookup: CardID String 6 digits card bin
BinLookup: Label String Label on the card
BinLookup: Bank String Name of the Bank
BinLookup: CardType String Debit or Credit
BinLookup: Country String Country Name
BinLookup: Website String URL of the website

3D Secure (3DS)

Implementation

  • Add new key “Is3DS” in the Sale and Authorize API request.
  • Add new key “ReturnUrl” in the Sale and Authorize API request.

Is3DS Key

The Is3DS key is a crucial parameter within our system that merchants are required to configure. This key determines whether 3D Secure (3DS) support is required. By default, the Is3DS key is set to "false". To enable 3DS, you must set the Is3DS key to "true", activating an additional layer of authentication for transactions:

  • If Is3DS key is set to “true” (i.e.: Is3DS: true) and the card qualifies for 3DS authentication (supports 3D secure transaction), the RedirectURL will be returned in the response.

  • If Is3DS key is set to “true” (i.e.: Is3DS: true) and the card does not qualify for 3DS authentication (does not support 3D secure transaction), the RedirectURL will be not returned in the response and it will be processed as a non-3DS transaction.

  • If Is3DS key is set to “false” (i.e.: Is3DS: false) and the card qualifies for 3DS authentication (supports 3D secure transaction), the RedirectURL will not be returned in the response and the transaction will be declined.

  • If Is3DS key is set to “false” (i.e.: Is3DS: false) and the card does not qualify for 3DS authentication (does not support 3D secure transaction), the RedirectURL will not be returned in the response and it will be processed as a non-3DS transaction.

  • If Is3DS key is not provided in the request, it will also be considered as false.

ReturnUrl Key

The ReturnUrl key is a crucial parameter within our system that merchants are required to configure. This parameter specifies the API endpoint that our system will call to update the transaction status in the merchant's system. Proper configuration of the ReturnUrl key ensures seamless communication and synchronization between our system and the merchant’s transaction processing workflow.

‌ ‌ ‌ Purpose

The purpose of the ReturnUrl key is to ensure that the merchant’s system is informed about the status of a transaction. This allows for seamless updates and synchronization between our system and the merchant’s backend.

‌ ‌ ‌ Configuration

The Return URL endpoint must meet the following requirements:

  • URL format: The URL should be a valid, fully qualified URL (e.g.: https://example.com/api/transaction/updatestatus).

  • Method: The endpoint should support HTTP GET requests.

  • Response: The endpoint should return a standard HTTP response with a status code indicating the success or failure of the update operation.

‌ ‌ ‌ Sample URL

https://example.com/api/transaction/updatestatus?transactionid=386651&&status=1&&statusmessage=approved

Transaction Status

  • If the customer's 3DS authentication fails, the status message will be "Declined" and the transaction status will be “0” = Declined.

  • If the customer’s 3DS authentication passes for Auth transaction, the status message will be "Approved" and the transaction status will be “2” = Pending because it has not been captured yet.

  • If the customer’s 3DS authentication passes for Sale transaction, the status message will be "Approved" and the transaction status will be “1” = Approved.

Sale

This API allows you to process a credit card sale transaction.

‌ ‌ ‌ Service

Field Type
Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Sale
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo: CardHolderName String True The name of the cardholder.
CreditCardInfo: ExpMonth Int True The expiry month of the card.
CreditCardInfo: ExpYear Int True The expiry year of the card.
CreditCardInfo: CVV Int False The security code of the card.
CreditCardInfo: CardNumber String True The card number
Amount Decimal True The requested amount
LocationId Int False The identifier of the Merchant's location in PaymentLync
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.
Address String False The first address line of the customer.
Address2 String False The second address line of the customer.
City String False The city of the customer.
State String False The state of the customer.
ZipCode String False The zip code of the customer.
Country String False The country of the customer.
Company String False The company of the customer.
Email String False The email address of the customer.
CustomerName String True The name of the customer.
Is3DS Bool True “true” or “false”.
ReturnUrl String False The ReturnUrl key specifies the merchant's API endpoint for updating transaction status, ensuring synchronization between merchant and paymentlync..

‌ ‌ ‌ Response

The response includes the following status details..

Field Type Description
StatusCode Int Status code “0” indicates success. Status code “1” indicates error
StatusMessage String 0 = “OK” 1 = “Failed”
Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
"14"=Reserved
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
9 = pending - Transaction Requires Action
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
RedirectURL String The Stripe redirect URL to complete the 3D Secure (3DS) transaction

Authorize

This API allows you to process an Auth-Only transaction.

‌ ‌ ‌ Service

Field Type
Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Authorize
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

‌ ‌ ‌ Response

3DS Data Only

This API allows merchants to process transactions where the authentication data (such as cryptogram and Electronic Commerce Indicator) is provided separately.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/Sale3ds-dataonly
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
CreditCardInfo:
CardHolderName
String True The name of the cardholder.
CreditCardInfo:
ExpMonth
Int True The expiry month of the card.
CreditCardInfo:
ExpYear
Int True The expiry year of the card.
CreditCardInfo:
CVV
Int False The security code of the card.
CreditCardInfo:
CardNumber
String True The card number.
Amount Decimal True The requested amount.
LocationId Int False The identifier of the Merchant's location in PaymentLync.
Currency String False The currency code
(USD / CAD / MXN / EUR / GBP etc.)
StatementDescriptor String False Statement descriptors explain charges or payments on bank statements and include information that banks and card networks require to help customers understand their statements.
Address String False The first address line of the customer.
Address2 String False The second address line of the customer.
City String False The city of the customer.
State String False The state of the customer.
ZipCode String False The zip code of the customer.
Country String False The country of the customer.
Company String False The company of the customer.
Email String False The email address of the customer.
CustomerName String True The name of the customer.
ReturnUrl String False The ReturnUrl key specifies the merchant's API endpoint for updating transaction status, ensuring synchronization between merchant and paymentlync.
DataOnly Object True Details of the 3DS authentication data.
Version String True This represents the 3D Secure protocol version being used.
ElectronicCommerce
Indicator
String True ECI (Electronic Commerce Indicator) code.
  • "00" → Transaction failed authentication.

  • "01" → Merchant attempted 3DS but authentication was not available.

  • "02" → Merchant supports 3DS but cardholder was not enrolled.

  • "05" → Fully authenticated 3DS transaction.

  • "06" → Authentication attempted but not fully verified.

Cryptogram String True This is a CAVV (Cardholder Authentication Verification Value) or 3DS cryptogram. It’s a unique encrypted code generated during 3DS authentication by the card issuer and used by the payment processor to verify that authentication was successful.
TransactionId String True A unique identifier for this 3DS authentication session.

‌ ‌ ‌ Response

The response includes the following status details..

Field Type Description
StatusCode Int Status code “0” indicates success.
Status code “1” indicates error
StatusMessage String 0 = “OK”
1 = “Failed”
Response Field Type Description
TransactionId Int The identifier of the transaction.
Amount Decimal The amount of the transaction.
PaymentLyncFee Decimal The applied fee.
FundedAmount Decimal The amount of the transaction.
TransactionType Int The type of the transaction.
“0” = Void
“1” = Sale
“2” = Authorize
“3” = Fund
“4” = Refund
“5” = Capture
“6” = ACH Debit
“7” = ACH Refund
“8” = ACH Void
“9” = TransferReversal
“10” = DebitTransaction
CardholderName String The name of the cardholder.
CardType String The type of the card.
Last4digit String The first six and last four digits of the card number.
Currency String The currency of the card.
OriginalPaymentID String The identifier of the transaction at gateway.
ConnectedAccountID String The identifier of the connected account.
Company String The name of the company.
Country String The country of the cardholder.
ZipCode String The zip code of the cardholder.
City String The city of the cardholder.
State String The state of the cardholder.
Address String The first line of the address of the cardholder.
Address2 String The second line of the address of the cardholder.
ParentTransID Int The identifier of the parent transaction.
Stripe String The gateway response.
LocationId Int The identifier of the merchant’s location.
AuthCode String The authorization code of the card.
AVSDetail String The AVS detail of the card.
MerchantId Int The identifier of the merchant.
RemainingAmount Decimal The amount of the transaction.
Status Int 0 = declined
1 = approved
2 = pending
3 = funded
4 = error
5 = init
6 = initdeclined
7 = cancelled
8 = authorized
StatusMessage String “declined – [stripe message]”

“approved”

“pending” for auth-only transaction

“pending – Transaction Requires Action” for 3DS transaction
InsertedOn Date/Time The date and time of the transaction when processed.
SurchargeFee Decimal The surcharge fee applied.
ShippingRate Decimal The shipping rate applied.
SalesTax Decimal The sales tax applied.
CustomerName String The name of the customer.
Discount Int The discount amount applied.
BinLookUp Object The BIN lookup details of the transaction.
BinLookUp: CardID String The first six digits of card.
BinLookUp: Label String The name of card brand.
BinLookUp: Bank String The name of card issuer bank.
BinLookUp: CardType String The type of card.
BinLookUp: Country String The country of card issuer.
BinLookUp: Website String The card brand website.

Reporting

Disputed Transactions

This API enables you to fetch disputed transactions linked to a specific merchant account.

‌ ‌ ‌ Service

Environment Production
Method POST
End Point https://api.paymentlync.com/api/Transaction/GetDisputedTransaction
Content-Type application/json
Authorization <Merchant API Key>

‌ ‌ ‌ Request

Field Type Required Description
FromDate Date/Time True Starting Date of Transactions.
ToDate Date/Time True Ending Date of Transactions.

‌ ‌ ‌ Response

The response includes the following status details.

Field Type Description
StatusCode Int Status code “0” indicates API success.
Status code “1” indicates API error
StatusMessage String 0 = “OK”
1 = “Failed”

      If the StatusCode is “0” (OK), the response includes the following
      details.

Response Field Type Description
Response Object API response object.
DisputeView Array of Objects List of disputed transactions and details.