SeamlessChex REST API (v1.7.0)
v1.7.0

Overview

The SeamlessChex API is based on the REST standard. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

You can use our API to integrate your website, software application, mobile application and more.

In addition, you can use the SeamlessChex API in test mode, which does not affect your live data or interact with the banking networks. The API URL you use determines whether the request is live mode or test mode.

Base URL

Live Mode: https://api.seamlesschex.com/

Test Mode: https://sandbox.seamlesschex.com/

Authentication

The SeamlessChex API uses API keys to authenticate requests. You can view and manage your API keys in the SeamlessChex Account Settings.

Test mode secret keys have the prefix sk_test_ and live mode secret keys have the prefix sk_live_.

Your API keys carry many privileges, so be sure to keep them secure! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.

Authentication to the API is performed via Bearer authentication which is similarly to HTTP Basic Auth. Bearer authentication should only be used over HTTPS (SSL). As well as, all API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.

Authenticated Request

curl https://api.seamlesschex.com/v1/check/list -H "Authorization: Bearer sk_test_01en8e264mt148md2f8xkx6afs"


Demo Keys

Use the following Authorization value for the Header Auth to test the requests:

Testing

The SeamlessChex API provides the Sandbox environment which does not affect your live data or interact with the banking networks.

Please note that the Sandbox environment is for developer testing only and can only be used with test data from the table below, otherwise the “Risk” result will be “Fail”.

Test Bank Accounts
Routing Number Account Number Risk Fund Confirmation Description
999900001 1111000001 Risky InsufficientFunds Negative information was found in the account’s history
999900001 1111000002 Fail NonParticipatingBank Routing number is not assigned to a financial institution
999900001 1111000003 Risky AccountClosed Account found in your API user’s Private Bad Checks list
999900001 111100004 Fail NonParticipatingBank Invalid/Unassigned routing number
999900001 1111000005 Fail InvalidAccountNumber Invalid account number
999900001 1111000006 Risky Null Invalid check number
999900001 1111000007 Fail Null Invalid check amount
999900001 1111000008 Pass Null No positive or negative information available for the account information
999900001 1111000009 Fail NonParticipatingBank Routing number can only be valid for a US Government institution
999900001 1111000010 Pass SufficientFunds Routing number is participating bank, but account number not located
999900001 1111000011 Risky InsufficientFunds Account should be declined based on the risk factor reported
999900001 1111000012 Fail InsufficientFunds Item (Check Number) should be declined based on the risk factor reported
999900001 1111000013 Risky InsufficientFunds Current negative data exists on the account. Ex: NSF or recent returns
999900001 1111000014 Fail InsufficientFunds Non-Demand Deposit Account (Post No Debits)
999900001 1111000015 Risky InsufficientFunds Recent negative data exists on the account. Ex: NSF or recent returns
999900001 1111000016 Pass SufficientFunds Account Verified – Open and valid checking or savings account
999900001 1111000017 Fail NonParticipatingBank AMEX – The account is an American Express Travelers Cheque account
999900001 1111000018 Pass SufficientFunds Non-Participant Provider – Account reported as having positive data
999900001 1111000019 Fail NonParticipatingBank Savings Account Verified – Open and valid savings account
999900001 1111000020 Pass SufficientFunds Checking or savings account was found to have positive historical data
999900001 1111000021 Fail NonParticipatingBank Savings account was found to have positive historical data
999900001 1111000022 Pass SufficientFunds Account reported as having positive historical data

Get started with Sandbox on SeamlessChex

Applications should be built and tested in the Sandbox environment before being used. For testing in Sandbox, you need to get a test key for your Sandbox environment.

Click on the right top corner ‘My Account’ and then ‘Developers’:

On the ‘API’ page click on button ‘GO TO SANDBOX’ to switch to your Sandbox environment


When you enter SANDBOX mode on the left corner will be displayed portal TEST MODE

Once in Sandbox, you’ll have a button to go back to the Live environment

In ‘Sandbox’ mode you can go through all check’s stages. From creating a check to depositing. In order to set status ‘Deposited’, go to ‘View My Checks’ page, select a necessary check and click ‘Deposit Selected’

WooCommerce

Where can I find WooCommerce API keys?

Firstly, please make sure that you have the latest version of the WooCommerce SeamlessChex Plugin installed.

  • Then go to: WooCommerce > Settings > Advanced > REST API. Select Add Key. You are taken to the Key Details screen
  • Add a Description.
  • Select the User you would like to generate a key for in the dropdown.
  • Select a level of access for this API key — Read/Write access.
  • Select Generate API Key, and WooCommerce creates API keys for that user.

You can read more on this topic here https://docs.woocommerce.com/document/woocommerce-rest-api/

Base URL

https://sandbox.seamlesschex.com/

Errors

SeamlessChex uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Code 200 indicates success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a creating check failed, etc.). Codes in the 5xx range indicate an error with SeamlessChex's servers (these are rare).

Some 4xx errors that could be handled programmatically include an error code that briefly explains the error reported.

Response Schema application/json
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
code
emptyRow
number
Error code.
Example Response application/json
{
  • "error": true,
  • "message": "Unauthorized",
  • "code": "401",
}
Http Status Codes

200: Success - Everything worked as expected.

400: Bad Request - The request was unacceptable, often due to missing a required parameter.

401: Unauthorized - No valid API key provided.

402: Request Failed - The parameters were valid but the request failed.

403: Forbidden - The API key doesn't have permissions to perform the request.

404: Not Found - The requested resource doesn't exist.

405: Method Not Allowed - You tried to access an endpoint with an invalid method.

429: Too Many Requests - Too many requests hit the API too quickly. We recommend an exponential backoff of your requests.

500: Internal Server Error - Something went wrong on SeamlessChex’s server. Try again later.

503: Service Unavailable - We’re temporarily offline for maintenance or you are using an incorrect endpoint. Perhaps you have made a mistake, please check your request.

Pagination

The SeamlessChex API resources support bulk fetches via the "list" API method. For instance, you can list all checks. This list API method shares a common structure, taking at least these two parameters: limit and page. By default list’s responses have 15 items per page and the first page is active.

Response Schema application/json
success
emptyRow
boolean
Status of the API request.
list
emptyRow
object<list>
A list with a data property that contains an array of up to limit eChecks.
current_page
emptyRow
string
The number of the page that defines your place in the list.
from
emptyRow
string
The number of the previous page before the current one that defines your place in the list.
last_page
emptyRow
string
The number of the last page.
per_page
emptyRow
string
The total number of objects in the array list per one page.
to
emptyRow
string
The number of the next page after the current one that defines your place in the list.
total
emptyRow
string
The total number of objects in the array list.
data
emptyRow
array<check>
An array of objects. Each entry in the array is a separate object. If no more objects are available, the resulting array will be empty.
Example Response application/json
{
  • "succes": true,
  • "list": {
  • "current_page": "1",
  • "data": [
  • {
  • // Some object’s data
  • }
  • ],
  • "from": "1",
  • "last_page": "2",
  • "per_page": "15",
  • "to": "2",
  • "total": "2",
  • }
}

