Overview

The CoPilot API provides resources creating and modifying merchants. The API uses JSON web service semantics. Each web service implements the business processes as defined in this API documentation.

Authentication

Authenticate your account via a JSON Web Token (JWT). You will send a request to obtain the access token and then use it for accessing resources in the Authorization header.

Note that an access token token has a very limited timeframe the (expires_in) determines the lifespan of the token in seconds. If your application needs access to the API beyond the lifetime of a single access token, it is recommended to obtain a new token via the refresh token endpoint, since refresh tokens have a much longer timeframe.

Important Security Considerations:

  • The provided client_secret is a secret and should never be expose on the client side via JavaScript. Take steps to ensure that the client secret is stored securely in your application.
  • Be sure to not expose the access_token or refresh_token in client side applications

Get Access Token Endpoint

Path

https://accountsuat.cardconnect.com/auth/realms/cardpointe/protocol/openid-connect/token

Method

POST

Request Body Content

Example Request Object
curl -X POST http://accountsuat.cardconnect.com/auth/realms/cardpointe/protocol/openid-connect/token  -H "Content-Type: application/x-www-form-urlencoded" -d "username=test" -d 'password=testpassword' -d 'gr
ant_type=password' -d 'client_id=copilot' -d 'client_secret=111111111-1fc1-111f-1f1f-b1111111111'
Field Required Default Value Comments
username yes
password yes
grant_type yes password
client_id yes copilot
client_secret yes Once you are registered for copilot API access you will be provided the client_secret value

The response will return JSON with an access_token, which is a signed OpenID Connect JSON Web Token (JWT).

Example Response Object
{
    "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICIzNDZZVkUwaGJXQlVvT1NoMm5wOHF4d2NuZ2tKUjY1Uzh3SVM2UmI5X3N3In0.eyJqdGkiOiJmYmZjMjY5My04YTliLTQyOTAtOGRiMS0zM2YxODc3M2IwMTkiLCJleHAiOjE0OTkxMTYyODUsIm5iZiI6MCwiaWF0IjoxNDk5MTE1OTg1LCJpc3MiOiJodHRwOi8vYWNjb3VudHMtbG9jYWwuY2FyZGNvbm5lY3QuY29tL2F1dGgvcmVhbG1zL2NhcmRjb25uZWN0IiwiYXVkIjoiY29waWxvdCIsInN1YiI6IjZlZjdkOTkyLWZhZTMtNDVhYy1iMDA5LTIzOGIzMzIwOTA1MSIsInR5cCI6IkJlYXJlciIsImF6cCI6ImNvcGlsb3QiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiJjYzExYWYyMi0xMjMxLTQ4M2ItYjA0ZC01ZmYyMTIwMTM0OGYiLCJhY3IiOiIxIiwiY2xpZW50X3Nlc3Npb24iOiJmNGQ1ZWQyOC05MzM0LTQwOGYtODlmZC0zNzY0MmU3OGViNWUiLCJhbGxvd2VkLW9yaWdpbnMiOltdLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50Iiwidmlldy1wcm9maWxlIl19fSwibmFtZSI6IiIsInByZWZlcnJlZF91c2VybmFtZSI6ImFwaW9uZXNhbGVzY29kZSIsImNjVU5hbWUiOiJhcGlvbmVzYWxlc2NvZGUifQ.a6W3BihEKH4vcbFDInWIF0KmiAU3g3jtdQmBLEwEdOhOlRtsAyYVngeUxJ7pjUqqM9rv9Y8pCTAyZCZegu1Qi6ZSd3vQ1A7TKaR61LvxFXgFwuNodl-PKtJOCnSk9C1tnOEW_hlz-amBq19ydx2PoPZPqjeyopbnXFMOXvXP3_Km5gDM8JqVXlN0Awg38WpMB1SWgw5f8ZItjAVj3_9EpMi1pImO7wyjKw7KXk_O_drUPJIO6XB1vwd_tYWdNf_pAuoUPQLl9R0xGHDkIOAioXYjWnVpZ8bNExwPdSGJkkzTuTOEoWGuMsXKKFkLZxzzzzzz",
    "expires_in": 300,
    "refresh_expires_in": 1800,
    "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICIzNDZZVkUwaGJXQlVvT1NoMm5wOHF4d2NuZ2tKUjY1Uzh3SVM2UmI5X3N3In0.eyJqdGkiOiI3MTUyMTkwYy1mMzdjLTQ5MGQtOGYxZC1kMDlhMzJlYTlhYzAiLCJleHAiOjE0OTkxMTc3ODUsIm5iZiI6MCwiaWF0IjoxNDk5MTE1OTg1LCJpc3MiOiJodHRwOi8vYWNjb3VudHMtbG9jYWwuY2FyZGNvbm5lY3QuY29tL2F1dGgvcmVhbG1zL2NhcmRjb25uZWN0IiwiYXVkIjoiY29waWxvdCIsInN1YiI6IjZlZjdkOTkyLWZhZTMtNDVhYy1iMDA5LTIzOGIzMzIwOTA1MSIsInR5cCI6IlJlZnJlc2giLCJhenAiOiJjb3BpbG90IiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiY2MxMWFmMjItMTIzMS00ODNiLWIwNGQtNWZmMjEyMDEzNDhmIiwiY2xpZW50X3Nlc3Npb24iOiJmNGQ1ZWQyOC05MzM0LTQwOGYtODlmZC0zNzY0MmU3OGViNWUiLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50Iiwidmlldy1wcm9maWxlIl19fX0.Ifoi_ZGGA2dVg1PAxDzXqjyXZtH6B0ISiDNfm7jPUJUvaFhRDkxGPWoXOoIOabbNyL-rfqS2aChDrP8OhqtxmWFBqr0e7bWTitHsruXtcXoI7gw-0rnF31LAXhhyGosnZcOqD57-UZ4tuQ3wi9luvoXw-skc59iW6EgV9_jkd3n11sIO2-lOrCoSD4OhTqrSFbf4b-duOf9UsYm1sBq3vDLQMxd4Brp7SarStCYHIe0VOBGgKBrliwwzZi0g2ucKX2jA1eMpmWng5ddQ5uZGg5jnak2-bzrx8QFMyWj5zYkWGMb5SDa5N8Kizzzzz",
    "token_type": "bearer",
    "id_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICIzNDZZVkUwaGJXQlVvT1NoMm5wOHF4d2NuZ2tKUjY1Uzh3SVM2UmI5X3N3In0.eyJqdGkiOiIwNjM1MjUyMC1jYmMzLTQyMDUtOWMzMS1hMTBiYzFiYTZkZjgiLCJleHAiOjE0OTkxMTYyODUsIm5iZiI6MCwiaWF0IjoxNDk5MTE1OTg1LCJpc3MiOiJodHRwOi8vYWNjb3VudHMtbG9jYWwuY2FyZGNvbm5lY3QuY29tL2F1dGgvcmVhbG1zL2NhcmRjb25uZWN0IiwiYXVkIjoiY29waWxvdCIsInN1YiI6IjZlZjdkOTkyLWZhZTMtNDVhYy1iMDA5LTIzOGIzMzIwOTA1MSIsInR5cCI6IklEIiwiYXpwIjoiY29waWxvdCIsImF1dGhfdGltZSI6MCwic2Vzc2lvbl9zdGF0ZSI6ImNjMTFhZjIyLTEyMzEtNDgzYi1iMDRkLTVmZjIxMjAxMzQ4ZiIsImFjciI6IjEiLCJuYW1lIjoiIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiYXBpb25lc2FsZXNjb2RlIiwiY2NVTmFtZSI6ImFwaW9uZXNhbGVzY29kZSJ9.FDKMYiJ6mlZVy5KMddejB7M444bMKGUUJ6jR1lFKQo0keo_W5XJvn8ioFMl_FrfQ5Jj4GoOJf2fs9ddDLmjzjVfvD9KYOH3bVtxBcuSllITdsL8GzKmlTbaObOW4q58Pf34iqiWnJ6cjPChVqPvIepp105gQgcIg2I044j-Q_duOpt_20rtmOjYNQ7LMnO4vVhx3QAuE4Pg4hEnuvk6Lskouoo6E3G6QbhTCdfpCMvz7aBD3SzepmAWWG0jA2BHHNSlOMvkPxNaydD7kx311xIKANy4cAyYC3jU2igTeFale7krVuR5zXtNMc9kcvNwBBmiz10v4D_M6luWr-QWXvg",
    "not-before-policy": 1498510947,
    "session_state": "cc11af22-1231-483b-b04d-5ff21201348f"
}

Once the token is obtained it can be used to Authenticate to any given resource of the API by adding it to the request via a Authorization header.

  • Authorization: Bearer accessTokenValue

Refresh Token Endpoint

Path

https://accountsuat.cardconnect.com/auth/realms/cardpointe/protocol/openid-connect/token

Method

POST

Request Body Content

Example Request Object
curl -X POST http://accountsuat.cardconnect.com/auth/realms/cardpointe/protocol/openid-connect/token  -H "Content-Type: application/x-www-form-urlencoded" -d "grant_Type=refresh_token" -d 'client_id=copilot' -d 'refresh_token=<value of refresh token>' -d 'client_secret=111111111-1fc1-111f-1f1f-b1111111111'
Field Required Default Value Comments
grant_type yes refresh_token
client_id yes copilot
refresh_token yes The value of the refresh token from the original Access Token Endpoint's response
client_secret yes Once you are registered for copilot API access you will be provided the client_secret value

The response will return JSON with an access_token, which is a signed OpenID Connect JSON Web Token (JWT).

Example Response Object
{
    "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJTRFRKbGlUWGhUdnFMakZsa3VvT2l1V0I5MHREWEI0UXdxUmFxdkFOeVRNIn0.eyJqdGkiOiJlMThhYmY4ZS1hODI4LTRjZDEtYTM4MC1lYjkyNGM3ZjU1MmMiLCJleHAiOjE1MDE1NDU0NDQsIm5iZiI6MCwiaWF0IjoxNTAxNTMxMDQ0LCJpc3MiOiJodHRwczovL2FjY291bnRzLXFhLmNhcmRjb25uZWN0LmNvbS9hdXRoL3JlYWxtcy9tY25hdGl2ZWFwaSIsImF1ZCI6Im1jbmF0aXZlYXBpIiwic3ViIjoiZDk3MzdhZjAtNTcxMS00YjJhLWJmN2ItOWQ5MTE1MzUyZGNmIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoibWNuYXRpdmVhcGkiLCJhdXRoX3RpbWUiOjAsInNlc3Npb25fc3RhdGUiOiJlZjlkNjcwMi1hMWRjLTQ1MWYtOGYyZS01NzNkOGFlMzc0MzUiLCJhY3IiOiIxIiwiY2xpZW50X3Nlc3Npb24iOiJjNmQ3YmM1My0yNzBlLTRlNzYtYWMyNS1lOWM4MDg5NjExZDQiLCJhbGxvd2VkLW9yaWdpbnMiOltdLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50Iiwidmlldy1wcm9maWxlIl19fSwiY2NQYXlwYW5lbFVzZXJUeXBlIjoiYWRtaW4iLCJjY1VzZXJUeXBlIjoiMyIsImNjQ3VzdElkIjoiNjIyNzYyIiwiY2NUWiI6IkFtZXJpY2EvTmV3X1lvcmsiLCJuYW1lIjoiIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiYWRtaW4xK3NpbmdsZW9tYWhhQGdtYWlsLmNvbSIsImNjVXNlcklkIjoiMTkzMTMiLCJjY1VOYW1lIjoiYWRtaW4xK3NpbmdsZW9tYWhhQGdtYWlsLmNvbSIsImNjTWlkcyI6WyI4Njg2ODY4Njg2ODYxMDAwIiwiNDg2ODg2MTI0NDQ0IiwiNzE0NTIyNTU0NDg4IiwiNDg2ODY4Njg5OTE2Il19.yd7iO8Kyop3BFvCExI6EtUxfvEjJS-UKqzfK5V9kK9fDPVrpqsUrAzr11jspyKtTuUPGdK7LffOP0tti_LcYBKvQHqd08nprDxeF-_mhrsbVK_81_LGp9wG-buV_0RTftIA_K-XINdUQJOnnk4vfXJ0YZLULPMO6BBmbYgH62RmUZ-cdFkmvqzWG5xxxxxxxxxyyyyy",
    "expires_in": 14400,
    "refresh_expires_in": 28800,
    "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJTRFRKbGlUWGhUdnFMakZsa3VvT2l1V0I5MHREWEI0UXdxUmFxdkFOeVRNIn0.eyJqdGkiOiJjYTRiMGE2NS0yOGNhLTQ4NzMtYTZlZS00MDQxN2U4YjMxZWUiLCJleHAiOjE1MDE1NTk4NDQsIm5iZiI6MCwiaWF0IjoxNTAxNTMxMDQ0LCJpc3MiOiJodHRwczovL2FjY291bnRzLXFhLmNhcmRjb25uZWN0LmNvbS9hdXRoL3JlYWxtcy9tY25hdGl2ZWFwaSIsImF1ZCI6Im1jbmF0aXZlYXBpIiwic3ViIjoiZDk3MzdhZjAtNTcxMS00YjJhLWJmN2ItOWQ5MTE1MzUyZGNmIiwidHlwIjoiUmVmcmVzaCIsImF6cCI6Im1jbmF0aXZlYXBpIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiZWY5ZDY3MDItYTFkYy00NTFmLThmMmUtNTczZDhhZTM3NDM1IiwiY2xpZW50X3Nlc3Npb24iOiJjNmQ3YmM1My0yNzBlLTRlNzYtYWMyNS1lOWM4MDg5NjExZDQiLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50Iiwidmlldy1wcm9maWxlIl19fX0.T1Pl_8a93BAD6mcelcA_udStrXxH8ovZbzRLnn3WZIl89o3n0kO1fWHuRQpZIFQe0sgiN_TZJrfCfFCL5_SFLae6laqueb3r58lP4_IuIzqClggxZA2DDc5xzZ38Wc61HGCdat5WlscSfXXdFjeWS8iaWJmphJQeH_Jxyyggvv",
    "token_type": "bearer",
    "id_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJTRFRKbGlUWGhUdnFMakZsa3VvT2l1V0I5MHREWEI0UXdxUmFxdkFOeVRNIn0.eyJqdGkiOiIzMjAxYTNhOC0xYjJkLTQ2NWUtOTU2OC04MWMxYWVjNGRmYjgiLCJleHAiOjE1MDE1NDU0NDQsIm5iZiI6MCwiaWF0IjoxNTAxNTMxMDQ0LCJpc3MiOiJodHRwczovL2FjY291bnRzLXFhLmNhcmRjb25uZWN0LmNvbS9hdXRoL3JlYWxtcy9tY25hdGl2ZWFwaSIsImF1ZCI6Im1jbmF0aXZlYXBpIiwic3ViIjoiZDk3MzdhZjAtNTcxMS00YjJhLWJmN2ItOWQ5MTE1MzUyZGNmIiwidHlwIjoiSUQiLCJhenAiOiJtY25hdGl2ZWFwaSIsImF1dGhfdGltZSI6MCwic2Vzc2lvbl9zdGF0ZSI6ImVmOWQ2NzAyLWExZGMtNDUxZi04ZjJlLTU3M2Q4YWUzNzQzNSIsImFjciI6IjEiLCJjY1BheXBhbmVsVXNlclR5cGUiOiJhZG1pbiIsImNjVXNlclR5cGUiOiIzIiwiY2NDdXN0SWQiOiI2MjI3NjIiLCJjY1RaIjoiQW1lcmljYS9OZXdfWW9yayIsIm5hbWUiOiIiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJhZG1pbjErc2luZ2xlb21haGFAZ21haWwuY29tIiwiY2NVc2VySWQiOiIxOTMxMyIsImNjVU5hbWUiOiJhZG1pbjErc2luZ2xlb21haGFAZ21haWwuY29tIiwiY2NNaWRzIjpbIjg2ODY4Njg2ODY4NjEwMDAiLCI0ODY4ODYxMjQ0NDQiLCI3MTQ1MjI1NTQ0ODgiLCI0ODY4Njg2ODk5MTYiXX0.JBFYvrEs73k6a0uZ2f4C1yO1Wkw_ef7QdSJMQMd2dIP19QhezS3JRv7B0TQyua821TogtJaIlyTr72DeB_nv5JZpOWGxKWIkc_yW6K9l1vP-xxx-yyyyy",
    "not-before-policy": 0,
    "session_state": "ef9d6702-a1dc-451f-8f2e-573d11117435"
}

