Account Boarding API

Overview

The Cardknox Account Boarding API gives ISV partners the ability to board PayFac accounts directly through their system, rather than from the Partner Portal. Using the Account Boarding API, ISVs can build a form within their system for collecting all the necessary merchant data to onboard Cardknox Go accounts. Once the ISV submits the application via the API, it is passed along to Cardknox for instant approval.

This page outlines the configuration process for integrating with Cardknox’s Account Boarding API.

See this API on Swagger UI

Visualize and interact with the API using Swagger UI. Please note that only sandbox keys may be used when submitting accounts and the Signature.Token field is not required.

API Endpoints

GetTierNames

URL: https://psapi.cardknox.com/boarding/v1/GetTierNames

Description: The GetTierNames endpoint gives a list of available tiers that can be passed along to the SubmitGoApp request.

Method: POST

Input: JSON

Request Headers

Parameter

Type

Description

Required

ApiKey

String

Authentication credentials

True

Sample Request:

{
  "apiKey": "0d48f767f1d34d088ae59a214fe11e25"
}

Response

Parameter

Description

status

  • Success

  • Error

refnum

error

  • Error Code

  • Error Message

tiers

List of available tiers

Sample Success Response:

{
  "tiers": [
    "123_tier1",
    "123_tier2"
  ],    
  "refnum": "brd258465289",
  "status": "Success"
}

Sample Error Response:

{    
  "refnum": "brd258465289", 
  "status": "Error",   
  "error": {     
    "errorCode": "AccessDenied",    
    "errorMessages": [        
      "Access Denied"       
    ]   
  }
}

SubmitGoApp

URL: https://psapi.cardknox.com/boarding/v1/SubmitGoApp

The SubmitGoApp end point will create a GoPlus Application.

Description:

The SubmitGoApp endpoint validates the request and generates an application if the account associated with the API key is authorized to board Cardknox Go accounts. If it is a Sandbox request, the equipment will be created immediately.

Method: POST

Input: JSON

Request

Parameter

Type

Description

Required

ApiKey

String

Authentication key

True

TierName

String

Name of tier

True

CorporateName

String

Business’s legal name

True

DBAName

String

Business’s DBA Name, if no DBA default to CorporateName

True

AnnualCreditCardSales

Number

Credit card sales for the last full year

False

OwnershipType

Enum

Ownership structure

Valid values are:

  • SoleProprietor

  • Partnership

  • Corporation

  • SoleOwnership

  • LLC

  • NonProfit

True

BusinessStartDate

Date

Start date of the business in YYYY-MM-DD format

True

AgentName

String

Full name of primary agent

False

AgentEmail

String

Email address of primary agent

False

Website

String

Business website

False

TaxId

String

Business EIN / Tax Identification Number

True

BusinessEmail

String

Business email address

False

BusinessPhone

String

Business phone number (format: 000-000-0000)

True

BusinessAddress

Object

Object containing business address fields

True

MailingAddress

Object

Object containing business mailing address fields

True

ProductSold

String

Short description of product sold

True

BankingInformation

Object

Object containing banking information including bank name, routing number, and account number

True

SecondaryBankingInformation

Object

Object containing banking information including bank name, routing number, and account number

False

SignerInformationList

Object

Object containing signer information

True

Token

String

Token from the terms and conditions confirmation;

for production accounts, it must be set to a valid value

True

Click here for more information on how to obtain tokens.

BankingDetails

Field Name

Description

BankName

String, Required

RoutingNumber

String, Required, must be a valid 9-digit routing number

AccountNumber

String, Required, numeric value between 6 and 17 characters

SignerDetails

Field Name

Description

SSN

String, Required

DateOfBirth

Date, Required, minimum age is 18

FirstName

String, Required

LastName

String, Required

Address

Address, Required

OwnershipPercentage

Decimal, Required

Title

String, Required

Valid Values:

  • Treasurer

  • Owner

  • Partner

  • CEO

  • Secretary

  • Director

  • Other

  • Sole Proprieter

OwnerCellPhone

String, Required (format: 000-000-0000)

Address

Field Name

Description

StreetAddress

String, Required

City

String, Required

State

String, Required, 2 digit state code

Zip

String, Required, 5 digits

Country

String, Optional

Signature

Field Name

Description

Token

Token from the terms and conditions confirmation, Required

For production accounts, it must be set to a valid value

Sample Request

{
  "apiKey": "{{API_KEY}}",
  "tierName": "{{TIER}}",
  "corporateName": "Acme Corp",
  "dbaName": "Acme Corporation",
  "annualCreditCardSales": "80000",
  "ownershipType": "corporation",
  "businessStartDate": "2005-08-01",
  "agentName": "John Smith",
  "agentEmail": "john.smith@test.com",
  "website": "http://www.acmecorporation.com/",
  "taxId": "225555555",
  "businessEmail": "robert@acmecorporation.com",
  "businessPhone": "800-555-1212",
  "businessAddress": {
    "streetAddress": "1213 Main Street",
    "city": "Anytown",
    "state": "AL",
    "zip": "11111",
    "country": "United States"
  },
  "mailingAddress": {
    "streetAddress": "1213 Main Street",
    "city": "Anytown",
    "state": "AL",
    "zip": "11111",
    "country": "United States"
  },
  "productSold": "Convenience Goods",
  "bankingInformation": {
    "bankName": "Chase",
    "routingNumber": "021000021",
    "accountNumber": "454545454545"
  },
  "secondaryBankingInformation": {
    "bankName": "Chase",
    "routingNumber": "121122676",
    "accountNumber": "898989898989"
  },
  "signerInformationList": [
    {
      "ssn": "115668989",
      "dateOfBirth": "1955-07-14",
      "firstName": "Robert",
      "lastName": "Brown",
      "address": {
        "streetAddress": "1213 Main Street",
        "city": "Anytown",
        "state": "AL",
        "zip": "11111",
        "country": "United States"
      },
      "ownershipPercentage": 100,
      "title": "Owner",
      "ownerCellPhone": "222-333-4444"
    }
  ],
  "signature": {
    "token": ""
  }
}

Response

Parameter

Description

Status

  • Success

  • Error

Refnum

Error

  • Error Code

  • Error Messages - List of errors

AppId

Sample Success Response

{
  "appId": 9854,
  "refnum": "brd221002160",
  "status": "Success"
}

Sample Error Response:

{
  "status": "Error",
  "error": {
    "errorCode": "BadRequest",
    "errorMessages": [            
      "BusinessAddress.State: The State field is required.",            
      "SignerInformationList[0].SSN: The SSN field is required."        
    ]    
  }
}

ExecuteAction

ExecuteAction will execute an Action for a given ActionName and Template

URL: https://psapi.cardknox.com/boarding/v1/ExecuteAction

Method: POST

Input: JSON

Request

Parameter

Description

apiKey

Credential, Required

actionName

Name of the Action, Required

template

A json Object containing parameters necessary to complete the Action

Sample Request:

{
  "apiKey": "0d48f767f1d34d088ae59a214fe11e25",
  "actionName": "a01_SomeAction_xya123456ae"
}

Response

Parameter

Description

status

  • Success

  • Error

refnum

error

  • Error Code

  • Error Message

Sample Success Response:

{
  "refnum": "brd258465289",
  "status": "Success"
}

Sample Error Response:

{    
  "refnum": "brd258465289", 
  "status": "Error",   
  "error": {     
    "errorCode": "AccessDenied",    
    "errorMessages": [        
      "Access Denied"       
    ]   
  }
}

Last updated