Querying

The SeamlessChex API support a common way for querying, sorting, limiting and selecting resources with REST GET method calls using URL query parameters and the following operators:

Limit

$limit will return only the number of results you specify.

Example Request
curl https://api.seamlesschex.com/v1/check/list?$limit=1 -H "Authorization: Bearer sk_test_01en8e264mt148md2f8xkx6afs"

Sort

$sort will sort based on the object you provide. It can contain a list of properties by which to sort mapped in reverse chronological order by default.

Example Request
curl https://api.seamlesschex.com/v1/check/list?$sort=”date” -H "Authorization: Bearer sk_test_01en8e264mt148md2f8xkx6afs"

Direction

$direction will set a sort direction. It has a reverse chronological order by default.

Example Request
curl https://api.seamlesschex.com/v1/check/list?$direction=”DESC” -H "Authorization: Bearer sk_test_01en8e264mt148md2f8xkx6afs"



API Server

Check Endpoints

Create a check

This service endpoint provides the customer with the ability to create a new eCheck. Each new eCheck is identified by a unique random ID. It can be used later to update a eCheck or retrieve information about the current state of it.

After a new eCheck has been created, it goes into processing, which takes about 2 business days. During this period, the check goes through various stages of processing that are displayed in its status field.

Information about the current status of a check can be obtained using webhooks or by getting its current status via the “Get Check” API service. Below is the procedure for processing an eCheck and changing its statuses.

echeck schema
POST https://sandbox.seamlesschex.com/v1/check/create
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Body Parameters
number string digits between: 1, 10
The custom number of a check. If this field has not been sent, the check number will be filled in automatically.
amount * number float > 0
The amount of the check. The check amount has to be positive.
memo * string <= 128 characters
Brief description of the purpose of the check.
name * string <= 80 characters
The sender’s name.
email * string <= 80 characters
The sender’s email address. (The ‘email’ field is a required field, unless ‘address’ field is entered. In this case ‘email’ field can remain empty.)
authorization_date string YYYY-MM-DD
The specified date will be displayed on the check. By default, the date of eCheck creation will be presented. The authorization date can not be older than 30 days. The authorization date can not be future dated.
label string <= 128 characters
The label is useful to find similar eChecks.
phone string <= 20 characters
The sender’s phone number.
address string <= 128 characters
The sender’s address. (The ‘address’ field is a required field, unless ‘email’ field is entered. In this case ‘address’ field can remain empty. Please note: if the ‘address’ field is entered, then ‘city’, ‘state’ and ‘zip’ fields must be entered too.)
city string <= 40 characters
The sender’s city.
state string == 2 characters
The sender’s city state.
zip string between: 5, 10 characters
The sender’s postal code.
bank_account * string digits between: 4, 17 characters
The sender’s bank account. (The ‘bank_routing’ and ‘bank_account’ fields must be both entered. In this case, both fields ‘token’ and ‘store’ must not be entered.)
bank_routing * string digits: 9 characters
The sender’s bank routing number. (The ‘bank_routing’ and ‘bank_account’ fields must be both entered. In this case, both fields ‘token’ and ‘store’ must not be entered.)
token string format: 36 characters
Unique encrypted identifier of client’s account details. (The ‘token’ and ‘store’ fields must be both entered. In this case, both fields ‘bank_routing’ and ‘bank_account’ must not be entered.)
store string format: site.com
The store from which the requests are received. (The ‘token’ and ‘store’ fields must be both entered. In this case, both fields ‘bank_routing’ and ‘bank_account’ must not be entered.)
type_info string <= 128 characters
Optional. Enter the name of your service to identify your integration
recurring number enum: 0, 1

Select to enable recurring payments.

  • “0” - the fields will not be checked and validated.
  • “1” - the fields will be checked, accepted and validated.
recurring_cycle string 'day', 'week', 'bi-weekly', 'month'
The recurring payment will occur with a selected frequency. The options available for recurring payments are daily, weekly, bi-weekly or monthly.
recurring_start_date string YYYY-MM-DD or NULL
The recurring payments will start on the day of its creation, if selected NULL. If a start date is entered, the recurring payment will start on the start date selected.
recurring_installments number enum: 0 or 1, 2, 3...N

Submit if you require the recurring payments to occur a specific number of times or to be indefinite.

  • “0” - indefinite (ongoing until cancelled).
  • “1, 2, 3...N” - quantity of recurring installments.
verify_before_save boolean
Submit it if you need to verify bank account information. Response will come with a verification result.
fund_confirmation boolean Requires additional plan.
Submit it if you need to confirm the availability of funds. Response will come with a confirmation result.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
check
emptyRow
object
eCheck object.
check_id
emptyRow
string 36 characters
Unique identifier for the eCheck object.
date
emptyRow
string format: YYYY-MM-DD HH:MM:SS
The date the eCheck was created.
authorization_date
emptyRow
string format: YYYY-MM-DD
The customer’s date the check was created. By default, it will be the same as a date when eCheck was created.
number
emptyRow
string digits between: 1, 10
The custom number of a check. If this field has not been sent, the check number will be filled in automatically.
amount
emptyRow
string float > 0
The amount of the check.
memo
emptyRow
string <= 128 characters
Brief description of the purpose of the check.
name
emptyRow
string <= 128 characters
The sender’s name.
email
emptyRow
string <= 80 characters
The sender’s email address.
phone
emptyRow
string <= 20 characters
The sender’s phone number.
address
emptyRow
string <= 128 characters
The sender’s address.
city
emptyRow
string <= 40 characters
The sender’s city.
state
emptyRow
string == 2 characters
The sender’s city state.
zip
emptyRow
string digits between: 5, 10 characters
The sender’s postal code.
bank_account
emptyRow
string digits between: 4, 17characters
The sender’s bank account.
bank_routing
emptyRow
string digits:9 characters
The sender’s bank routing number.
bank_name
emptyRow
string <= 128 characters
The sender’s bank name.
bank_address
emptyRow
string <= 128 character
The sender’s bank address.
bank_city
emptyRow
string <= 40 character
The sender’s bank city.
bank_state
emptyRow
string == 2 characters
The sender’s bank city state.
bank_zip
emptyRow
string between: 5, 10 characters
The sender’s bank postal code.
status
emptyRow
string enum: “in_process”, “printed”, “deposited”, “failed”, “void”

The current status of the eCheck. API has the following statuses:

  • “in_process” - eCheck has been successfully created and it is waiting for the batch to be closed.
  • “printed” - the batch is closed and the eCheck is printed.
  • “deposited” - the batch is closed and funds are deposited.
  • “failed” - the eCheck was automatically canceled for some reason. This could be scam or incorrect account details.
  • “void” - eCheck was manually canceled.