Once the token is obtained it can be used to Authenticate to any given resource of the API by adding it to the request via a Authorization header.

  • Authorization: Bearer accessTokenValue

Request Overview

Whenever possible, newer versions of the API will be backwards compatible with older versions. Since this will not always be possible, older version will be supported for a certain amount of time. Therefore, every request will need to include a request header named X-CopilotAPI-Version with a value of the version your application is currently requesting.

Example Header

Authorization: Bearer accessTokenValue
Content-type: application/json
X-CopilotAPI-Version: 1.0

Resources

Create Merchant Endpoint

Path

https://copilot-api-uat.cardconnect.com/merchant

Method

POST

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "templateId": 8888,
    "merchant": { ... } ,
    "ownerSiteUser": { ... }
}
Field Size Type Required Comments
templateId 19 Long yes The merchant template needs to exist prior to any create endpoint calls.
merchant n/a merchant yes The merchant definition.
ownerSiteUser n/a site user no This is the merchant's CardPointe user. If this is null, a CardPointe user will be created using the ownership fields in the merchant.

Response Body Content

Example Merchant Create Response Object
{
    "merchantId": 8772958,
    "errors": null
}
Field Size Type Comments
merchantId 19 Long The merchantId of the merchant
errors n/a error The error array if there was a problem creating the merchant.

Create Merchant Request Full Example

Example Merchant Create Request Object (Flat Pricing)
{
    "templateId": 9999,
    "merchant": {
        "salesCode": "API1",
        "akaBusinessName": "Mikes API Merchant AKA1",
        "custPrimaryAcctFlg": false,
        "dbaName": "Mikes API Merchant DBA",
        "legalBusinessName": "Mikes API Legal Biz Name",
        "taxFilingMethod": "TIN"    
        "taxFilingName": "Mike API Legal Biz Name", 
        "demographic": {
            "businessIncorporatedStateCd": "CO",
            "merchantTimeZone": "MT",
            "websiteAddress": "www.test.com",
            "businessPhone": "555-555-5555",
            "businessFax": "444-444-4444",
            "businessAddress": {
                "address1": "123 Fake St",
                "address2": "Apt. 23",
                "city": "Fakeville",
                "countryCd": "US",
                "stateCd": "IL",
                "zip": "11111"
            },
            "mailingAddress": {
                "address1": "123 Main St.",
                "address2": "Suite 3001",
                "city": "Boulder",
                "countryCd": "US",
                "stateCd": "CO",
                "zip": "11223"
            }
        },
        "businessIdTypeCd": "ARTICLE",
        "businessStartDate": "04/26/2002",
        "bankDetail": {
            "depositBank": {
                "bankAcctNum": "12345678",
                "bankRoutingNum": "445566778",
                "bankAcctTypeCd": "BIZ",
                "bankName": "Deposit Bank"
            },
            "withdrawalBank": {
                "bankAcctNum": "87654321",
                "bankRoutingNum": "887766554",
                "bankAcctTypeCd": "BIZ",
                "bankName": "Withdrawal Bank"
            }
        },
        "ownership": {
            "owner": {
                "ownerAddress": {
                    "address1": "123 Fake St",
                    "address2": "Apt 121",
                    "city": "Boulder",
                    "countryCd": "US",
                    "stateCd": "CO",
                    "zip": "19335"
                },
                "ownerEmail": "mowner@test.com",
                "ownerName": "Mike Owner",
                "ownerDob": "09/22/1997",
                "ownerPhone": "555-555-5555",
                "ownerMobilePhone": "555-555-5555",
                "ownerSSN": "111-22-3333",                      
                "ownerTitle": "CEO"
            },
            "ownershipTypeCd": "INDIVSOLE",
            "driversLicenseNumber": "2342343243",
            "driversLicenseStateCd": "CO",
            "ownerOwnershipPct": 100
        },
        "merchantContactInfo": {
            "contactName": "John Doe",
            "contactEmail": "jdoe@contactemail.com",
            "contactPhone": "555-555-5555"
        },
        "processing": {
            "platformDetails": {
                "backEndMid": null,
                "frontEndMid": null,
                "processorReportingMid": null,
                "backEndPlatformCd": null,
                "frontEndPlatformCd": null,
                "amexProgramAssetCd": "OPTBLUE",
                "amexProgramMid": "2341251235434",
                "discoverMid": "2134123423555",
                "discoverProgramCd": "EASI",
                "acquiringFlg": true,
                "taxId": "485968574",
                "tid": "968596859",
                "busnsId": "234444234234",
                "busnsIdPlaceOfIssue": "CO",
                "currencyCode": "USD",
                "mccId": "3076",
                "businessDescription": "Business Description"
            },
            "businessDetails": {
                "customerBillPriorToShipFlg": false,
                "depositReqForFulfillFlg": true,
                "whenCustomerChargedCd": "INADVANCE",
                "refundPolicyCd": "EXCHONLY",
                "serviceProvidedInCd": "30LESS"
            },
            "volumeDetails": {
                "averageMonthlyVolume": 9999.00,
                "highTicketAmount": 99.99,
                "averageTicketAmount": 9.99
            },
            "deliveryPercentages": {
                "dlvry0To7DaysPct": 97,
                "dlvry15To30DaysPct": 1,
                "dlvry8To14DaysPct": 1,
                "dlvryOver30DaysPct": 1
            },
            "modeOfTransaction": {
                "eCommercePct": 0,
                "keyedPct": 20,
                "mailOrderPct": 30,
                "swipedPct": 50
            }
        },
        "webLeadFlg": true,
        "pricing": {
            "flatPricing": {
                "amex": {
                    "esaQualDiscountPct": 22.00,
                    "optBlueQualDiscountPct": 11.00
                },
                "discover": {
                    "qualCreditDiscountPct": 1.00
                },
                "mastercard": {
                    "qualCreditDiscountPct": 5.00
                },
                "visa": {
                    "qualCreditDiscountPct": 4.00
                }
            }
        },
        "fees": {
            "achBatchFee": 1.11,
            "addressVerifFee": 2.22,
            "annualMembershipFee": 3.33,
            "appFee": 4.44,
            "authFee": 5.55,
            "chargebackFee": 6.66,
            "dataBreachFee": 7.77,
            "ddaRejectFee": 8.88,
            "earlyCancelFee": 9.99,
            "minProcessFee": 20.00,
            "monthlyEquipmentRentalFee": 10.00,     
            "pciAnnualFee": 21.00,
            "pciNonComplianceFee": 100.00,
            "regProdMonthlyFee": 200.00,
            "retrievalFee": 10.00,
            "statementFee": 27.99,
            "transactionFee": 0.05,
            "voiceAuthFee": 0.10,
            "wirelessActivationFee": 0.10,
            "wirelessFee": 50.00,
            "duesAndAssessmentsFlg": true,
            "passthruInterchgCostsFlg": true
        }
    },
    "ownerSiteUser": {
        "firstName": "Mike",
        "lastName": "Owner",
        "email": "mikeowner@test.com"
    }
}
IC-Plus Pricing
    "pricing": {
            "icPlusPricing":{
                "amex": {
                    "optBlueQualDiscountPct": 8.00                  
                },
                "discover": {
                    "qualCreditDiscountPct": 1.00
                },
                "mastercard": {
                    "qualCreditDiscountPct": 5.00
                },
                "visa": {
                    "qualCreditDiscountPct": 4.00
                }
            }
    }

Update Merchant Endpoint

This will update the merchant.

Partial Updates
Only objects passed in will be updated. For instance, if merchant.ownership is null or is not passed into the request, no changes will be made to the ownership. If an object is passed in, all fields fields in that object will be updated. For instance, if the merchant.ownership object is passed in but the merchant.ownership.driversLicenseNumber is not passed in, it will be set to null.

CardPointe user
Unlike merchant create, a CardPointe user will not be created from the merchant.ownership.owner fields. Once a merchant is created, updating the owner's CardPointe user can be done from the Owner Site User Endpoints. Alternitively, the ownerSiteUser object can be passed into the merchant update and either a new owner user will be created or the existing owner user will be updated (See the Example Request Object below).

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}

Method

PUT

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "merchant": { ... } ,
    "ownerSiteUser": { ... }
}
Field Size Type Required Comments
merchant n/a merchant yes The merchant definition.
ownerSiteUser n/a site user no This is the merchant's CardPointe user. If this is null, no changes will be made to the owner site user.

Response Body Content

Example Merchant Create Response Object
{
    "errors": null
}
Field Size Type Comments
errors n/a error The error array if there was a problem creating the merchant.

Merchant Find Endpoint

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Example Merchant Find Response Object
{
    "errors": null,
    "merchant": {
        "merchantId": 85379072,
        "akaBusinessName": "Mikes API Merchant AKA1",
        "custPrimaryAcctFlg": true,
        "dbaName": "Mikes API Merchant DBA",
        "legalBusinessName": "Mikes API Legal Biz Name",
        "demographic": {
            "businessIncorporatedStateCd": "CO",
            "merchantTimeZone": "MT",
            "websiteAddress": "www.test.com",
            "businessPhone": "5555555555",
            "businessFax": "4444444444",
            "businessAddress": {
                "address1": "123 Fake St",
                "address2": "Apt. 23",
                "city": "Fakeville",
                "countryCd": "US",
                "stateCd": "IL",
                "zip": "11111"
            },
            "mailingAddress": {
                "address1": "123 Main St.",
                "address2": "Suite 3001",
                "city": "Boulder",
                "countryCd": "US",
                "stateCd": "CO",
                "zip": "11223"
            }
        },
        "businessIdTypeCd": "ARTICLE",
        "businessStartDate": "04/26/2002",
        "bankDetail": {
            "depositBank": {
                "bankAcctNum": "acct num",
                "bankRoutingNum": "998877665",
                "bankAcctTypeCd": "BIZ",
                "bankName": "banck name"
            },
            "withdrawalBank": {
                "bankAcctNum": "acct num",
                "bankRoutingNum": "998877665",
                "bankAcctTypeCd": "BIZ",
                "bankName": "banck name"
            }
        },
        "ownership": {
            "owner": {
                "ownerAddress": {
                    "address1": "123 Fake St",
                    "address2": "Apt 121",
                    "city": "Boulder",
                    "countryCd": "US",
                    "stateCd": "CO",
                    "zip": "19335"
                },
                "ownerEmail": "msumm@test.com",
                "ownerName": "Mike Owner",
                "ownerDob": "09/22/1997",
                "ownerPhone": "5555555555",
                "ownerTitle": "CEO"
            },
            "ownershipTypeCd": "INDIVSOLE",
            "driversLicenseNumber": "2342343243",
            "driversLicenseStateCd": "CO",
            "ownerOwnershipPct": 100
        },
        "ownerSiteUserId": 234932,
        "merchantContactInfo": {
            "contactName": "John Doe",
            "contactEmail": "jdoe@contactemail.com",
            "contactPhone": "5555555555"
        },
        "salesCode": "ED15",
        "processing": {
            "platformDetails": {
                "backEndMid": null,
                "frontEndMid": null,
                "processorReportingMid": null,
                "backEndPlatformCd": null,
                "frontEndPlatformCd": null,
                "amexProgramAssetCd": "OPTBLUE",
                "amexProgramMid": "2341251235434",
                "discoverMid": "2134123423555",
                "discoverProgramCd": "EASI",
                "acquiringFlg": true,
                "taxId": "485968574",
                "tid": "968596859",
                "busnsId": "234444234234",
                "busnsIdPlaceOfIssue": "CO",
                "mccId": 3076,
                "currencyCode": "USD",
                "businessDescription": "Business Description"
            },
            "businessDetails": {
                "customerBillPriorToShipFlg": false,
                "depositReqForFulfillFlg": true,
                "whenCustomerChargedCd": "INADVANCE",
                "refundPolicyCd": "EXCHONLY",
                "serviceProvidedInCd": "30LESS"
            },
            "volumeDetails": {
                "averageMonthlyVolume": 9999,
                "highTicketAmount": 99.99,
                "averageTicketAmount": 9.99
            },
            "deliveryPercentages": {
                "dlvry0To7DaysPct": 97,
                "dlvry15To30DaysPct": 1,
                "dlvry8To14DaysPct": 1,
                "dlvryOver30DaysPct": 1
            },
            "modeOfTransaction": {
                "eCommercePct": 0,
                "keyedPct": 20,
                "mailOrderPct": 30,
                "swipedPct": 50
            }
        },
        "webLeadFlg": true,
        "pricing": {
            "flatPricing": { 
                "amex": { 
                     "esaQualDiscountPct": 22.00,
                     "optBlueQualDiscountPct": 11.00   
                },
                "discover": { 
                     "qualCreditDiscountPct": 1.00 
                },
                "mastercard": { 
                     "qualCreditDiscountPct": 5.00 
                },
                "visa": { 
                     "qualCreditDiscountPct": 4.00 
                }
            },
            "icPlusPricing": null
        },
        "fees": {
            "achBatchFee": 1.11,
            "addressVerifFee": 2.22,
            "annualMembershipFee": 3.33,
            "appFee": 4.44,
            "authFee": 5.55,
            "chargebackFee": 6.66,
            "dataBreachFee": 7.77,
            "ddaRejectFee": 8.88,
            "earlyCancelFee": 9.99,
            "minProcessFee": 20,
            "monthlyEquipmentRentalFee": 10.00,     
            "pciAnnualFee": 21,
            "pciNonComplianceFee": 100,
            "regProdMonthlyFee": 200,
            "retrievalFee": 10,
            "statementFee": 27.99,
            "tranFee": 0.05,
            "voiceAuthFee": 0.1,
            "wirelessActivationFee": 0.1,
            "wirelessFee": 50,
            "duesAndAssessmentsFlg": true,
            "passthruInterchgCostsFlg": true
        },
        "customFields": [
            {
                "customFieldLabel": "Custom Field 1",
                "isRequired": 0,
                "isActive": 1,
                "userFieldNumber": 1,
                "customFieldValue": "example value 1"
            },
            {
                "customFieldLabel": "Custom Field 2",
                "isRequired": 1,
                "isActive": 1,
                "userFieldNumber": 2,
                "customFieldValue": "example value 2"
            }
        ]           
        "customerId": 84806382,
        "merchantStatus": {
            "approvedDatetime": null,
            "boardedDatetime": null,
            "cancelledDatetime": null,
            "declinedDatetime": null,
            "liveDatetime": null,
            "boardingProcessPendingFlg": false,
            "boardingProcessStatusCd": "INPROG",
            "gatewayBoardingStatusCd": "NOT_BOARDED"        
        },
        "signatureStatus": null,
        "dateTimeChanged": "07/11/2017 06:39:41 PM",
        "dateTimeCreated": "07/11/2017 06:39:41 PM"
    },
    "ownerSiteUser": {
        "siteUserId": 234932,
        "firstName": "Mike",
        "lastName": "Owner",
        "email": "msumm@test.com"
    }
}

Merchant Status Endpoint

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId/status

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Example Merchant Status Response Object
{
    "errors": null,
    "merchantStatus": {
        "approvedDatetime": "10/21/2013 08:18:18 AM",
        "boardedDatetime": "10/21/2013 11:41:00 AM",
        "cancelledDatetime": null,
        "declinedDatetime": null,
        "liveDatetime": "10/22/2013 07:09:09 AM",
        "boardingProcessPendingFlg": false,
        "boardingProcessStatusCd": "LIVE",
        "gatewayBoardingStatusCd": "BOARDED"        
    }
}

Owner CardPointe User Create/Update

This is the site user that the owner will use to log into CardPointe to sign the application. This endpoint can only be called if the user has not already registered their CardPointe user account. After that, the user can manage their own profile from CardPointe.

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/ownerSiteUser

Method

PUT

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "ownerSiteUser": {
        "firstName": "Bill",
        "lastName": "Blick",
        "email": "bill.blick@test.com"
    }
}
Field Size Type Required Comments
ownerSiteUser n/a site user yes

Response Body Content

Example
{
    "errors": null
}
Field Size Type Comments
errors n/a error The error array if there was a problem creating owner's CardPointe User.

Owner CardPointe User find

This is the site user that the owner will use to log into CardPointe to sign the application. This endpoint can only be called if the user has not already registered their CardPointe user account. After that, the user can manage their own profile from CardPointe.

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/ownerSiteUser

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Example
{
    "ownerSiteUser": {
        "firstName": "Bill",
        "lastName": "Blick",
        "email": "bill.blick@test.com"
    },
    "error": null
}
Field Size Type Comments
ownerSiteUser n/a site user
error n/a error The error array if there an error finding the owner's CardPointe user

Request Signature Endpoint

The Merchant needs to be in the In Progress state to request a signature. All fees and pricing need to be submitted and the merchant must have an owner user.

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/signature

Method

PUT

Consumes

application/json

Produces

application/json

Request Body Content

No request body needed for this endpoint

Response Body Content

If the request signature was successful, the signature url is included in the request signature response.

Example Response Object
{
    "errors": null,
    "signatureUrl": "https://cardpointe-uat.cardconnect.com/account/login#/password/02d34909-93b3-4b50-adf4-1ff91e92b33c/c08709da-8af1-4f35-8e0f-f52eca60ef81?newuser"
}

Signature Status Endpoint

This endpoint will return the merchants signature status. This includes a page url for the owner to fill out and sign. If the merchant application has already been signed or the owner user is already a registered CardPointe user, the url will be simply be a link to the CardPointe login page.

The signatureStatusCd will be one of the following: NOT_SENT, PENDING, or SIGNED. NOT_SENT represents a merchant that is not ready for the owner to sign the application and an email has not been sent to the owner. PENDING represents a signature request has been sent to the owner. SIGNED means the owner has signed the application.

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/signature

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Example Response Object
{
    "errors": null,
    "signatureStatus": {
         "signatureUrl": "https://cardpointe-uat.cardconnect.com/account/login#/password/02d34909-93b3-4b50-adf4-1ff91e92b33c/c08709da-8af1-4f35-8e0f-f52eca60ef81?newuser" 
        "signedSiteUserId": 237322,
        "signedDateTime": "07/19/2017 04:44:28 PM",
        "signer": {
            "email": "mowner@test.com",
            "firstName": "Mike Lucas Owner",
            "lastName": null,
            "ipAddress": "192.168.125.126",
            "personalGuaranteeFlg": true
        }
    }
}

Retract Signature Endpoint

The Merchant needs to be in the Out For Signature state to retract the signature. This endpoint will put the merchant back in the In Progress state.

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/signature

Method

DELETE

Consumes

application/json

Produces

application/json

Request Body Content

No request body needed for this endpoint

Merchant Attachment Create

Create a merchant attachment

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/attachment

Method

PUT

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "attachment" : {
        "fileName" : "VoidedCheck.pdf",
        "mimeType" : "application/pdf",
        "description" : "This is the voided check",
        "attachmentTypeCd" : "VOIDBNKCHK1",
        "document" : "JVBERi0xLjEKJcKlwrHDqwoKMSAwIG9iagogIDw8IC9UeXBlIC9DYXRhbG9nCiAgICAgL1BhZ2Vz
IDIgMCBSCiAgPj4KZW5kb2JqCgoyIDAgb2JqCiAgPDwgL1R5cGUgL1BhZ2VzCiAgICAgL0tpZHMg
WzMgMCBSXQogICAgIC9Db3VudCAxCiAgICAgL01lZGlhQm94IFswIDAgMzAwIDE0NF0KICA+Pgpl
bmRvYmoKCjMgMCBvYmoKICA8PCAgL1R5cGUgL1BhZ2UKICAgICAgL1BhcmVudCAyIDAgUgogICAg
ICAvUmVzb3VyY2VzCiAgICAgICA8PCAvRm9udAogICAgICAgICAgIDw8IC9GMQogICAgICAgICAg
ICAgICA8PCAvVHlwZSAvRm9udAogICAgICAgICAgICAgICAgICAvU3VidHlwZSAvVHlwZTEKICAg
ICAgICAgICAgICAgICAgL0Jhc2VGb250IC9UaW1lcy1Sb21hbgogICAgICAgICAgICAgICA+Pgog
ICAgICAgICAgID4+CiAgICAgICA+PgogICAgICAvQ29udGVudHMgNCAwIFIKICA+PgplbmRvYmoK
CjQgMCBvYmoKICA8PCAvTGVuZ3RoIDU1ID4+CnN0cmVhbQogIEJUCiAgICAvRjEgMTggVGYKICAg
IDAgMCBUZAogICAgKEhlbGxvIFdvcmxkKSBUagogIEVUCmVuZHN0cmVhbQplbmRvYmoKCnhyZWYK
MCA1CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAwMDAxOCAwMDAwMCBuIAowMDAwMDAwMDc3IDAw
MDAwIG4gCjAwMDAwMDAxNzggMDAwMDAgbiAKMDAwMDAwMDQ1NyAwMDAwMCBuIAp0cmFpbGVyCiAg
PDwgIC9Sb290IDEgMCBSCiAgICAgIC9TaXplIDUKICA+PgpzdGFydHhyZWYKNTY1CiUlRU9GCg=="
    }
}
Field Size Type Required Comments
attachment n/a attachment yes

Response Body Content

Example
{
    "errors": null,
    "attachmentId": 1234
}
Field Size Type Comments
errors n/a error The error array if there was a problem creating the attachment.
attachmentId n/a Integer The attachment id

Equipment Catalog List

List the equipment available for a sales code.

Path

https://copilot-api-uat.cardconnect.com/equipmentCatalog/list?salesCode={salesCode}&equipmentSupplierCd={equipmentSupplierCd}&equipmentTypeCd={equipmentTypeCd}&pageNumber={pageNumber}&pageSize={pageSize}

Method

GET

Consumes

application/json

Produces

application/json

Request Parameters

Field Size Type Required Comments
salesCode 19 String yes The salesCode
equipmentSupplierCd 20 enumeration no The equipment supplier
equipmentTypeCd 20 enumeration no The equipment type
pageNumber n/a Integer no The page number (starting with 1)
pageSize n/a Integer no The page size

Response Body Content

Example Equipment Catalog List Response Object
{
    "rows": [
        {
            "equipmentId": 123,
            "equipmentName": "Generic Card Swiper",
            "description": "Equipment Description",
            "make": "Acme",
            "model": "200X",
            "imageUrl": "http://image/image.png",
            "sku": null,
            "platformCd": null,
            "equipmentTypeCd": "TERMINAL",
            "equipmentSupplierCd": "CARDCONNECT",
            "defaultPrice": 199,
            "defaultPlanPrice": 25,
            "allowCustomBillingFlg": 1,
            "standardShippingPrice": 20,
            "expeditedShippingPrice": 25
        }
    ],
    "totalServerItemsCount": 4,
    "totalDisplayItemsCount": 1,
    "moreRowsAvailable": false,
    "columnSums": null,
    "errors": null
}
Field Size Type Comments
rows n/a List of equipment List of equipment definitions.
totalServerItemsCount n/a Long Total number of rows
totalDisplayItemsCount n/a Long The total number of rows before and including this page
moreRowsAvailable n/a Boolean True if the are more rows available on the next page
columnSums n/a n/a Internal use
errors n/a error The error array if there was a problem creating the order.

Create Order

Path

https://copilot-api-uat.cardconnect.com/order

Method

POST

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "order": {
            "merchantId": {merchantId},
            "equipmentId": {equipmentId},
            "orderNotes": "Order Notes example",
            "quantity": 1,
            "unitPrice": 11,
            "billToCd": "PARTNER",
            "billingFrequencyCd": "ONETIME",
            "shippingDetails": {
                "shippingAddress": {
                    "address1": "123 Fake St",
                    "address2": "Apt. 23",
                    "city": "Fakeville",
                    "countryCd": "US",
                    "stateCd": "IL",
                    "zip": "11111"
                },
                "shipToAttn": "John Doe",
                "shipToAttnEmail": "test@test.com",
                "shippingMethodCd": "STANDARD",
                "shippingBillToCd": "PARTNER",
                "shippingCarrierCd": "FEDEX",
                "trackingNumber": "12345abc",       
                "shippingCost": 10.50,                  
                "merchantContactPhone": "555-555-5555",
                "merchantContactPhoneExt": "55555",
                "poNumber": "4455",                                 
            }
        }
}
Field Size Type Required Comments
order n/a order yes The order definition.

Response Body Content

Example Order Create Response Object
{
    "orderId": 8772958,
    "errors": null
}
Field Size Type Comments
orderId 19 Long The orderId of the order
errors n/a error The error array if there was a problem creating the order.

Update Order Endpoint

Path

https://copilot-api-uat.cardconnect.com/order/{orderId}

Method

PUT

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object

Note: the merchantId and equipmentId cannot be changed once an order is created.