message
emptyRow
string
Provides more details about the reason for the error.
type_info
emptyRow
string <= 128 characters
Service to identify your integration
recurring
emptyRow
number enum: 0, 1

Select to enable recurring payments.

  • “0” - the fields will not be checked and validated.
  • “1” - the fields will be checked, accepted and validated.
recurring_cycle
emptyRow
string enum: 'day', 'week', 'bi-weekly', 'month'
The recurring payment will occur with a selected frequency. The options available for recurring payments are daily, weekly, bi-weekly or monthly.
recurring_start_date
emptyRow
string enum: YYYY-MM-DD or NULL
The recurring payments will start on the day of its creation, if selected NULL. If a start date is entered, the recurring payment will start on the start date selected.
recurring_installments
emptyRow
number enum: 0 or 1, 2, 3...N

Submit if you require the recurring payments to occur a specific number of times or to be indefinite.

  • “0” - indefinite (ongoing until cancelled).
  • “1, 2, 3...N” - number of recurring payments.
mobile
emptyRow
string
Link to download a check generated for mobile devices.
paper
emptyRow
string
Link to download a check for printing on paper.
mobile_view
emptyRow
string
Link to view a check generated for mobile devices.
paper_view
emptyRow
string
Link to view a check for printing on paper.
basic_verification
emptyRow
object
The result of checking the bank account information.
description_bv
emptyRow
string
Details about the retrieved status of verification.
pass_bv
emptyRow
number enum: “0”, “1”

Represent a result of the basic verification.

  • “0” - verification failed.
  • “1” - verification passed.
verification_bv
emptyRow
string
The status of a basic verification. Learn more about basic verification statuses and what they represent.
funds_confirmation
emptyRow
object
The result of confirming the availability of funds.
description_fc
emptyRow
string
Details about the retrieved status of funds confirmation.
pass_fc
emptyRow
number enum: “0”, “1”

Represent a result of the funds confirmation.

  • “0” - confirmation failed.
  • “1” - confirmation passed. It also can be passed if the sender’s bank is not available for the checking.
verification_fc
emptyRow
string
The status of funds confirmation. Learn more about about funds confirmation statuses and what they represent.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
Sample Request application/json
POST sandbox.seamlesschex.com/v1/check/create

  • 0: {
    • "number": "219428" ,
    • "amount": 100 ,
    • "memo": "Law Office Robert Aaron, FL" ,
    • "name": "Robert Aaron" ,
    • "email": "robertaaron@example.com" ,
    • "authorization_date": "2020-07-22" ,
    • "label": "Label" ,
    • "phone": "1728514288" ,
    • "address": "3881 Coquina Ave" ,
    • "city": "North Port" ,
    • "state": "FL" ,
    • "zip": "34286" ,
    • "bank_account": "5354070829" ,
    • "bank_routing": "021000021" ,
    • "type_info": "Service #1" ,
    • "recurring": 1 ,
    • "recurring_cycle": "week" ,
    • "recurring_start_date": "2020-07-25" ,
    • "recurring_installments": 3 ,
    • "verify_before_save": true ,
    • "fund_confirmation": false
    }
Sample Response application/json
  • 0: {
    • "success": true ,
    • "check": {
    • "check_id": "09f6ca40-ccf7-11ea-a460-3988ecc91067" ,
    • "name": "Robert Aaron" ,
    • "address": "3781 Coquina Ave" ,
    • "city": "North Port" ,
    • "state": "FL" ,
    • "zip": "34286" ,
    • "phone": "1728514288" ,
    • "memo": "Law Office Robert Aaron, FL" ,
    • "label": "Label" ,
    • "date": "2020-07-23 11:13:18" ,
    • "bank_account": "5......829" ,
    • "number": "219428" ,
    • "amount": 100 ,
    • "email": "robertaaron@example.com" ,
    • "status": "in_process" ,
    • "bank_routing": "021000021" ,
    • "verification_response": "null" ,
    • "authorization_date": "2020-07-22 00:00:00" ,
    • "bank_name": "JPMORGAN CHASE" ,
    • "bank_address": "3RD FLOOR" ,
    • "bank_city": "FL" ,
    • "bank_state": "TAMPA" ,
    • "bank_zip": "33610" ,
    • "bank_phone": "813-432-3700" ,
    • "type_info": "Service #1" ,
    • "recurring": 1 ,
    • "recurring_cycle": "week" ,
    • "recurring_start_date": "2020-07-25" ,
    • "recurring_installments": 3 ,
    • "mobile": "https://api.seamlesschex.com/check_prints/07_23_2020/mobile_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "paper": "https://api.seamlesschex.com/check_prints/07_23_2020/paper_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "mobile_view": "https://api.seamlesschex.com/check_prints/view/07_23_2020/mobile_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "paper_view": "https://api.seamlesschex.com/check_prints/view/07_23_2020/paper_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "basic_verification": {
    • "description_bv": "Account Verified – The checking account was found to be an open and valid account." ,
    • "pass_bv": 1 ,
    • "verification_bv": "Pass AV"
    • } ,
    • "funds_confirmation": {
    • "description_fc": "Sufficient Funds There are sufficient funds available for this item's amount." ,
    • "pass_fc": 1 ,
    • "verification_fc": "SufficientFunds"
    • }
    • }
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

List all checks