{
    "order": {
            "orderNotes": "Order Notes example",
            "quantity": 1,
            "unitPrice": 11,
            "billToCd": "PARTNER",
            "billingFrequencyCd": "ONETIME",
            "shippingDetails": {
                "shippingAddress": {
                    "address1": "123 Fake St",
                    "address2": "Apt. 23",
                    "city": "Fakeville",
                    "countryCd": "US",
                    "stateCd": "IL",
                    "zip": "11111"
                },
                "shipToAttn": "John Doe",
                "shipToAttnEmail": "test@test.com",
                "shippingMethodCd": "STANDARD",
                "shippingBillToCd": "PARTNER",
                "shippingCarrierCd": "FEDEX",
                "trackingNumber": "12345abc",       
                "shippingCost": 10.50,                  
                "merchantContactPhone": "555-555-5555",
                "merchantContactPhoneExt": "55555",
                "poNumber": "4455",                                 
            }
        }
}
Field Size Type Required Comments
order n/a order yes The order definition.

Response Body Content

Example Order Create Response Object
{
    "errors": null
}
Field Size Type Comments
errors n/a error The error array if the was a problem updating the order.

Get Order Endpoint

Path

https://copilot-api-uat.cardconnect.com/order/{orderId}

Method

GET

Produces

application/json

Response Body Content

Example Get Order Response Object
{
    "order" : {...}
}
Field Size Type Comments
order n/a order The order definition.

Find Orders Endpoint

Path

https://copilot-api-uat.cardconnect.com/orders?merchantId={merchantId}&pageNumber={pageNumber}&pageSize={pageSize}

Method

GET

Produces

application/json

Request Parameters

Field Size Type Required Comments
merchantId 19 Long yes The merchantId of the merchant
pageNumber n/a Integer no The page number (starting with 1)
pageSize n/a Integer no The page size

Response Body Content

Example Find Orders Response Object
{
    "orders" : [{...}, {...}, ...]
}
Field Size Type Comments
orders n/a List of order The order definitions.

Cancel Order Endpoint

Only orders in the NEW status can be canceled.

Path

https://copilot-api-uat.cardconnect.com/order/{orderId}/cancel

Method

POST

Produces

application/json

Response Body Content

Example Cancel Order Response Object
{
    "errors": null
}
Field Size Type Comments
errors n/a error The error array if the was a problem canceling the order.

Create Billing Plan Endpoint

This endpoint will create a new billing plan

Path

https://copilot-api-uat.cardconnect.com/billingplan/create

Method

POST

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "billingPlan": {...}
}
Field Size Type Required Comments
billingPlan n/a Billing Plan yes The billing plan definition.

Response Body Content

Example Billing Plan Create Response Object
{
    "billingPlan": {...},
    "errors": null
}
Field Size Type Comments
billingPlan n/a Billing Plan The billing plan definition.
error n/a error The error array if the was a problem creating the billing plan.

Cancel Billing Plan Endpoint

This endpoint will cancel a billing plan

Path

https://copilot-api-uat.cardconnect.com/billingplan/cancel

Method

POST

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "merchId": "888888888886",
    "billingPlanId" : "11382"
}
Field Size Type Required Comments
merchId 11 Number yes The mid the billing plan belongs to.
billingPlanId 11 Number yes The billing plan id to cancel.

Response Body Content

Example Billing Plan Cancel Response Object
{
    "billingPlan": {...},
    "errors": null
}
Field Size Type Comments
billingPlan n/a Billing Plan The billing plan definition.
error n/a error The error array if the was a problem cancelling the billing plan.

This endpoint will return a 404 status code if the billing plan cannot be found.

List Billing Plans Endpoint

This endpoint will list billing plans for a merchant

Path

https://copilot-api-uat.cardconnect.com/billingplan/list/<merchId>

Method

Get

Produces

application/json

Field Size Type Required Comments
merchId 11 Number yes The mid to search for billing plans.

Response Body Content

Example Billing Plan Response Object
{
    "billingPlans": {...},
    "errors": null
}
Field Size Type Comments
billingPlans n/a Array of Billing Plan An array of billing plans without any payment schedule information. Use the get endpoint to retrieve scheduled payments for a specific billing plan
error n/a error The error array if the was a problem getting the billing plan.

This endpoint will return a 404 status code if no billing plans can be found.

Get Billing Plan Endpoint

This endpoint will get a billing plan

Path

https://copilot-api-uat.cardconnect.com/billingplan/<merchId>/<billingPlanId>

Method

Get

Produces

application/json

Field Size Type Required Comments
merchId 11 Number yes The mid the billing plan belongs to.
billingPlanId 11 Number yes The billing plan id to cancel.

Response Body Content

Example Billing Plan Response Object
{
    "billingPlan": {...},
    "errors": null
}
Field Size Type Comments
billingPlan n/a Billing Plan The billing plan definition.
error n/a error The error array if the was a problem getting the billing plan.

This endpoint will return a 404 status code if the billing plan cannot be found.

Update Billing Plan Account Endpoint

This endpoint will update the payment account for a billing plan

Path

https://copilot-api-uat.cardconnect.com/billingplan/updateAccount

Method

POST

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "merchId": "434315170887",
    "billingPlanId": "11992",
    "profileId": "11416055053282854657",
    "acctId": "2"
}
Field Size Type Required Comments
merchId 11 Number yes The mid the billing plan belongs to.
billingPlanId 11 Number yes The billing plan id to update.
profileId 20 Number yes The profile to bill.
acctId 3 Number no The account id within the profile to use. If not provided, the default account will be used.

Response Body Content

Example Billing Plan Response Object
{
    "billingPlan": {...},
    "errors": null
}
Field Size Type Comments
billingPlan n/a Billing Plan The billing plan definition.
error n/a error The error array if the was a problem getting the billing plan.

This endpoint will return a 404 status code if the billing plan cannot be found.

Mark Billing Plan Payment as Paid

This endpoint will update the status of a schedule payment to 'paid'

Path

https://copilot-api-uat.cardconnect.com/billingplan/markAsPaid

Method

POST

Consumes

application/json

Produces

application/json

Request Body Content

Example Request Object
{
    "merchId": "434315170887",
    "billingPlanId": 11992,
    "billingPlanScheduleId": "305362",
    "retref": "R261436256124"
}
Field Size Type Required Comments
merchId 11 Number yes The mid the billing plan belongs to.
billingPlanId 11 Number yes The billing plan id to update.
billingPlanScheduleId 11 Number yes The the scheduled payment within the billing plan to update.
retref 20 String no The retref (or refnum) of a transaction to associate with the payment. This can be left as null in if unavailable or in the case of a cash payment. If required, multiple payments may be associated to the same transaction by making multiple calls to this endpoint.

Response Body Content

Example Billing Plan Response Object
{
    "billingPlan": {...},
    "errors": null
}
Field Size Type Comments
billingPlan n/a Billing Plan The billing plan definition.
error n/a error The error array if the was a problem getting the billing plan.

This endpoint will return a 404 status code if the billing plan cannot be found.

Find Custom Fields Endpoint

This endpoint will list custom fields for a merchant

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/customfields

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Example Custom Fields Response Object
{
    "customFields": [
        {
            "customFieldLabel": "Custom Field 1",
            "isRequired": 0,
            "isActive": 1,
            "userFieldNumber": 1,
            "customFieldValue": "example value 1"
        },
        {
            "customFieldLabel": "Custom Field 2",
            "isRequired": 1,
            "isActive": 1,
            "userFieldNumber": 2,
            "customFieldValue": "example value 2"
        }
    ]
}

Create Custom Fields Endpoint


Custom Fields
Custom fields are configured by a partner and they can be labeled, set as active, and set as required in Copilot. If a partner has active required custom fields, then they are required and should be included in the request when creating a merchant. If the partner does not have any active custom fields, then they should not be included in the request when creating a merchant.

Path

https://copilot-api-uat.cardconnect.com/merchant/{merchantId}/customfields

Method

PUT

Consumes

application/json

Produces

application/json

Request Body Content

Example Custom Fields Request Object
{
    "customFields": [ ... ]
}   
Field Size Type Required Comments
customFields 10 List of customField yes Required if the merchant's partner has one or more active required custom fields

Response Body Content

Example Custom Fields Create Response Object
{
    "errors": null
}
Field Size Type Comments
errors n/a error The error array if there was a problem creating the merchant.

Schemas

Use the below schema definitions for details on fields which you need to supply to any given endpoints.

Check the resources to determine which schema definitions are required for the request.

Merchant Definition

Example Merchant Object
{
    "akaBusinessName": "Mikes API Merchant AKA1",
    "custPrimaryAcctFlg": false,
    "dbaName": "Mikes API Merchant DBA",
    "legalBusinessName": "Mikes API Legal Biz Name",
    "taxFilingMethod" : "TIN",
    "TaxFilingName": "Mikes API Legal Biz Name",
    "demographic": { ... },
    "businessIdTypeCd": "ARTICLE",
    "businessStartDate": "04/26/2002",
    "bankDetail": { ... },
    "ownership": { ... },
    "merchantContactInfo": { ... },
    "salesCode": "API1",
    "processing": { ... }
    "webLeadFlg": true,
    "pricing": { ... },
    "fees": { ... },
    "customFields": [ ... ]
}
Field Size Type Required Comments
akaBusinessName 200 string no
custPrimaryAcctFlg n/a boolean no
dbaName 100 string yes
legalBusinessName 500 string yes
taxFilingMethod 3 string yes TIN or SSN, can only be SSN if merchant -> ownership -> ownershipType is INDIVSOLE
taxFilingName 500 string yes
demographic n/a demographic yes
businessIdTypeCd string no Use the following codes ARTICLE,GOVT
businessStartDate 8 date no MM/DD/YYYY
bankDetail n/a bank detail yes
ownership n/a ownership yes
merchantContactInfo n/a contact info no
salesCode 25 string yes
processing n/a processing no
webLeadFlg n/a boolean no
pricing n/a pricing no
fees n/a fees no
customFields 10 List of customField yes Required if the merchant's partner has one or more active required custom fields

Owner CardPointe User Definition

Example Owner CardPointe User Object
{
    "ownerSiteUser":
        "firstName": "Tom",
        "lastName": "smith",
        "email": "tsmith@test.com"
    }
}
Field Size Type Required Comments
firstName 300 string yes
lastName 300 string yes
email 300 string yes

Demographic Definition

Example Demographic Object
{
    "businessIncorporatedStateCd": "CO",
    "merchantTimeZone": "MT",
    "websiteAddress": "www.test.com",
    "businessPhone": "555-555-5555",
    "businessFax": "444-444-4444",
    "businessAddress": { ... },
    "mailingAddress": { ... }
}
Field Size Type Required Comments
businessIncorporatedStateCd 2 enumeration no
merchantTimeZone 3 string no one of (PT, MT, CT, ET, HST)
websiteAddress 200 string yes Required if merchant -> processing -> modeOfTransaction-> eCommercePct is greater than 0
businessPhone 12 string no ###-###-####
businessFax 12 string no ###-###-####
businessAddress n/a address yes
mailingAddress n/a address yes

Bank Detail Definition

Example Bank Detail Object
{
    "depositBank": { ... },
    "withdrawalBank": { ... }
}
Field Size Type Required Comments
depositBank n/a bank yes
withdrawalBank n/a bank yes

Bank Definition

Example Bank Object
{
    "bankAcctNum": "acct num",
    "bankRoutingNum": "998877665",
    "bankAcctTypeCd": "BIZ",
    "bankName": "banck name"
}
Field Size Type Required Comments
bankAcctNum 25 string yes
bankRoutingNum 9 numeric yes
bankAcctTypeCd 10 enumeration yes
bankName 200 string yes

Attachment Definition

Example Owner CardPointe User Object
{
    "attachment" : {
        "fileName" : "VoidedCheck.pdf",
        "mimeType" : "application/pdf",
        "description" : "This is the voided check",
        "attachmentTypeCd" : "VOIDBNKCHK1",
        "document" : "JVBERi0xLjEKJcKlwrHDqwoKMSAwIG9iagogIDw8IC9UeXBlIC9DYXRhbG9nCiAgICAgL1BhZ2Vz
IDIgMCBSCiAgPj4KZW5kb2JqCgoyIDAgb2JqCiAgPDwgL1R5cGUgL1BhZ2VzCiAgICAgL0tpZHMg
WzMgMCBSXQogICAgIC9Db3VudCAxCiAgICAgL01lZGlhQm94IFswIDAgMzAwIDE0NF0KICA+Pgpl
bmRvYmoKCjMgMCBvYmoKICA8PCAgL1R5cGUgL1BhZ2UKICAgICAgL1BhcmVudCAyIDAgUgogICAg
ICAvUmVzb3VyY2VzCiAgICAgICA8PCAvRm9udAogICAgICAgICAgIDw8IC9GMQogICAgICAgICAg
ICAgICA8PCAvVHlwZSAvRm9udAogICAgICAgICAgICAgICAgICAvU3VidHlwZSAvVHlwZTEKICAg
ICAgICAgICAgICAgICAgL0Jhc2VGb250IC9UaW1lcy1Sb21hbgogICAgICAgICAgICAgICA+Pgog
ICAgICAgICAgID4+CiAgICAgICA+PgogICAgICAvQ29udGVudHMgNCAwIFIKICA+PgplbmRvYmoK
CjQgMCBvYmoKICA8PCAvTGVuZ3RoIDU1ID4+CnN0cmVhbQogIEJUCiAgICAvRjEgMTggVGYKICAg
IDAgMCBUZAogICAgKEhlbGxvIFdvcmxkKSBUagogIEVUCmVuZHN0cmVhbQplbmRvYmoKCnhyZWYK
MCA1CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAwMDAxOCAwMDAwMCBuIAowMDAwMDAwMDc3IDAw
MDAwIG4gCjAwMDAwMDAxNzggMDAwMDAgbiAKMDAwMDAwMDQ1NyAwMDAwMCBuIAp0cmFpbGVyCiAg
PDwgIC9Sb290IDEgMCBSCiAgICAgIC9TaXplIDUKICA+PgpzdGFydHhyZWYKNTY1CiUlRU9GCg=="
    }
}
Field Size Type Required Comments
fileName 60 string yes
mimeType 30 string yes
description 1000 string yes
attachmentTypeCd n/a enumeration yes
document 100Mb Base 64 encoded string yes