Returns a list of the eChecks you have created. The eChecks are returned in sorted order with the most recent eCheck appearing first.
GET https://sandbox.seamlesschex.com/v1/check/list
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Query Parameters
limit integer between 1, 100
Default: 15.
A limit on the number of objects to be returned. Limit can range between 1 and 100 items, and the default is 15 items.
page integer number > 0
Default: 1.
A cursor to use for pagination. The result is divided into pages, the size of which is determined by the limit parameter.
sort string enum: 'date', 'number', 'name'
Default: 'date'.
The parameter is intended for sorting the results by a specific field. For example, you can sort by 'date', 'number' or 'name'.
from_date string date: YYYY-MM-DD
The parameter is used to sort the results by a date range.
to_date string date: YYYY-MM-DD
The parameter is used to sort the results by a date range.
direction string enum: 'DESC', 'ASC'
Default: 'DESC'.
The parameter allows you to change the sorting direction 'ASC' or 'DESC'.
label string <= 128 characters
The parameter to filter results by the eCheck link field.
link_id string <= 128 characters
The parameter to filter results by the eCheck link field.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
list
emptyRow
object
A list with a data property that contains an array of up to limit eChecks.
current_page
emptyRow
number
The number of the previous page before the current one that defines your place in the list.
from
emptyRow
number
The number of the previous page before the current one that defines your place in the list.
last_page
emptyRow
number
The number of the last page.
per_page
emptyRow
number
The total number of eChecks objects in the array list per one page.
to
emptyRow
number
The number of the next page after the current one that defines your place in the list.
total
emptyRow
number
The total number of eChecks objects in the array list.
data
emptyRow
array
An array of eChecks. Each entry in the array is a separate eCheck object. If no more eChecks are available, the resulting array will be empty.
check_id
emptyRow
string 36 characters
Unique identifier for the eCheck object.
date
emptyRow
string format: YYYY-MM-DD HH:MM:SS
The date the eCheck was created.
authorization_date
emptyRow
string format: YYYY-MM-DD
The customer’s date the check was created. By default, it will be the same as a date when eCheck was created.
number
emptyRow
string digits between: 1, 10
The custom number of a check. If this field has not been sent, the check number will be filled in automatically.
amount
emptyRow
string float > 0
The amount of the check.
memo
emptyRow
string <= 128 characters
Brief description of the purpose of the check.
name
emptyRow
string <= 128 characters
The sender’s name.
email
emptyRow
string <= 80 characters
The sender’s email address.
phone
emptyRow
string <= 20 characters
The sender’s phone number.
address
emptyRow
string <= 128 characters
The sender’s address.
city
emptyRow
string <= 40 characters
The sender’s city.
state
emptyRow
string == 2 characters
The sender’s city state.
zip
emptyRow
string digits between: 5, 10 characters
The sender’s postal code.
bank_account
emptyRow
string digits between: 4, 17characters
The sender’s bank account.
bank_routing
emptyRow
string digits: 9 characters
The sender’s bank routing number.
bank_name
emptyRow
string <= 128 characters
The sender’s bank name.
bank_address
emptyRow
string <= 128 character
The sender’s bank address.
bank_city
emptyRow
string <= 40 character
The sender’s bank city.
bank_state
emptyRow
string == 2 characters
The sender’s bank city state.
bank_zip
emptyRow
string between: 5, 10 characters
The sender’s bank postal code.
type_info
emptyRow
string <= 128 characters
Service to identify your integration
status
emptyRow
string enum: “in_process”, “printed”, “deposited”, “failed”, “void”

The current status of the eCheck. API has the following statuses:

  • “in_process” - eCheck has been successfully created and it is waiting for the batch to be closed.
  • “printed” - the batch is closed and the eCheck is printed.
  • “deposited” - the batch is closed and funds are deposited.
  • “failed” - the eCheck was automatically canceled for some reason. This could be scam or incorrect account details.
  • “void” - eCheck was manually canceled.
mobile
emptyRow
string
Link to a check generated for mobile devices.
paper
emptyRow
string
Link to a check for printing on paper.
basic_verification
emptyRow
object
The result of checking the bank account information.
description_bv
emptyRow
string
Details about the retrieved status of verification.
pass_bv
emptyRow
number enum: “0”, “1”

Represent a result of the basic verification.

  • “0” - verification failed.
  • “1” - verification passed.
verification_bv
emptyRow
string
The status of a basic verification. Learn more about basic verification statuses and what they represent.
funds_confirmation
emptyRow
object
The result of confirming the availability of funds.
description_fc
emptyRow
string
Details about the retrieved status of funds confirmation.
pass_fc
emptyRow
number enum: “0”, “1”

Represent a result of the funds confirmation.

  • “0” - confirmation failed.
  • “1” - confirmation passed. It also can be passed if the sender’s bank is not available for the checking.
verification_fc
emptyRow
string
The status of funds confirmation. Learn more about about funds confirmation statuses and what they represent.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json
  • 0: {
    • "success": true ,
    • "list": {
    • "current_page": "1" ,
    • "data": [
    • {
    • "check_id": "09f6ca40-ccf7-11ea-a460-3988ecc91067" ,
    • "name": "Robert Aaron" ,
    • "address": "3781 Coquina Ave" ,
    • "city": "North Port" ,
    • "state": "FL" ,
    • "zip": "34286" ,
    • "phone": "1728514288" ,
    • "memo": "Law Office Robert Aaron, FL" ,
    • "label": "Law Office" ,
    • "date": "2020-07-23 11:13:18" ,
    • "bank_account": "5......829" ,
    • "number": "1010001" ,
    • "amount": 500 ,
    • "email": "robertaaron@example.com" ,
    • "status": "in_process" ,
    • "bank_routing": "021000021" ,
    • "verification_response": "null" ,
    • "authorization_date": "2020-07-22 00:00:00" ,
    • "bank_name": "JPMORGAN CHASE" ,
    • "bank_address": "3RD FLOOR" ,
    • "bank_city": "FL" ,
    • "bank_state": "TAMPA" ,
    • "bank_zip": "33610" ,
    • "bank_phone": "813-432-3700" ,
    • "type_info": "Service #1" ,
    • "mobile": "https://portal.seamlesschex.com/check_prints/07_23_2020/mobile_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "paper": "https://portal.seamlesschex.com/check_prints/07_23_2020/paper_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "basic_verification": {
    • "description_bv": "Account Verified – The checking account was found to be an open and valid account." ,
    • "pass_bv": 1 ,
    • "verification_bv": "Pass AV"
    • } ,
    • "funds_confirmation": { ,
    • "description_fc": "Sufficient Funds There are sufficient funds available for this item's amount." ,
    • "pass_fc": 1 ,
    • "verification_fc": "SufficientFunds"
    • }
    • }
    • ] ,
    • "from": "1" ,
    • "last_page": "1" ,
    • "per_page": "15" ,
    • "to": "2" ,
    • "total": "2"
    • }
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

Retrieve a check

Retrieves information about a previously created eCheck. Provide a unique eCheck ID that was returned from your previous request. The same information is returned when eCheck is created or voided.
GET https://sandbox.seamlesschex.com/v1/check/check_id
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Path Parameters
Check_id * string == 36 characters
Unique identifier for the eCheck object.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
check
emptyRow
object
eCheck object.
check_id
emptyRow
string 36 characters
Unique identifier for the eCheck object.
date
emptyRow
string format: YYYY-MM-DD HH:MM:SS
The date the eCheck was created.
authorization_date
emptyRow
string format: YYYY-MM-DD
The customer’s date the check was created. By default, it will be the same as a date when eCheck was created.
number
emptyRow
string digits between: 1, 10
The custom number of a check. If this field has not been sent, the check number will be filled in automatically.
amount
emptyRow
string float > 0
The amount of the check.
memo
emptyRow
string <= 128 characters
Brief description of the purpose of the check.
name
emptyRow
string <= 128 characters
The sender’s name.
email
emptyRow
string <= 80 characters
The sender’s email address.
phone
emptyRow
string <= 20 characters
The sender’s phone number.
address
emptyRow
string <= 128 characters
The sender’s address.
city
emptyRow
string <= 40 characters
The sender’s city.
state
emptyRow
string == 2 characters
The sender’s city state.
zip
emptyRow
string digits between: 5, 10 characters
The sender’s postal code.
bank_account
emptyRow
string digits between: 4, 17characters
The sender’s bank account.
bank_routing
emptyRow
string digits: 9 characters
The sender’s bank routing number.
bank_name
emptyRow
string <= 128 characters
The sender’s bank name.
bank_address
emptyRow
string <= 128 character
The sender’s bank address.
bank_city
emptyRow
string <= 40 character
The sender’s bank city.
bank_state
emptyRow
string == 2 characters
The sender’s bank city state.
bank_zip
emptyRow
string between: 5, 10 characters
The sender’s bank postal code.
type_info
emptyRow
string <= 128 characters
Service to identify your integration
status
emptyRow
string enum: “in_process”, “printed”, “deposited”, “failed”, “void”