Equipment Definition

Example Equipment Object
        {
            "equipmentId": 123,
            "equipmentName": "Generic Card Swiper",
            "description": "Equipment Description",
            "make": "Acme",
            "model": "200X",
            "imageUrl": "http://image/image.png",
            "sku": null,
            "platformCd": null,
            "equipmentTypeCd": "TERMINAL",
            "equipmentSupplierCd": "CARDCONNECT",
            "defaultPrice": 199,
            "defaultPlanPrice": 25,
            "allowCustomBillingFlg": 1,
            "standardShippingPrice": 20,
            "expeditedShippingPrice": 25
        }
Field Size Type Comments
equipmentId 60 Long The equipment ID
equipmentName 60 string The equipment name
description 60 string The equipment description
make 60 string The equipment make
model 60 string The equipment model
imageUrl 60 string The equipment image url
sku 60 string yes The equipment sku
platformCd 60 string The equipment platform
equipmentTypeCd 60 enumeration The equipment type
equipmentSupplierCd 60 enumeration The equipment supplier code
defaultPrice 60 string The default one time price
defaultPlanPrice 60 string The default monthly price if allowed
allowCustomBillingFlg 60 string True if monthly billing is allowed
standardShippingPrice 60 string The standard shipping price (per unit)
expeditedShippingPrice 60 string The expedited shipping price (per unit)

Order Definition

Example Order Object
{
    "order": {
            "orderId": {orderId},
            "merchantId": {merchantId},
            "equipmentId": {equipmentId},
            "orderNotes": "test notes",
            "quantity": 1,
            "unitPrice": 100,
            "monthlyPrice": null,
            "billToCd": "PARTNER",
            "billingFrequencyCd": "ONETIME",
            "profileId": "12344565676",
            "acctId": 1     
            "shippingDetails": {...}
            "orderStatusCd": "NEW",
            "placedDatetime": "01/01/2018 00:00:01 PM",
            "shippedDatetime": null,
            "canceledDatetime": null,
            "fulfillingDatetime": null                      
        }
}
Field Size Type Required Comments
orderId 19 Long no The merchantId the order is for. (cannot set this value, only used for GET)
merchantId 19 Long yes The merchantId the order is for.
equipmentId 19 Long yes The equipmentId the order is for.
orderNotes 1000 String no Optional notes for the person fulfilling the order.
quantity 4 Integer yes The number of devices being ordered.
unitPrice 10 Number yes (when billToFrequencyCd is ONETIME) The price per unit.
monthlyPrice 10 Number yes (if billToFrequencyCd is MONTHLY) The price per month.
billToCd 100 enumeration yes Who to bill for this order
billingFrequencyCd 100 enumeration yes Billing frequency
profileId n/a String yes (if billToCd is PARTNERCC) The profileId of the card to charge for this order.
acctId 10 Number yes (if billToCd is PARTNERCC) The account number to charge for this order.
shippingDetails n/a shippingdetail yes
orderStatusCd n/a enumeration no
placedDatetime n/a String no The date the order was placed (Usually when right after the merchant signs the application)
shippedDatetime n/a String no The date the order was shipped
canceledDatetime n/a String no The date the order was canceled
fulfillingDatetime n/a String no The date the order was fulfilled

Order Shipping Details Definition

Example Order Shipping Object
{
            "shippingDetails": {
                "shippingAddress": {
                    "address1": "123 Fake St",
                    "address2": "Apt. 23",
                    "city": "Fakeville",
                    "countryCd": "US",
                    "stateCd": "IL",
                    "zip": "11111"
                },
                "shipToAttn": "John Doe",
                "shipToAttnEmail": "test@test.com",
                "shippingMethodCd": "STANDARD",
                "shippingBillToCd": "PARTNER",
                "shippingCarrierCd": "FEDEX",
                "trackingNumber": "12345abc",       
                "shippingCost": 10.50,                  
                "merchantContactPhone": "555-555-5555",
                "merchantContactPhoneExt": "55555",
                "poNumber": "4455",                                 
            }
}
Field Size Type Required Comments
shippingAddress n/a address yes
shipToAttn 100 String yes Name of the person receiving the order.
shipToAttnEmail 100 String yes Email of the person receiving the order.
shippingMethodCd 100 enumeration yes The shipping method to be used.
shippingBillToCd 100 enumeration yes (if shippingMethodCd is EXPEDITED) Who to bill for the shipping (only set if shippingMethodCd is EXPEDITED)
shippingCarrierCd 100 enumeration no The shipping carrier
trackingNumber 100 String no The shipping carrier
shippingCost n/a Decimal no The shipping cost
merchantContactPhone 12 String yes ###-###-####
merchantContactPhoneExt 5 String no #####
poNumber 30 String no Purchase order number

Ownership Definition

Example Ownership Object
{
    "owner": { ... },
    "ownershipTypeCd": "INDIVSOLE",
    "driversLicenseNumber": "2342343243",
    "driversLicenseStateCd": "CO",
    "ownerOwnershipPct": 100
}
Field Size Type Required Comments
owner n/a owner yes
ownershipTypeCd 10 enumeration no
driversLicenseNumber 100 string yes
driversLicenseStateCd 2 enumeration yes
ownerOwnershipPct 3 numeric no 0-100%

Owner Definition

Example Owner Object
{
    "ownerAddress": { ... },
    "ownerEmail": "msumm@test.com",
    "ownerName": "Mike Owner",
    "ownerDob": "09/22/1997",
    "ownerPhone": "555-555-5555",
    "ownerMobilePhone": "555-555-5555",
    "ownerSSN": "111-22-3333".
    "ownerTitle": "CEO"
}
Field Size Type Required Comments
ownerAddress n/a address yes
ownerEmail 300 string yes
ownerName 300 string yes
ownerDob 8 string no MM/DD/YYYY
ownerPhone 12 string yes ###-###-####
ownerMobilePhone 12 string yes ###-###-####
ownerSSN 11 string yes ###-##-####
ownerTitle 200 string yes See List Below

Valid Owner Titles

Ownership Type Valid Owner Titles
PRTNRGEN (Partnership (General)) PARTNER
PRTNRLIM (Partnership (Limited)) PARTNER
GOVT (Government) OWNER, PARTNER, PRESIDENT, VICE_PRESIDENT, MEMBER_LLC, SECRETARY, TREASURER, CEO, CFO, COO
PUBCORP (Public Corporation) PRESIDENT, VICE_PRESIDENT, SECRETARY, TREASURER, CEO, CFO, COO
CORP (Corporation) PRESIDENT, VICE_PRESIDENT, SECRETARY, TREASURER, CEO, CFO, COO
LLC (LLC) PRESIDENT, VICE_PRESIDENT, SECRETARY, TREASURER, CEO, CFO, COO, MEMBER_LLC
LP (LP) PRESIDENT, VICE_PRESIDENT, SECRETARY, TREASURER, CEO, CFO, COO, MEMBER_LLC
PRIVCORP (Private Corporation) PRESIDENT, VICE_PRESIDENT, SECRETARY, TREASURER, CEO, CFO, COO
SUBSCORP (Subchapter S Corporation) PRESIDENT, VICE_PRESIDENT, SECRETARY, TREASURER, CEO, CFO, COO
TAXEXMPT (Tax Exempt) OWNER, PARTNER, PRESIDENT, VICE_PRESIDENT, MEMBER_LLC, SECRETARY, TREASURER, CEO, CFO, COO
NONPRFT (Non-Profit Org) OWNER, PARTNER, PRESIDENT, VICE_PRESIDENT, MEMBER_LLC, SECRETARY, TREASURER, CEO, CFO, COO
INDIVSOLE (Individual / Sole Proprietor) OWNER

Merchant Contact Info Definition

Example Contact Info Object
{
    "contactName": "John Doe",
    "contactEmail": "jdoe@contactemail.com",
    "contactPhone": "555-555-5555"
}
Field Size Type Required Comments
contactName 300 string no
contactEmail 300 string no
contactPhone 12 string no ###-###-####

Processing Definition

Example Processing Object
{
    "platformDetails": { ...},
    "businessDetails": { ... },
    "volumeDetails": { ... },
    "deliveryPercentages": { ... },
    "modeOfTransaction": { ... }
}
Field Size Type Required Comments
platformDetails n/a platform details yes
businessDetails n/a business details yes
volumeDetails n/a volume details yes
deliveryPercentages n/a delivery details no
modeOfTransaction n/a mode of transaction details no

Platform Details Definition

Example Platform Details Object for Merchant Services account
{
    "amexProgramAssetCd": "OPTBLUE",
    "amexProgramMid": "2341251235434",
    "discoverMid": "2134123423555",
    "discoverProgramCd": "EASI",
    "acquiringFlg": true,
    "taxId": "485968574",
    "tid": "968596859",
    "busnsId": "234444234234",
    "busnsIdPlaceOfIssue": "CO",
    "currencyCode": "USD",
    "mccId": "3076",
    "businessDescription": "Business Description"
}
Example Platform Details Object for CardPointe Only account
{
    "backEndMid": "418493849598",
    "frontEndMid": "418493849598",
    "processorReportingMid": "418493849598",
    "backEndPlatform": "FDNOB",
    "frontEndPlatformCd": "FDNOF",
    "amexProgramAssetCd": "OPTBLUE",
    "amexProgramMid": "2341251235434",
    "discoverMid": "2134123423555",
    "discoverProgramCd": "EASI",
    "acquiringFlg": false,
    "taxId": "485968574",
    "tid": "968596859",
    "busnsId": "234444234234",
    "busnsIdPlaceOfIssue": "CO",
    "currencyCode": "USD",
    "mccId": "3076",
    "businessDescription": "Business Description"
}
Field Size Type Required Comments
backEndMid 25 string no (yes for CardPointe only accounts)
frontEndMid 25 string no (yes for CardPointe only accounts)
processorReportingMid 25 string no (yes for CardPointe only accounts)
backEndPlatform 20 enumeration no (yes for CardPointe only accounts)
frontEndPlatformCd 20 enumeration no (yes for CardPointe only accounts)
amexProgramAssetCd 7 enumeration yes
amexProgramMid 25 string yes
discoverMid 25 string yes
discoverProgramCd 10 enumeration yes
acquiringFlg n/a boolean yes true = Merchant Services, false = CardPointe only
taxId 9 numeric no
tid string no
busnsId string no
busnsIdPlaceOfIssue 2 enumeration yes state code
currencyCode 5 enumeration no
mccId 5 string yes (numeric)
businessDescription 4000 string yes

Business Details Definition

Example Business Details Object
{
    "customerBillPriorToShipFlg": false,
    "depositReqForFulfillFlg": true,
    "whenCustomerChargedCd": "INADVANCE",
    "refundPolicyCd": "EXCHONLY",
    "serviceProvidedInCd": "30LESS"
}
Field Size Type Required Comments
customerBillPriorToShipFlg n/a boolean no
depositReqForFulfillFlg n/a boolean no
whenCustomerChargedCd 10 enumeration no
refundPolicyCd 10 enumeration no
serviceProvidedInCd 10 enumeration no

Volume Details Definition

Example Volume Details Object
{
    "averageMonthlyVolume": 9999.00,
    "highTicketAmount": 99.99,
    "avgTicketTransAmt": 9.99
}
Field Size Type Required Comments
averageMonthlyVolume 18.2 decimal yes
highTicketAmount 18.2 decimal yes
averageTicketAmount 18.2 decimal yes

Delivery Details Definition

Example Delivery Details Object
{
    "dlvry0To7DaysPct": 97,
    "dlvry15To30DaysPct": 1,
    "dlvry8To14DaysPct": 1,
    "dlvryOver30DaysPct": 1
}
Field Size Type Required Comments
dlvry0To7DaysPct 3 numeric no 0-100%
dlvry15To30DaysPct 3 numeric no 0-100%
dlvry8To14DaysPct 3 numeric no 0-100%
dlvryOver30DaysPct 3 numeric no 0-100%

Mode of Transaction Details Definition

Example Mode of Transaction Details Object
{
    "eCommercePct": 0,
    "keyedPct": 20,
    "mailOrderPct": 30,
    "swipedPct": 50
}
Field Size Type Required Comments
eCommercePct 3 numeric yes 0-100%
keyedPct 3 numeric yes 0-100%
mailOrderPct 3 numeric yes 0-100%
swipedPct 3 numeric yes 0-100%

Pricing Definition

Example Flat Pricing Object
{
    "flatPricing": { ... }
}
Field Size Type Required Comments
flatPricing n/a flat pricing yes
Example IC-Plus Pricing Object
{
    "icPlusPricing": { ... }
}
Field Size Type Required Comments
icPlusPricing n/a icplus pricing yes

Flat Pricing Definition

Example Flat Pricing Object
{
    "amex": {
        "esaQualDiscountPct": 22.00,
        "optBlueQualDiscountPct": 11.00
    },
    "discover": {
        "qualCreditDiscountPct": 1.00
    },
    "mastercard": {
        "qualCreditDiscountPct": 5.00
    },
    "visa": {
        "qualCreditDiscountPct": 4.00
    }
}
Field Size Type Required Comments
amex.esaQualDiscountPct 7.3 decimal yes Only valid if amexProgramAssetCd is ESA
amex.optBlueQualDiscountPct 7.3 decimal yes Only valid if amexProgramAssetCd is OPTBLUE
discover.qualCreditDiscountPct 7.3 decimal yes
mastercard.qualCreditDiscountPct 7.3 decimal yes
visa.qualCreditDiscountPct 7.3 decimal yes

IC-Plus Pricing Definition