The current status of the eCheck. API has the following statuses:

  • “in_process” - eCheck has been successfully created and it is waiting for the batch to be closed.
  • “printed” - the batch is closed and the eCheck is printed.
  • “deposited” - the batch is closed and funds are deposited.
  • “failed” - the eCheck was automatically canceled for some reason. This could be scam or incorrect account details.
  • “void” - eCheck was manually canceled.
mobile
emptyRow
string
Link to a check generated for mobile devices.
paper
emptyRow
string
Link to a check for printing on paper.
basic_verification
emptyRow
object
The result of checking the bank account information.
description_bv
emptyRow
string
Details about the retrieved status of verification.
pass_bv
emptyRow
number enum: “0”, “1”

Represent a result of the basic verification.

  • “0” - verification failed.
  • “1” - verification passed.
verification_bv
emptyRow
string
The status of a basic verification. Learn more about basic verification statuses and what they represent.
funds_confirmation
emptyRow
object
The result of confirming the availability of funds.
description_fc
emptyRow
string
Details about the retrieved status of funds confirmation.
pass_fc
emptyRow
number enum: “0”, “1”

Represent a result of the funds confirmation.

  • “0” - confirmation failed.
  • “1” - confirmation passed. It also can be passed if the sender’s bank is not available for the checking.
verification_fc
emptyRow
string
The status of funds confirmation. Learn more about about funds confirmation statuses and what they represent.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json
  • 0: {
    • "success": true ,
    • "list": {
    • "current_page": "1" ,
    • "data": [
    • {
    • "check_id": "09f6ca40-ccf7-11ea-a460-3988ecc91067" ,
    • "name": "Robert Aaron" ,
    • "address": "3781 Coquina Ave" ,
    • "city": "North Port" ,
    • "state": "FL" ,
    • "zip": "34286" ,
    • "phone": "1728514288" ,
    • "memo": "Law Office Robert Aaron, FL" ,
    • "label": "Law Office" ,
    • "date": "2020-07-23 11:13:18" ,
    • "bank_account": "5......829" ,
    • "number": "1010001" ,
    • "amount": 500 ,
    • "email": "robertaaron@example.com" ,
    • "status": "in_process" ,
    • "bank_routing": "021000021" ,
    • "verification_response": "null" ,
    • "authorization_date": "2020-07-22 00:00:00" ,
    • "bank_name": "JPMORGAN CHASE" ,
    • "bank_address": "3RD FLOOR" ,
    • "bank_city": "FL" ,
    • "bank_state": "TAMPA" ,
    • "bank_zip": "33610" ,
    • "bank_phone": "813-432-3700" ,
    • "type_info": "Service #1" ,
    • "mobile": "https://api.seamlesschex.com/check_prints/07_23_2020/mobile_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "paper": "https://api.seamlesschex.com/check_prints/07_23_2020/paper_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "basic_verification": {
    • "description_bv": "Account Verified – The checking account was found to be an open and valid account." ,
    • "pass_bv": 1 ,
    • "verification_bv": "Pass AV"
    • } ,
    • "funds_confirmation": {
    • "description_fc": "Sufficient Funds There are sufficient funds available for this item's amount." ,
    • "pass_fc": 1 ,
    • "verification_fc": "SufficientFunds"
    • }
    • }
    • ] ,
    • "from": "1" ,
    • "last_page": "1" ,
    • "per_page": "15" ,
    • "to": "1" ,
    • "total": "1"
    • }
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

Retrieve bank information

This service is useful for obtaining information about banks by its routing number.
GET https://sandbox.seamlesschex.com/v1/check/bankinfo
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Query Parameters
bank_routing * string digits: 9 characters
The parameter to filter results by the eCheck bank routing number field.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
bankinfo
emptyRow
object
A bank information object that contains detailed bank data.
routing
emptyRow
string digits: 9 characters
The bank routing number.
name
emptyRow
string <= 128 characters
The bank name.
address
emptyRow
string <= 128 characters
The bank address.
city
emptyRow
string <= 40 characters
The bank city.
state
emptyRow
string == 2 characters
The bank city state.
zip
emptyRow
string digits between: 5, 10 characters
The bank postal code.
phone
emptyRow
string <= 20 characters
The bank phone number.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json
  • 0: {
    • "success": true ,
    • "bankinfo": {
    • "routing": "021000021" ,
    • "name": "JPMORGAN CHASE" ,
    • "address": "3RD FLOOR" ,
    • "city": "FL" ,
    • "state": "TAMPA" ,
    • "zip": "33610" ,
    • "phone": "813-432-3700"
    • }
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

Tokenization

Tokenization, when applied to data security, is the process of substituting a sensitive data element with a non-sensitive equivalent, referred to as a token, that has no extrinsic or exploitable meaning or value. The token is a reference (i.e. identifier) that maps back to the sensitive data through a tokenization system.
POST https://sandbox.seamlesschex.com/v1/account/tokenization
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Body Parameters
first_name * string <= 128 characters
The sender’s first name.
last_name * string <= 128 characters
The sender’s last name.
email string <= 80 characters
The sender’s email address.
phone string <= 20 characters
The sender’s phone number.
bank_account * string digits between: 4, 17 characters
The sender’s bank account.
bank_routing * string digits: 9 characters
The sender’s bank routing number.
store * string <= 128 characters
Any identifier can be entered for your convenience (for example in a website format: site.com or any other identifier)

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
tokenization
emptyRow
object
Tokenization object.
token
emptyRow
string 36 characters
Unique encrypted identifier of client’s account details
bank
emptyRow
string <= 128 characters
Client’s bank.
routing
emptyRow
string 9 characters
Client’s routing number.
last4
emptyRow
string
last 4 digits of the account number, 1234.
name
emptyRow
string <= 128 characters
Account owner’s name.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a token hasn’t been created.
pass
emptyRow
string
Pass code.
code
emptyRow
string
Error code.
description
emptyRow
string
The checking account was found to be an open and valid account.
verification
emptyRow
string
Pass AV. The checking account was found to be an open and valid account.
Sample Request application/json
POST sandbox.seamlesschex.com/v1/account/tokenization

  • 0: {
    • "first_name": "Robert" ,
    • "last_name": "Aaron" ,
    • "email": "robertaaron@example.com" ,
    • "phone": "1728514288" ,
    • "bank_account": "5354070829" ,
    • "bank_routing": "021000021" ,
    • "store": "site.com"
    }
Sample Response application/json
  • 0: {
    • "success": true ,
    • "tokenization": {
    • "token": "09f6ca40ccf711eaa460-3988ecc91067" ,
    • "bank": "JPMORGAN CHASE" ,
    • "routing": "021000021" ,
    • "last4": "0829" ,
    • "name": "Robert Aaron" ,
    • }
    }
  • 0: {
    • "error": true ,
    • "pass": "0" ,
    • "code": "GN01" ,
    • "description": "Negative information was found." ,
    • "verificationv": "Negative Data"
    }

Update a check

Updates the specified eCheck with the values of the supplied fields. Any fields not specified will remain unchanged.
POST https://sandbox.seamlesschex.com/v1/check/edit
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Body Parameters
check_id * string == 80 characters
Unique identifier for the eCheck object.
number * number digits between: 1, 10
The custom number of a check. If this field has not been sent, the check number will be filled in automatically.
amount * number float > 0
The amount of the check. The check amount has to be positive.
memo * string <= 128 characters
Brief description of the purpose of the check.
authorization_date string YYYY-MM-DD
The authorization date can not be older than 30 days. The authorization date can not be future dated.
label string <= 128 characters
The label is useful to find similar eChecks.
name * string <= 80 characters
The sender’s name.
email string <= 80 characters
The sender’s email address.
phone string <= 20 characters
The sender’s phone number.
address string <= 128 characters
The sender’s address.
city string <= 40 characters
The sender’s city.
state string == 2 characters
The sender’s city state.
zip string between:5,10 characters
The sender’s postal code.
bank_account * string digits between: 4, 17 characters
The sender’s bank account. (The ‘bank_routing’ and ‘bank_account’ fields must be both entered. In this case, both fields ‘token’ and ‘store’ must not be entered.)
bank_routing * string digits: 9 characters
The sender’s bank routing number. (The ‘bank_routing’ and ‘bank_account’ fields must be both entered. In this case, both fields ‘token’ and ‘store’ must not be entered.)
token string format: 36 characters
Unique encrypted identifier of client’s account details. (The ‘token’ and ‘store’ fields must be both entered. In this case, both fields ‘bank_routing’ and ‘bank_account’ must not be entered.)
store string format: site.com
The store from which the requests are received. (The ‘token’ and ‘store’ fields must be both entered. In this case, both fields ‘bank_routing’ and ‘bank_account’ must not be entered.)
type_info string <= 128 characters
Optional. Enter the name of your service to identify your integration
recurring number enum: 0, 1

Select to enable recurring payments.

  • “0” - the fields will not be checked and validated.
  • “1” - the fields will be checked, accepted and validated.
recurring_cycle string 'day', 'week', 'bi-weekly', 'month'
The recurring payment will occur with a selected frequency. The options available for recurring payments are daily, weekly, bi-weekly or monthly.
recurring_start_date string YYYY-MM-DD or NULL
The recurring payments will start on the day of its creation, if selected NULL. If a start date is entered, the recurring payment will start on the start date selected.
recurring_installments number enum: 0 or 1, 2, 3...N

Submit if you require the recurring payments to occur a specific number of times or to be indefinite.

  • “0” - indefinite (ongoing until cancelled).
  • “1, 2, 3...N” - number of recurring payments.
verify_before_save boolean
Submit it if you need to verify bank account information. Response will come with a verification result.
fund_confirmation boolean
Submit it if you need to confirm the availability of funds. Response will come with a confirmation result.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
check
emptyRow
object
eCheck object.
check_id
emptyRow
string 36 characters
Unique identifier for the eCheck object.
date
emptyRow
string format: YYYY-MM-DD HH:MM:SS
The date the eCheck was created.
authorization_date
emptyRow
string format: YYYY-MM-DD
The customer’s date the check was created. By default, it will be the same as a date when eCheck was created.
number
emptyRow
string digits between: 1, 10
The custom number of a check. If this field has not been sent, the check number will be filled in automatically.
amount
emptyRow
string float > 0
The amount of the check.
memo
emptyRow
string <= 128 characters
Brief description of the purpose of the check.
name
emptyRow
string <= 128 characters
The sender’s name.
email
emptyRow
string <= 80 characters
The sender’s email address.
phone
emptyRow
string <= 20 characters
The sender’s phone number.
address
emptyRow
string <= 128 characters
The sender’s address.
city
emptyRow
string <= 40 characters
The sender’s city.
state
emptyRow
string == 2 characters
The sender’s city state.
zip
emptyRow
string digits between: 5, 10 characters
The sender’s postal code.
bank_account
emptyRow
string digits between: 4, 17characters
The sender’s bank account.
bank_routing
emptyRow
string digits: 9 characters
The sender’s bank routing number.
bank_name
emptyRow
string <= 128 characters
The sender’s bank name.
bank_address
emptyRow
string <= 128 character
The sender’s bank address.
bank_city
emptyRow
string <= 40 character
The sender’s bank city.
bank_state
emptyRow
string == 2 characters
The sender’s bank city state.
bank_zip
emptyRow
string between: 5,10 characters
The sender’s bank postal code.
status
emptyRow
string enum: “in_process”, “printed”, “deposited”, “failed”, “void”

The current status of the eCheck. API has the following statuses:

  • “in_process” - eCheck has been successfully created and it is waiting for the batch to be closed.
  • “printed” - the batch is closed and the eCheck is printed.
  • “deposited” - the batch is closed and funds are deposited.
  • “failed” - the eCheck was automatically canceled for some reason. This could be scam or incorrect account details.
  • “void” - eCheck was manually canceled.
type_info
emptyRow
string <= 128 characters
Service to identify your integration
recurring
emptyRow
number enum: 0, 1

Select to enable recurring payments.

  • “0” - the fields will not be checked and validated.
  • “1” - the fields will be checked, accepted and validated.
recurring_cycle
emptyRow
string enum: 'day', 'week', 'bi-weekly', 'month'
The recurring payment will occur with a selected frequency. The options available for recurring payments are daily, weekly, bi-weekly or monthly.
recurring_start_date
emptyRow
string enum: YYYY-MM-DD or NULL
The recurring payments will start on the day of its creation, if selected NULL. If a start date is entered, the recurring payment will start on the start date selected.
recurring_installments
emptyRow
number enum: 0 or 1, 2, 3...N

Submit if you require the recurring payments to occur a specific number of times or to be indefinite.

  • “0” - indefinite (ongoing until cancelled).
  • “1, 2, 3...N” - number of recurring payments.
mobile
emptyRow
string
Link to a check generated for mobile devices.
paper
emptyRow
string
Link to a check for printing on paper.
basic_verification
emptyRow
object
The result of checking the bank account information.
description_bv
emptyRow
string
Details about the retrieved status of verification.
pass_bv
emptyRow
number enum: “0”, “1”

Represent a result of the basic verification.

  • “0” - verification failed.
  • “1” - verification passed.
verification_bv
emptyRow
string
The status of a basic verification. Learn more about basic verification statuses and what they represent.
funds_confirmation
emptyRow
object
The result of confirming the availability of funds.
description_fc
emptyRow
string
Details about the retrieved status of funds confirmation.
pass_fc
emptyRow
number enum: “0”, “1”

Represent a result of the funds confirmation.

  • “0” - confirmation failed.
  • “1” - confirmation passed. It also can be passed if the sender’s bank is not available for the checking.
verification_fc
emptyRow
string
The status of funds confirmation. Learn more about about funds confirmation statuses and what they represent.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
POST sandbox.seamlesschex.com/v1/check/edit

  • 0: {
    • "check_id": "09f6ca40-ccf7-11ea-a460-3988ecc91067" ,
    • "number": "1010001" ,
    • "amount": 500 ,
    • "memo": "Law Office Robert Aaron, FL" ,
    • "name": "Robert Aaron" ,
    • "email": "robertaaron@example.com" ,
    • "authorization_date": "2020-07-22" ,
    • "label": "Law Office" ,
    • "phone": "1728514288" ,
    • "address": "3881 Coquina Ave" ,
    • "city": "North Port" ,
    • "state": "FL" ,
    • "zip": "34286" ,
    • "bank_account": "5354070829" ,
    • "bank_routing": "021000021" ,
    • "type_info": "Service #1" ,
    • "recurring": 1 ,
    • "recurring_cycle": "week" ,
    • "recurring_start_date": "2020-07-25" ,
    • "recurring_installments": 3 ,
    • "verify_before_save": true ,
    • "fund_confirmation": false
    }
Sample Response application/json
  • 0: {
    • "success": true ,
    • "check": {
    • "check_id": "09f6ca40-ccf7-11ea-a460-3988ecc91067" ,
    • "name": "Robert Aaron" ,
    • "address": "3781 Coquina Ave" ,
    • "city": "North Port" ,
    • "state": "FL" ,
    • "zip": "34286" ,
    • "phone": "1728514288" ,
    • "memo": "Law Office Robert Aaron, FL" ,
    • "label": "Law Office" ,
    • "date": "2020-07-23 11:13:18" ,
    • "bank_account": "5......829" ,
    • "number": "1010001" ,
    • "amount": 500 ,
    • "email": "robertaaron@example.com" ,
    • "status": "in_process" ,
    • "bank_routing": "021000021" ,
    • "verification_response": "null" ,
    • "authorization_date": "2020-07-22 00:00:00" ,
    • "bank_name": "JPMORGAN CHASE" ,
    • "bank_address": "3RD FLOOR" ,
    • "bank_city": "FL" ,
    • "bank_state": "TAMPA" ,
    • "bank_zip": "33610" ,
    • "bank_phone": "813-432-3700" ,
    • "type_info": "Service #1" ,
    • "recurring": 1 ,
    • "recurring_cycle": "week" ,
    • "recurring_start_date": "2020-07-25" ,
    • "recurring_installments": 3 ,
    • "mobile": "https://api.seamlesschex.com/check_prints/07_23_2020/mobile_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "paper": "https://api.seamlesschex.com/check_prints/07_23_2020/paper_09f6ca40-ccf7-11ea-a460-3988ecc91067_b1554be0-cdfe-11e7-b28c-0f87180a6ebe_1.pdf" ,
    • "basic_verification": {
    • "description_bv": "Account Verified – The checking account was found to be an open and valid account." ,
    • "pass_bv": 1 ,
    • "verification_bv": "Pass AV"
    • } ,
    • "funds_confirmation": {
    • "description_fc": "Sufficient Funds There are sufficient funds available for this item's amount." ,
    • "pass_fc": 1 ,
    • "verification_fc": "SufficientFunds"
    • }
    • }
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

Void a check

Void a previously created eCheck. Provide a unique ID for the eCheck that was returned from your previous request.
Please note that only eCheck with a status “in_process” can be voided.
DELETE https://sandbox.seamlesschex.com/v1/check/check_id
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type * string
It tells the server what type of data is actually sent.
Path Parameters
Check_id * string == 36 characters
Unique identifier for the eCheck object.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json
  • 0: {
    • "success": true
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

Payment Links Endpoints

Change payment link status

Enable/Disable a previously created Payment Link. Provide a unique token for the Payment Link that was returned from your previous request.
POST https://sandbox.seamlesschex.com/v1/paymentlink/changestatus/checkout_token
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type * string
It tells the server what type of data is actually sent.
Path Parameters
Checkout_token * string == 36 characters
Unique identifier for the Payment Link object.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json
  • 0: {
    • "success": true
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

Create payment link

This service endpoint provides the customer with the ability to create a new Payment Link. Each new Payment Link is identified by a unique random token. It can be used later to delete Payment Link.

POST https://sandbox.seamlesschex.com/v1/paymentlink/create
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Body Parameters
amount number float > 0
The amount of the check.
memo string <= 128 characters
Brief description of the purpose of the check.
thank_you_url string
User is redirected to the 'Thank you' page URL in case of successful transaction. URL will receive the parameter 'CheckID' with the number of new check.
error_url string
User is redirected to the 'Payment Error' page in case of failed transaction.
recurring number enum: 0, 1

Select to enable recurring payments.

  • “0” - the fields will not be checked and validated.
  • “1” - the fields will be checked, accepted and validated.
recurring_cycle string 'day', 'week', 'bi-weekly', 'month'
The recurring payment will occur with a selected frequency. The options available for recurring payments are daily, weekly, bi-weekly or monthly.
recurring_start_date string YYYY-MM-DD or NULL
The recurring payments will start on the day of its creation, if selected NULL. If a start date is entered, the recurring payment will start on the start date selected.
recurring_installments number enum: 0 or 1, 2, 3...N

Submit if you require the recurring payments to occur a specific number of times or to be indefinite.

  • “0” - indefinite (ongoing until cancelled).
  • “1, 2, 3...N” - quantity of recurring installments.
fund_confirmation boolean
Submit it if you need to confirm the availability of funds.
basic_verification boolean
Submit it if you need basic verification.
is_bankauth boolean
Instantly verify bank account ownership and account balances using a payment link where users are prompted to enter their online bank username/password.
signature_required boolean
Signature Capture allows you to create a payment link requiring your customer to sign using their mouse or finger on a smart phone.
submit_for_approval boolean
If enabled all checks will go to your approval queue requiring manual review.

Request
Response
200
BODY
Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
checkout_link
emptyRow
object
PaymentLink object.
checkout_token
emptyRow
string 36 characters
Unique identifier for the PaymentLink object.
link
emptyRow
string
Payment link.
amount
emptyRow
string float > 0
The amount of the payment link.
memo
emptyRow
string <= 128 characters
Brief description of the purpose of the payment link.
signature_required
emptyRow
Select to enable Signature.
basic_verification
emptyRow
Select to enable Basic Verification.
fund_confirmation
emptyRow
Select to enable Fund Confirmation.
submit_for_approval
emptyRow
Select to enable Submit For Approval.
recurring
emptyRow
Select to enable Recurring.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
Sample Request application/json
POST sandbox.seamlesschex.com/v1/paymentlink/create

  • 0: {
    • "amount": 100 ,
    • "memo": "Law Office Robert Aaron, FL" ,
    • "recurring": 1 ,
    • "recurring_cycle": "week" ,
    • "recurring_start_date": "2020-07-25" ,
    • "recurring_installments": 3 ,
    • "basic_verification": true ,
    • "fund_confirmation": false
    }
Sample Response application/json
  • 0: {
    • "success": true ,
    • "checkout_link": {
    • "checkout_token": "c6fdsff0-9336-11ec-bcbc-3b4240c214a0" ,
    • "link": "https://dev-docker.seamlesschex.com/#/invoice/61f41990-9b23-11ec-8731-83b61f0fb897/b15ebbb0-9a1b-11ec-aaba-e535dad41836/0/0" ,
    • "amount": 100 ,
    • "memo": "description" ,
    • "bank_auth": 0 ,
    • "signature_required": 0 ,
    • "basic_verification": 1 ,
    • "fund_confirmation": 0 ,
    • "submit_for_approval": 0 ,
    • "recurring": 1 ,
    • }
    }
  • 0: {
    • "error": true ,
    • "message": "Not found"
    }

Delete payment link

Delete a previously created Payment Link. Provide a unique token for the Payment Link that was returned from your previous request.
DELETE https://sandbox.seamlesschex.com/v1/paymentlink/checkout_token
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type * string
It tells the server what type of data is actually sent.
Path Parameters
Checkout_token * string == 36 characters
Unique identifier for the Payment Link object.

Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json

List all bank auth payment links

Returns a list of Bank Authentication Payment Links you have created.
GET https://sandbox.seamlesschex.com/v1/bankauthpaymentlink/list
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Query Parameters
limit integer between 1, 100
Default: 15.
A limit on the number of objects to be returned. Limit can range between 1 and 100 items, and the default is 15 items.
page integer number > 0
Default: 1.
A cursor to use for pagination. The result is divided into pages, the size of which is determined by the limit parameter.
sort string enum: 'amount', 'memo', 'signature_enable', 'number_of_views', 'total_checks', 'created_at'
Default: 'created_at'.
The parameter is intended for sorting the results by a specific field. For example, you can sort by 'amount', 'memo', 'signature_enable', 'number_of_views', 'total_checks', 'created_at'.
direction string enum: 'DESC', 'ASC'
Default: 'DESC'.
The parameter allows you to change the sorting direction 'ASC' or 'DESC'.
search string
The parameter allows you to search for bank auth payment links by 'memo', 'amount' or 'created_at' fields.

Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
list
emptyRow
object
A list with a data property that contains an array of up to limit Bank Authentication Payment Links.
current_page
emptyRow
number
The number of the previous page before the current one that defines your place in the list.
from
emptyRow
number
The number of the previous page before the current one that defines your place in the list.
last_page
emptyRow
number
The number of the last page.
per_page
emptyRow
number
The total number of Bank Authentication Payment Links objects in the array list per one page.
to
emptyRow
number
The number of the next page after the current one that defines your place in the list.
total
emptyRow
number
The total number of Bank Authentication Payment Links objects in the array list.
data
emptyRow
array
An array of Bank Authentication Payment Links. Each entry in the array is a separate Payment Link object. If no more Bank Authentication Payment Links are available, the resulting array will be empty.
checkout_token
emptyRow
string 36 characters
Unique identifier for the PaymentLink object.
link
emptyRow
string
Payment link.
amount
emptyRow
string float > 0
The amount of the payment link.
memo
emptyRow
string <= 128 characters
Brief description of the purpose of the payment link.
recurring
emptyRow
Select to enable Recurring.
recurring_cycle
emptyRow
string
Recurring cycle.
recurring_start_date
emptyRow
string
Recurring start date.
recurring_installments
emptyRow
Recurring installments.
signature_required
emptyRow
Select to enable Signature.
basic_verification
emptyRow
Select to enable Basic Verification.
fund_confirmation
emptyRow
Select to enable Fund Confirmation.
submit_for_approval
emptyRow
Select to enable Submit For Approval.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json

List all payment links

Returns a list of Payment Links you have created.
GET https://sandbox.seamlesschex.com/v1/paymentlink/list
Header Parameters
Authorization * string
Authorization header containing your API key.
Content-Type string
It tells the server what type of data is actually sent.
Query Parameters
limit integer between 1, 100
Default: 15.
A limit on the number of objects to be returned. Limit can range between 1 and 100 items, and the default is 15 items.
page integer number > 0
Default: 1.
A cursor to use for pagination. The result is divided into pages, the size of which is determined by the limit parameter.
sort string enum: 'amount', 'memo', 'signature_enable', 'number_of_views', 'total_checks', 'created_at'
Default: 'created_at'.
The parameter is intended for sorting the results by a specific field. For example, you can sort by 'amount', 'memo', 'signature_enable', 'number_of_views', 'total_checks', 'created_at'.
direction string enum: 'DESC', 'ASC'
Default: 'DESC'.
The parameter allows you to change the sorting direction 'ASC' or 'DESC'.
search string
The parameter allows you to search for payment links by 'memo', 'amount' or 'created_at' fields.

Response Schema application/json
200: Success
success
emptyRow
boolean digits between: 1, 10
Status of the API request.
list
emptyRow
object
A list with a data property that contains an array of up to limit Payment Links.
current_page
emptyRow
number
The number of the previous page before the current one that defines your place in the list.
from
emptyRow
number
The number of the previous page before the current one that defines your place in the list.
last_page
emptyRow
number
The number of the last page.
per_page
emptyRow
number
The total number of Payment Links objects in the array list per one page.
to
emptyRow
number
The number of the next page after the current one that defines your place in the list.
total
emptyRow
number
The total number of Payment Links objects in the array list.
data
emptyRow
array
An array of Payment Links. Each entry in the array is a separate Payment Link object. If no more Payment Links are available, the resulting array will be empty.
checkout_token
emptyRow
string 36 characters
Unique identifier for the PaymentLink object.
link
emptyRow
string
Payment link.
amount
emptyRow
string float > 0
The amount of the payment link.
memo
emptyRow
string <= 128 characters
Brief description of the purpose of the payment link.
recurring
emptyRow
Select to enable Recurring.
recurring_cycle
emptyRow
string
Recurring cycle.
recurring_start_date
emptyRow
string
Recurring start date.
recurring_installments
emptyRow
Recurring installments.
signature_required
emptyRow
Select to enable Signature.
basic_verification
emptyRow
Select to enable Basic Verification.
fund_confirmation
emptyRow
Select to enable Fund Confirmation.
submit_for_approval
emptyRow
Select to enable Submit For Approval.
4xx, 5xx: Error
error
emptyRow
boolean
Indicates if a request has been completed with error.
message
emptyRow
string
Provides more details about the reason for the error.
Sample Request application/json
Sample Response application/json