Example IC-Plus Pricing Object
{
    "amex": {
        "optBlueQualDiscountPct": 8.00
    },
    "discover": {
        "qualCreditDiscountPct": 1.00
    },
    "mastercard": {
        "qualCreditDiscountPct": 5.00
    },
    "visa": {
        "qualCreditDiscountPct": 4.00
    }
}
Field Size Type Required Comments
amex.optBlueQualDiscountPct 7.3 decimal yes Only valid if amexProgramAssetCd is ESA
discover.qualCreditDiscountPct 7.3 decimal yes
mastercard.qualCreditDiscountPct 7.3 decimal yes
visa.qualCreditDiscountPct 7.3 decimal yes

Fees Definition

Example Fees Object
{
    "achBatchFee": 1.11,
    "addressVerifFee": 2.22,
    "annualMembershipFee": 3.33,
    "appFee": 4.44,
    "authFee": 5.55,
    "chargebackFee": 6.66,
    "dataBreachFee": 7.77,
    "ddaRejectFee": 8.88,
    "earlyCancelFee": 9.99,
    "minProcessFee": 20.00,
    "monthlyEquipmentRentalFee": 10.00,
    "pciAnnualFee": 21.00,
    "pciNonComplianceFee": 100.00,
    "regProdMonthlyFee": 200.00,
    "retrievalFee": 10.00,
    "statementFee": 27.99,
    "tranFee": 0.05,
    "voiceAuthFee": 0.10,
    "wirelessActivationFee": 0.10,
    "wirelessFee": 50.00,
    "duesAndAssessmentsFlg": true,
    "passthruInterchgCostsFlg": true
}
Field Size Type Required Comments
achBatchFee 7.3 decimal yes
addressVerifFee 7.3 decimal yes
annualMembershipFee 8.2 decimal yes
appFee 8.2 decimal yes
authFee 7.3 decimal yes
chargebackFee 8.2 decimal yes
dataBreachFee 8.2 decimal yes
ddaRejectFee 8.2 decimal yes
earlyCancelFee 8.2 decimal yes
minProcessFee 8.2 decimal yes
monthlyEquipmentRentalFee 8.2 decimal no
pciAnnualFee 8.2 decimal yes
pciNonComplianceFee 8.2 decimal yes
regProdMonthlyFee 8.2 decimal yes
retrievalFee 8.2 decimal yes
statementFee 8.2 decimal yes
tranFee 7.3 decimal yes
voiceAuthFee 7.3 decimal yes
wirelessActivationFee 8.2 decimal yes
wirelessFee 8.2 decimal yes
duesAndAssessmentsFlg n/a boolean no
passthruInterchgCostsFlg n/a boolean no

Custom Field Definition

Example Custom Field Object
{
    "userFieldNumber": 1,
    "customFieldValue": "example custom field value"
}
Field Size Type Required Comments
userFieldNumber n/a numeric yes The index of the custom field being set. Must be a number between 1-10
customFieldValue 100 string yes Required if the merchant's partner has made the custom field at this index required

Owner Site User Definition

Example Owner Site User Object
{
    "firstName": "Mike",
    "lastName": "Owner",
    "email": "mikeowner@test.com"
}
Field Size Type Required Comments
firstName 300 string yes
lastName 300 string yes
email 300 string yes

Address Definition

Example Address Object
{
    "address1": "123 Fake St",
    "address2": "Apt. 23",
    "city": "Fakeville",
    "countryCd": "US",
    "stateCd": "IL",
    "zip": "11111"
}
Field Size Type Required Comments
address1 200 string yes
address2 200 string no
city 300 string yes
countryCd 2 enumeration no
stateCd 2 enumeration no
zip 15 string yes

Billing Plan Definition

Example Billing Plan Object
{
    "billingPlanId": "11382",
    "merchId": "434315170887",
    "profileId": "14710549700211721990",
    "acctId" : "1"
    "amount": 12.99,
    "timeSpan": 2,
    "every": 1,
    "untilCondition": "C",
    "untilNumPayments": null,
    "untilDate": null,
    "currencySymbol": "$",
    "startDate": "08022017",
    "billingPlanName": "api test 5",
    "options": [{
        "name": "email_receipt",
        "value": "0"
    }],
    "planStatus": "A",
    "schedules" : []
}
Field Size Type Required Comments
billingPlanId 11 Number no The id of the billing plan, should be null when creating a new plan
merchId 11 Number yes The mid the billing plan is being created for
profileId 20 Number yes The profile being billed
acctId 3 Number no The account id within the profile to use. If not provided when creating a billing plan, the default account will be used. This field is always returned when retrieving a billing plan.
amount Number yes The amount to bill per time period
timeSpan Number yes 1 for daily, 2 for weekly, 3 for monthly, or 4 for yearly
every Number yes Bill the customer every x time periods
untilCondition 1 Character yes C for cancelled, N for number of payments, D for date
untilNumPayments Number See Comments Required if untilCondition = N
untilDate 8 String See Comments Required if untilCondition = D. Date format: MMDDYYYY
currencySymbol 1 Character yes The currency symbol for the transaction
startDate 8 String yes Date format: MMDDYYYY
billingPlanName 30 String yes Display name
options Array yes The email_receipt option should be provided with a value of 0 for no or 1 for yes. See example JSON.
planSatus 1 Character no The billing plan status. A for active or C for cancelled.
billingPlanSchedules Array of Billing Plan Schedules no An array of the payments in the billing plan. This cannot be set, it is only returned when fetching a billing plan. This array will always contain all past payments. In addition, it will also contain future scheduled payments (up to 1000 when untilCondition = N or D, or one year of payments when untilCondition = C)

Billing Plan Schedule Definition

Example Billing Plan Schedule
{
    "billingPlanScheduleId": 305322,
    "actualAmount": null,
    "actualPaymentDate": null,
    "paymentStatus": "Scheduled",
    "retref": null,
    "scheduledAmount": 12,
    "scheduledPaymentDate": "08/02/2017",
}
Field Size Type Required Comments
billingPlanScheduleId Number yes The id of the billing plan schedule entry.
actualAmount Number no The amount that was actually billed, if this payment was processed.
actualPaymentDate Date no The date this payment was made, if it was processed.
paymentStatus String yes Scheduled, Cancelled, Paid, or Failed.
retref String not The transaction id, if it was processed.
scheduledAmount Number yes The amount scheduled to be billed.
scheduledPaymentDate Date yes The date the transaction is scheduled for

Enumeration Definition

Bank Account Type Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/bankAcctTypes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Bank Account Type Response Object
{
    "bankAcctTypes": [
        {
            "code": "BIZ",
            "name": "Business Checking"
        },
        {
            "code": "GL",
            "name": "General Ledger"
        },
        {
            "code": "SAVINGS",
            "name": "Savings"
        }
    ]
}

Ownership Type Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/ownershipTypes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Ownership Type Response Object
{
    "ownershipTypes": [
        {
            "code": "ASSOC",
            "name": "Association"
        },
        {
            "code": "CORP",
            "name": "Corporation"
        },
        {
            "code": "ESTATE",
            "name": "Estate/Trust"
        },
        {
            "code": "GOVT",
            "name": "Government"
        },
        {
            "code": "INDIVSOLE",
            "name": "Individual / Sole Proprietor"
        },
        {
            "code": "LLC",
            "name": "LLC"
        },
        {
            "code": "LP",
            "name": "LP"
        },
        {
            "code": "NONPRFT",
            "name": "Non-Profit Org"
        },
        {
            "code": "OTHER",
            "name": "Other"
        },
        {
            "code": "PRTNRSHP",
            "name": "Partnership"
        },
        {
            "code": "PRTNRGEN",
            "name": "Partnership (General)"
        },
        {
            "code": "PRTNRLIM",
            "name": "Partnership (Limited)"
        },
        {
            "code": "PRIVCORP",
            "name": "Private Corporation"
        },
        {
            "code": "PUBCORP",
            "name": "Public Corporation"
        },
        {
            "code": "SCHOOL",
            "name": "School"
        },
        {
            "code": "SUBSCORP",
            "name": "Sub S Corporation"
        },
        {
            "code": "TAXEXMPT",
            "name": "Tax Exempt"
        }
    ]
}

Country Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/countryCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Country Codes Response Object
{
    "countryCodes": [
        {
            "code": "US",
            "name": "United States of America"
        },
        {
            "code": "AF",
            "name": "Afghanistan"
        },
        {
            "code": "AL",
            "name": "Albania"
        },
        {
            "code": "DZ",
            "name": "Algeria"
        },
        {
            "code": "AS",
            "name": "American Samoa"
        },
        {
            "code": "AD",
            "name": "Andorra"
        },
        {
            "code": "AO",
            "name": "Angola"
        },
        {
            "code": "AI",
            "name": "Anguilla"
        },
        {
            "code": "AQ",
            "name": "Antarctica"
        },
        {
            "code": "AG",
            "name": "Antigua and Barbuda"
        },
        {
            "code": "AR",
            "name": "Argentina"
        },
        {
            "code": "AM",
            "name": "Armenia"
        },
        {
            "code": "AW",
            "name": "Aruba"
        },
        {
            "code": "AU",
            "name": "Australia"
        },
        {
            "code": "AT",
            "name": "Austria"
        },
        {
            "code": "AZ",
            "name": "Azerbaijan"
        },
        {
            "code": "BS",
            "name": "Bahamas"
        },
        {
            "code": "BH",
            "name": "Bahrain"
        },
        {
            "code": "BD",
            "name": "Bangladesh"
        },
        {
            "code": "BB",
            "name": "Barbados"
        },
        {
            "code": "BY",
            "name": "Belarus"
        },
        {
            "code": "BE",
            "name": "Belgium"
        },
        {
            "code": "BZ",
            "name": "Belize"
        },
        {
            "code": "BJ",
            "name": "Benin"
        },
        {
            "code": "BM",
            "name": "Bermuda"
        },
        {
            "code": "BT",
            "name": "Bhutan"
        },
        {
            "code": "BO",
            "name": "Bolivia"
        },
        {
            "code": "BQ",
            "name": "Bonaire"
        },
        {
            "code": "BA",
            "name": "Bosnia and Herzegovina"
        },
        {
            "code": "BW",
            "name": "Botswana"
        },
        {
            "code": "BV",
            "name": "Bouvet Island"
        },
        {
            "code": "BR",
            "name": "Brazil"
        },
        {
            "code": "IO",
            "name": "British Indian Ocean Territory"
        },
        {
            "code": "BN",
            "name": "Brunei Darussalam"
        },
        {
            "code": "BG",
            "name": "Bulgaria"
        },
        {
            "code": "BF",
            "name": "Burkina Faso"
        },
        {
            "code": "BI",
            "name": "Burundi"
        },
        {
            "code": "CV",
            "name": "Cabo Verde"
        },
        {
            "code": "KH",
            "name": "Cambodia"
        },
        {
            "code": "CM",
            "name": "Cameroon"
        },
        {
            "code": "CA",
            "name": "Canada"
        },
        {
            "code": "KY",
            "name": "Cayman Islands"
        },
        {
            "code": "CF",
            "name": "Central African Republic"
        },
        {
            "code": "TD",
            "name": "Chad"
        },
        {
            "code": "CL",
            "name": "Chile"
        },
        {
            "code": "CN",
            "name": "China"
        },
        {
            "code": "CX",
            "name": "Christmas Island"
        },
        {
            "code": "CC",
            "name": "Cocos Islands"
        },
        {
            "code": "CO",
            "name": "Colombia"
        },
        {
            "code": "KM",
            "name": "Comoros"
        },
        {
            "code": "CD",
            "name": "Congo"
        },
        {
            "code": "CG",
            "name": "Congo"
        },
        {
            "code": "CK",
            "name": "Cook Islands"
        },
        {
            "code": "CR",
            "name": "Costa Rica"
        },
        {
            "code": "HR",
            "name": "Croatia"
        },
        {
            "code": "CU",
            "name": "Cuba"
        },
        {
            "code": "CW",
            "name": "Curaçao"
        },
        {
            "code": "CY",
            "name": "Cyprus"
        },
        {
            "code": "CZ",
            "name": "Czech Republic"
        },
        {
            "code": "CI",
            "name": "Côte d'Ivoire"
        },
        {
            "code": "DK",
            "name": "Denmark"
        },
        {
            "code": "DJ",
            "name": "Djibouti"
        },
        {
            "code": "DM",
            "name": "Dominica"
        },
        {
            "code": "DO",
            "name": "Dominican Republic"
        },
        {
            "code": "EC",
            "name": "Ecuador"
        },
        {
            "code": "EG",
            "name": "Egypt"
        },
        {
            "code": "SV",
            "name": "El Salvador"
        },
        {
            "code": "GQ",
            "name": "Equatorial Guinea"
        },
        {
            "code": "ER",
            "name": "Eritrea"
        },
        {
            "code": "EE",
            "name": "Estonia"
        },
        {
            "code": "ET",
            "name": "Ethiopia"
        },
        {
            "code": "FK",
            "name": "Falkland Islands"
        },
        {
            "code": "FO",
            "name": "Faroe Islands"
        },
        {
            "code": "FJ",
            "name": "Fiji"
        },
        {
            "code": "FI",
            "name": "Finland"
        },
        {
            "code": "FR",
            "name": "France"
        },
        {
            "code": "GF",
            "name": "French Guiana"
        },
        {
            "code": "PF",
            "name": "French Polynesia"
        },
        {
            "code": "TF",
            "name": "French Southern Territories"
        },
        {
            "code": "GA",
            "name": "Gabon"
        },
        {
            "code": "GM",
            "name": "Gambia"
        },
        {
            "code": "GE",
            "name": "Georgia"
        },
        {
            "code": "DE",
            "name": "Germany"
        },
        {
            "code": "GH",
            "name": "Ghana"
        },
        {
            "code": "GI",
            "name": "Gibraltar"
        },
        {
            "code": "GR",
            "name": "Greece"
        },
        {
            "code": "GL",
            "name": "Greenland"
        },
        {
            "code": "GD",
            "name": "Grenada"
        },
        {
            "code": "GP",
            "name": "Guadeloupe"
        },
        {
            "code": "GU",
            "name": "Guam"
        },
        {
            "code": "GT",
            "name": "Guatemala"
        },
        {
            "code": "GG",
            "name": "Guernsey"
        },
        {
            "code": "GN",
            "name": "Guinea"
        },
        {
            "code": "GW",
            "name": "Guinea-Bissau"
        },
        {
            "code": "GY",
            "name": "Guyana"
        },
        {
            "code": "HT",
            "name": "Haiti"
        },
        {
            "code": "HM",
            "name": "Heard and McDonald Islands"
        },
        {
            "code": "VA",
            "name": "Holy See"
        },
        {
            "code": "HN",
            "name": "Honduras"
        },
        {
            "code": "HK",
            "name": "Hong Kong"
        },
        {
            "code": "HU",
            "name": "Hungary"
        },
        {
            "code": "IS",
            "name": "Iceland"
        },
        {
            "code": "IN",
            "name": "India"
        },
        {
            "code": "ID",
            "name": "Indonesia"
        },
        {
            "code": "IR",
            "name": "Iran"
        },
        {
            "code": "IQ",
            "name": "Iraq"
        },
        {
            "code": "IE",
            "name": "Ireland"
        },
        {
            "code": "IM",
            "name": "Isle of Man"
        },
        {
            "code": "IL",
            "name": "Israel"
        },
        {
            "code": "IT",
            "name": "Italy"
        },
        {
            "code": "JM",
            "name": "Jamaica"
        },
        {
            "code": "JP",
            "name": "Japan"
        },
        {
            "code": "JE",
            "name": "Jersey"
        },
        {
            "code": "JO",
            "name": "Jordan"
        },
        {
            "code": "KZ",
            "name": "Kazakhstan"
        },
        {
            "code": "KE",
            "name": "Kenya"
        },
        {
            "code": "KI",
            "name": "Kiribati"
        },
        {
            "code": "KP",
            "name": "Korea (Democratic People's Republic of)"
        },
        {
            "code": "KR",
            "name": "Korea (Republic of)"
        },
        {
            "code": "KW",
            "name": "Kuwait"
        },
        {
            "code": "KG",
            "name": "Kyrgyzstan"
        },
        {
            "code": "LA",
            "name": "Lao People's Democratic Republic"
        },
        {
            "code": "LV",
            "name": "Latvia"
        },
        {
            "code": "LB",
            "name": "Lebanon"
        },
        {
            "code": "LS",
            "name": "Lesotho"
        },
        {
            "code": "LR",
            "name": "Liberia"
        },
        {
            "code": "LY",
            "name": "Libya"
        },
        {
            "code": "LI",
            "name": "Liechtenstein"
        },
        {
            "code": "LT",
            "name": "Lithuania"
        },
        {
            "code": "LU",
            "name": "Luxembourg"
        },
        {
            "code": "MO",
            "name": "Macao"
        },
        {
            "code": "MK",
            "name": "Macedonia"
        },
        {
            "code": "MG",
            "name": "Madagascar"
        },
        {
            "code": "MW",
            "name": "Malawi"
        },
        {
            "code": "MY",
            "name": "Malaysia"
        },
        {
            "code": "MV",
            "name": "Maldives"
        },
        {
            "code": "ML",
            "name": "Mali"
        },
        {
            "code": "MT",
            "name": "Malta"
        },
        {
            "code": "MH",
            "name": "Marshall Islands"
        },
        {
            "code": "MQ",
            "name": "Martinique"
        },
        {
            "code": "MR",
            "name": "Mauritania"
        },
        {
            "code": "MU",
            "name": "Mauritius"
        },
        {
            "code": "YT",
            "name": "Mayotte"
        },
        {
            "code": "MX",
            "name": "Mexico"
        },
        {
            "code": "FM",
            "name": "Micronesia"
        },
        {
            "code": "MD",
            "name": "Moldova"
        },
        {
            "code": "MC",
            "name": "Monaco"
        },
        {
            "code": "MN",
            "name": "Mongolia"
        },
        {
            "code": "ME",
            "name": "Montenegro"
        },
        {
            "code": "MS",
            "name": "Montserrat"
        },
        {
            "code": "MA",
            "name": "Morocco"
        },
        {
            "code": "MZ",
            "name": "Mozambique"
        },
        {
            "code": "MM",
            "name": "Myanmar"
        },
        {
            "code": "NA",
            "name": "Namibia"
        },
        {
            "code": "NR",
            "name": "Nauru"
        },
        {
            "code": "NP",
            "name": "Nepal"
        },
        {
            "code": "NL",
            "name": "Netherlands"
        },
        {
            "code": "NC",
            "name": "New Caledonia"
        },
        {
            "code": "NZ",
            "name": "New Zealand"
        },
        {
            "code": "NI",
            "name": "Nicaragua"
        },
        {
            "code": "NE",
            "name": "Niger"
        },
        {
            "code": "NG",
            "name": "Nigeria"
        },
        {
            "code": "NU",
            "name": "Niue"
        },
        {
            "code": "NF",
            "name": "Norfolk Island"
        },
        {
            "code": "MP",
            "name": "Northern Mariana Islands"
        },
        {
            "code": "NO",
            "name": "Norway"
        },
        {
            "code": "OM",
            "name": "Oman"
        },
        {
            "code": "PK",
            "name": "Pakistan"
        },
        {
            "code": "PW",
            "name": "Palau"
        },
        {
            "code": "PS",
            "name": "Palestine, State of"
        },
        {
            "code": "PA",
            "name": "Panama"
        },
        {
            "code": "PG",
            "name": "Papua New Guinea"
        },
        {
            "code": "PY",
            "name": "Paraguay"
        },
        {
            "code": "PE",
            "name": "Peru"
        },
        {
            "code": "PH",
            "name": "Philippines"
        },
        {
            "code": "PN",
            "name": "Pitcairn"
        },
        {
            "code": "PL",
            "name": "Poland"
        },
        {
            "code": "PT",
            "name": "Portugal"
        },
        {
            "code": "PR",
            "name": "Puerto Rico"
        },
        {
            "code": "QA",
            "name": "Qatar"
        },
        {
            "code": "RO",
            "name": "Romania"
        },
        {
            "code": "RU",
            "name": "Russian Federation"
        },
        {
            "code": "RW",
            "name": "Rwanda"
        },
        {
            "code": "RE",
            "name": "Réunion"
        },
        {
            "code": "BL",
            "name": "Saint Barthélemy"
        },
        {
            "code": "SH",
            "name": "Saint Helena, Ascension and Tristan da Cunha"
        },
        {
            "code": "KN",
            "name": "Saint Kitts and Nevis"
        },
        {
            "code": "LC",
            "name": "Saint Lucia"
        },
        {
            "code": "MF",
            "name": "Saint Martin"
        },
        {
            "code": "PM",
            "name": "Saint Pierre and Miquelon"
        },
        {
            "code": "VC",
            "name": "Saint Vincent and the Grenadines"
        },
        {
            "code": "WS",
            "name": "Samoa"
        },
        {
            "code": "SM",
            "name": "San Marino"
        },
        {
            "code": "ST",
            "name": "Sao Tome and Principe"
        },
        {
            "code": "SA",
            "name": "Saudi Arabia"
        },
        {
            "code": "SN",
            "name": "Senegal"
        },
        {
            "code": "RS",
            "name": "Serbia"
        },
        {
            "code": "SC",
            "name": "Seychelles"
        },
        {
            "code": "SL",
            "name": "Sierra Leone"
        },
        {
            "code": "SG",
            "name": "Singapore"
        },
        {
            "code": "SX",
            "name": "Sint Maarten"
        },
        {
            "code": "SK",
            "name": "Slovakia"
        },
        {
            "code": "SI",
            "name": "Slovenia"
        },
        {
            "code": "SB",
            "name": "Solomon Islands"
        },
        {
            "code": "SO",
            "name": "Somalia"
        },
        {
            "code": "ZA",
            "name": "South Africa"
        },
        {
            "code": "GS",
            "name": "South Georgia"
        },
        {
            "code": "SS",
            "name": "South Sudan"
        },
        {
            "code": "ES",
            "name": "Spain"
        },
        {
            "code": "LK",
            "name": "Sri Lanka"
        },
        {
            "code": "SD",
            "name": "Sudan"
        },
        {
            "code": "SR",
            "name": "Suriname"
        },
        {
            "code": "SJ",
            "name": "Svalbard and Jan Mayen"
        },
        {
            "code": "SZ",
            "name": "Swaziland"
        },
        {
            "code": "SE",
            "name": "Sweden"
        },
        {
            "code": "CH",
            "name": "Switzerland"
        },
        {
            "code": "SY",
            "name": "Syrian Arab Republic"
        },
        {
            "code": "TW",
            "name": "Taiwan"
        },
        {
            "code": "TJ",
            "name": "Tajikistan"
        },
        {
            "code": "TZ",
            "name": "Tanzania, United Republic of"
        },
        {
            "code": "TH",
            "name": "Thailand"
        },
        {
            "code": "TL",
            "name": "Timor-Leste"
        },
        {
            "code": "TG",
            "name": "Togo"
        },
        {
            "code": "TK",
            "name": "Tokelau"
        },
        {
            "code": "TO",
            "name": "Tonga"
        },
        {
            "code": "TT",
            "name": "Trinidad and Tobago"
        },
        {
            "code": "TN",
            "name": "Tunisia"
        },
        {
            "code": "TR",
            "name": "Turkey"
        },
        {
            "code": "TM",
            "name": "Turkmenistan"
        },
        {
            "code": "TC",
            "name": "Turks and Caicos Islands"
        },
        {
            "code": "TV",
            "name": "Tuvalu"
        },
        {
            "code": "UG",
            "name": "Uganda"
        },
        {
            "code": "UA",
            "name": "Ukraine"
        },
        {
            "code": "AE",
            "name": "United Arab Emirates"
        },
        {
            "code": "GB",
            "name": "United Kingdom"
        },
        {
            "code": "UM",
            "name": "United States Minor Outlying Islands"
        },
        {
            "code": "UY",
            "name": "Uruguay"
        },
        {
            "code": "UZ",
            "name": "Uzbekistan"
        },
        {
            "code": "VU",
            "name": "Vanuatu"
        },
        {
            "code": "VE",
            "name": "Venezuela"
        },
        {
            "code": "VN",
            "name": "Viet Nam"
        },
        {
            "code": "VG",
            "name": "Virgin Islands (British)"
        },
        {
            "code": "VI",
            "name": "Virgin Islands (U.S.)"
        },
        {
            "code": "WF",
            "name": "Wallis and Futuna"
        },
        {
            "code": "EH",
            "name": "Western Sahara"
        },
        {
            "code": "YE",
            "name": "Yemen"
        },
        {
            "code": "ZM",
            "name": "Zambia"
        },
        {
            "code": "ZW",
            "name": "Zimbabwe"
        },
        {
            "code": "AX",
            "name": "Åland Islands"
        }
    ]
}

State Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/stateCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

State Codes Response Object
{
    "stateCodes": [
        {
            "code": "AL",
            "name": "Alabama"
        },
        {
            "code": "AK",
            "name": "Alaska"
        },
        {
            "code": "AZ",
            "name": "Arizona"
        },
        {
            "code": "AR",
            "name": "Arkansas"
        },
        {
            "code": "CA",
            "name": "California"
        },
        {
            "code": "CO",
            "name": "Colorado"
        },
        {
            "code": "CT",
            "name": "Connecticut"
        },
        {
            "code": "DE",
            "name": "Delaware"
        },
        {
            "code": "DC",
            "name": "District of Columbia"
        },
        {
            "code": "FL",
            "name": "Florida"
        },
        {
            "code": "GA",
            "name": "Georgia"
        },
        {
            "code": "HI",
            "name": "Hawaii"
        },
        {
            "code": "ID",
            "name": "Idaho"
        },
        {
            "code": "IL",
            "name": "Illinois"
        },
        {
            "code": "IN",
            "name": "Indiana"
        },
        {
            "code": "IA",
            "name": "Iowa"
        },
        {
            "code": "KS",
            "name": "Kansas"
        },
        {
            "code": "KY",
            "name": "Kentucky"
        },
        {
            "code": "LA",
            "name": "Louisiana"
        },
        {
            "code": "ME",
            "name": "Maine"
        },
        {
            "code": "MD",
            "name": "Maryland"
        },
        {
            "code": "MA",
            "name": "Massachusetts"
        },
        {
            "code": "MI",
            "name": "Michigan"
        },
        {
            "code": "MN",
            "name": "Minnesota"
        },
        {
            "code": "MS",
            "name": "Mississippi"
        },
        {
            "code": "MO",
            "name": "Missouri"
        },
        {
            "code": "MT",
            "name": "Montana"
        },
        {
            "code": "NE",
            "name": "Nebraska"
        },
        {
            "code": "NV",
            "name": "Nevada"
        },
        {
            "code": "NH",
            "name": "New Hampshire"
        },
        {
            "code": "NJ",
            "name": "New Jersey"
        },
        {
            "code": "NM",
            "name": "New Mexico"
        },
        {
            "code": "NY",
            "name": "New York"
        },
        {
            "code": "NC",
            "name": "North Carolina"
        },
        {
            "code": "ND",
            "name": "North Dakota"
        },
        {
            "code": "OH",
            "name": "Ohio"
        },
        {
            "code": "OK",
            "name": "Oklahoma"
        },
        {
            "code": "OR",
            "name": "Oregon"
        },
        {
            "code": "PA",
            "name": "Pennsylvania"
        },
        {
            "code": "RI",
            "name": "Rhode Island"
        },
        {
            "code": "SC",
            "name": "South Carolina"
        },
        {
            "code": "SD",
            "name": "South Dakota"
        },
        {
            "code": "TN",
            "name": "Tennessee"
        },
        {
            "code": "TX",
            "name": "Texas"
        },
        {
            "code": "UT",
            "name": "Utah"
        },
        {
            "code": "VT",
            "name": "Vermont"
        },
        {
            "code": "VA",
            "name": "Virginia"
        },
        {
            "code": "WA",
            "name": "Washington"
        },
        {
            "code": "WV",
            "name": "West Virginia"
        },
        {
            "code": "WI",
            "name": "Wisconsin"
        },
        {
            "code": "WY",
            "name": "Wyoming"
        }
    ]
}

When Customer Charged Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/whenCustomerChargedCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

When Customer Charged Codes Response Object
{
    "whenCustomerChargedCodes": [
        {
            "code": "INADVANCE",
            "name": "In Advance"
        },
        {
            "code": "WHENSERV",
            "name": "When Service Provided"
        }
    ]
}

Refund Policy Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/refundPolicyCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Refund Policy Codes Response Object
{
    "refundPolicyCodes": [
        {
            "code": "EXCHONLY",
            "name": "Exchange Only"
        },
        {
            "code": "NOREFEXCH",
            "name": "No Refund or Exchange"
        },
        {
            "code": "MORE30",
            "name": "More than 30 days"
        },
        {
            "code": "LESSEQL30",
            "name": "30 Days or Less"
        }
    ]
}

Service Provided In Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/serviceProvidedInCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Service Provided In Codes Response Object
{
    "serviceProvidedInCodes": [
        {
            "code": "30LESS",
            "name": "30 Days or Less"
        },
        {
            "code": "31TO60",
            "name": "31 to 60 Days"
        },
        {
            "code": "60PLUS",
            "name": "60+ Days"
        }
    ]
}

Front End Platform Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/frontEndPlatformCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Front End Platform Codes Response Object
{
    "frontEndPlatformCodes": [
        {
            "code": "AMEX",
            "name": "American Express Pltfrm"
        },
        {
            "code": "CPSAF",
            "name": "CP Salem - FE Pltfrm"
        },
        {
            "code": "CPTAF",
            "name": "CP Tampa - FE Pltfrm"
        },
        {
            "code": "CRDX",
            "name": "Credorax Pltfrm"
        },
        {
            "code": "ELVN",
            "name": "Elavon Pltfrm"
        },
        {
            "code": "FDBUF",
            "name": "FD BuyPass - FE Pltfrm"
        },
        {
            "code": "RCBUF",
            "name": "FD RC BuyPass - FE Pltfrm"
        },
        {
            "code": "RCBUF",
            "name": "FD RC BuyPass - FE Pltfrm"
        },
        {
            "code": "FDBUF",
            "name": "FD BuyPass - FE Pltfrm"
        },
        {
            "code": "RCBUF",
            "name": "FD RC BuyPass - FE Pltfrm"
        },
        {
            "code": "FDBUF",
            "name": "FD BuyPass - FE Pltfrm"
        },
        {
            "code": "FDCOF",
            "name": "FD Compass - FE Pltfrm"
        },
        {
            "code": "FDNAF",
            "name": "FD Nashville - FE Pltfrm"
        },
        {
            "code": "FDNAF",
            "name": "FD Nashville - FE Pltfrm"
        },
        {
            "code": "FDNAF",
            "name": "FD Nashville - FE Pltfrm"
        },
        {
            "code": "FDNOF",
            "name": "FD North - FE Pltfrm"
        },
        {
            "code": "FDNOF",
            "name": "FD North - FE Pltfrm"
        },
        {
            "code": "FDOMF",
            "name": "FD Omaha - FE Pltfrm"
        },
        {
            "code": "RCNAF",
            "name": "FD RC Nashville - FE Pltfrm"
        },
        {
            "code": "RCNAF",
            "name": "FD RC Nashville - FE Pltfrm"
        },
        {
            "code": "RCNOF",
            "name": "FD RC North - FE Pltfrm"
        },
        {
            "code": "RCNOF",
            "name": "FD RC North - FE Pltfrm"
        },
        {
            "code": "FDSOF",
            "name": "FD South - FE Pltfrm"
        },
        {
            "code": "GBLP",
            "name": "Global Payment Pltfrm"
        },
        {
            "code": "LITL",
            "name": "Litle Pltfrm"
        },
        {
            "code": "MNRS",
            "name": "Moneris Pltfrm"
        },
        {
            "code": "PPAL",
            "name": "PayPal Pltfrm"
        },
        {
            "code": "PEXP",
            "name": "Payment Express Pltfrm"
        },
        {
            "code": "PSTR",
            "name": "ProfitStars Pltfrm"
        },
        {
            "code": "SVS",
            "name": "Stored Value Solutions Pltfrm"
        },
        {
            "code": "TSYSF",
            "name": "TSYS - FE Pltfrm"
        },
        {
            "code": "TSYSF",
            "name": "TSYS - FE Pltfrm"
        },
        {
            "code": "VNTV",
            "name": "Vantiv Pltfrm"
        },
        {
            "code": "VITLF",
            "name": "Vital - FE Pltfrm"
        },
        {
            "code": "WLDP",
            "name": "Worldpay Pltfrm"
        }
    ]
}

Back End Platform Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/backEndPlatformCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Back End Platform Codes Response Object
{
    "backEndPlatformCodes": [
        {
            "code": "AMEX",
            "name": "American Express Pltfrm"
        },
        {
            "code": "PSTR",
            "name": "ProfitStars Pltfrm"
        },
        {
            "code": "MNRS",
            "name": "Moneris Pltfrm"
        },
        {
            "code": "PEXP",
            "name": "Payment Express Pltfrm"
        },
        {
            "code": "WLDP",
            "name": "Worldpay Pltfrm"
        },
        {
            "code": "PPAL",
            "name": "PayPal Pltfrm"
        },
        {
            "code": "TSYSB",
            "name": "TSYS - BE Pltfrm"
        },
        {
            "code": "SVS",
            "name": "Stored Value Solutions Pltfrm"
        },
        {
            "code": "CPSAB",
            "name": "CP Salem - BE Pltfrm"
        },
        {
            "code": "VNTV",
            "name": "Vantiv Pltfrm"
        },
        {
            "code": "FDSOB",
            "name": "FD South - BE Pltfrm"
        },
        {
            "code": "FDMEB",
            "name": "FE Memphis - BE Pltfrm"
        },
        {
            "code": "LITL",
            "name": "Litle Pltfrm"
        },
        {
            "code": "FDNOB",
            "name": "FD North - BE Pltfrm"
        },
        {
            "code": "FDOMB",
            "name": "FD Omaha - BE Pltfrm"
        },
        {
            "code": "CRDX",
            "name": "Credorax Pltfrm"
        },
        {
            "code": "CPTAB",
            "name": "CP Tampa - BE Pltfrm"
        },
        {
            "code": "GBLP",
            "name": "Global Payment Pltfrm"
        },
        {
            "code": "ELVN",
            "name": "Elavon Pltfrm"
        }
    ]
}

Discover Program Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/discoverProgramCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Discover Program Codes Response Object
{
    "discoverProgramCodes": [
        {
            "code": "EASI",
            "name": "External Agent Sales Incentive"
        },
        {
            "code": "MAP",
            "name": "Merchant Acquiring Program"
        }
    ]
}

Amex Program Asset Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/amexProgramAssetCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Amex Program Asset Codes Response Object
{
    "amexProgramAssetCodes": [
        {
            "code": "OPTBLUE",
            "name": "American Express(AMEX) OptBlue"
        },
        {
            "code": "ESA",
            "name": "American Express(AMEX) ESA"
        }
    ]
}

Shipping Method Codes

Value Comments
STANDARD Standard ground shipping
EXPEDITED Expedited shipping

Attachment Type Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/attachmentTypeCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Attachment Types Response Object
{
    "attachmentTypeCodes": [
        {
            "code": "501C",
            "name": "501C Form"
        },
        {
            "code": "ACCTUPDTRINTAKE",
            "name": "Account Updater - Intake Form"
        },
        {
            "code": "ACCTUPDTRMC",
            "name": "Account Updater - MasterCard Update Form"
        },
        {
            "code": "ACCTUPDTRVISA",
            "name": "Account Updater - VISA Update Form"
        },
        {
            "code": "ACCTUPDTR",
            "name": "Account Updater Addendum"
        },
        {
            "code": "ACHFEESCHD",
            "name": "ACH - Fee Schedule"
        },
        {
            "code": "ACHLST3BNK",
            "name": "ACH - Last 3 Bank Statements"
        },
        {
            "code": "ACHPROCSRV",
            "name": "ACH - Processing Services Agreement"
        },
        {
            "code": "ACHPROFITSTR",
            "name": "ACH - ProfitStars Application"
        },
        {
            "code": "APPLIC",
            "name": "Application form"
        },
        {
            "code": "VOIDBNKCHK1",
            "name": "Bank 1 Voided Check"
        },
        {
            "code": "VOIDBNKCHK2",
            "name": "Bank 2 Voided Check"
        },
        {
            "code": "BOARDING",
            "name": "Boarding Form"
        },
        {
            "code": "CANCELREQ",
            "name": "Cancel Request"
        },
        {
            "code": "CLOVER",
            "name": "Clover Addendum"
        },
        {
            "code": "CLOVERGO",
            "name": "CloverGo Addendum"
        },
        {
            "code": "DISCARD",
            "name": "Discard"
        },
        {
            "code": "GEP",
            "name": "GEP Addendum"
        },
        {
            "code": "FIN",
            "name": "Merchant Financials"
        },
        {
            "code": "OTHER",
            "name": "Other"
        },
        {
            "code": "SIGNEDAPP",
            "name": "Signed Application"
        },
        {
            "code": "STMTS",
            "name": "Statements"
        },
        {
            "code": "TELECHECK",
            "name": "Telecheck Addendum"
        }
    ]
}

Bill To Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/billToCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Bank To Codes Response Object
{
    "billToCodes": [
        {
            "code": "PARTNER",
            "name": "Partner Residuals"
        },
        {
            "code": "PARTNERCC",
            "name": "Partner Credit Card"
        },
        {
            "code": "INTERNAL",
            "name": "Internal"
        },
        {
            "code": "CUST",
            "name": "Customer"
        }
    ]
}

Bill To Detail Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/billToDetailCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Bill To Detail Codes Response Object
{
    "billToDetailCodes": [
        {
            "code": "CC",
            "name": "CardConnect"
        },
        {
            "code": "INTSALE",
            "name": "Internal Sale"
        },
        {
            "code": "SWAP",
            "name": "Swap"
        },
        {
            "code": "NEXTECH",
            "name": "NexTech"
        },
        {
            "code": "PO",
            "name": "Purchase Order"
        }
    ]
}

Billing Frequency Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/billingFrequencyCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Billing Frequency Codes Response Object
{
    "billingFequencyCodes": [
        {
            "code": "ONETIME",
            "name": "One Time"
        },
        {
            "code": "MONTHLY",
            "name": "Monthly"
        }
    ]
}

Order Status Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/orderStatusCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Order Status Codes Response Object
{
    "orderStatusCodes": [
        {
            "code": "NEW",
            "name": "New"
        },
        {
            "code": "CANCELLED",
            "name": "Cancelled"
        },
        {
            "code": "EXPORTED",
            "name": "Exported"
        },
        {
            "code": "PLACED",
            "name": "Placed"
        },
        {
            "code": "FULFILLING",
            "name": "Fulfilling"
        },
        {
            "code": "SHIPPED",
            "name": "Shipped"
        }
    ]
}

Shipping Carrier Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/shippingCarrierCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Shipping Carrier Codes Response Object
{
    "shippingCarrierCodes": [
        {
            "code": "FEDEX",
            "name": "FedEx"
        },
        {
            "code": "UPS",
            "name": "UPS"
        }
    ]
}

Shipping Method Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/shippingMethodCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Shipping Method Codes Response Object
{
    "shippingMethodCodes": [
        {
            "code": "EXPEDITED",
            "name": "Expedited"
        },
        {
            "code": "STANDARD",
            "name": "Standard"
        }
    ]
}

Equipment Supplier Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/equipmentSupplierCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Equipment Supplier Codes Response Object
{
    "equipmentSupplierCodes": [
        {
            "code": "FDMP",
            "name": "First Data Marketplace"
        },
        {
            "code": "CARDCONNECT",
            "name": "CardConnect"
        },
        {
            "code": "THIRDPARTY",
            "name": "Thirdparty"
        },
        {
            "code": "TMS",
            "name": "TMS"
        }
    ]
}

Equipment Type Codes

Path

https://copilot-api-uat.cardconnect.com/lookup/equipmentTypeCodes

Method

GET

Consumes

application/json

Produces

application/json

Response Body Content

Equipment Type Codes Response Object
{
    "equipmentTypeCodes": [
        {
            "code": "TERMINAL",
            "name": "Terminal"
        },
        {
            "code": "GATEWAY",
            "name": "Gateway"
        },
        {
            "code": "SOFTWARE",
            "name": "Software"
        }
    ]
}

Errors

When there is an error in the request, there will be a non-null errors array in the response body. If there are multiple field validation errors, there will be multiple error objects in the errors array. See the example below.

Error Definition

Example Error Array
{
    "errors": [
        {
            "code": "1113",
            "message": "Owner date of birth is invalid.  Please use MM/DD/YYYY format.",
            "errorField": "merchant.ownership.owner.ownerDob",
            "status": "BAD_REQUEST"
        },
        {
            "code": "1115",
            "message": "Phone is invalid.  Please use XXX-XXX-XXXX format.",
            "errorField": "merchant.demographic.businessPhone",
            "status": "BAD_REQUEST"
        }
    ]
}
Field Type Comments
code String The error code (see codes below)
message String The error message
errorField String The field that caused the error
status String The HTTP Status Code