Skip to content

Print Check

Request URL

POST /check/print

Description

This endpoint creates a check to be printed. The check details are stored in the connectFi database and then sent to the bank to be printed. The /check/print endpoint supports idempotency and will not accept requests with duplicate reference IDs.

The check is printed on a standard trifold check stock and mailed via USPS_FirstClass in a #10 double pane envelope. Checks are typically delivered within 7-10 days of mailing. The SLA on checks being mailed is 2 business days.

A dynamic logo can be added to the top left corner of the check (the URL link to the image would need to be included in the request using the "logo" property.)

The /check/print endpoint supports idempotency and will not accept requests with duplicate reference IDs. The external reference ID included in the request body is how connectFi controls for duplicate check-printing requests. It is important to note that checks submitted with unique reference IDs will not be considered duplicates, even if there are other properties with identical values. For example, the following requests are not considered duplicates even though they refer to the same check data.

{
    "reference": "EXT_REFERENCE_ID1", //Different reference IDS
    "checkAttributes": {
        "amount": 11.13, //same amount
        "currency": "USD",
        "returnAddress": { //same return address details
            "addressLine1": "Platform Name, ATTN: Employee",
            "addressLine2": "100 Unicorn St",
            "addressLine3": "San Francisco, CA 12345"
        },
        "payerName": "Jim Payer", //same
        "payerAddress": { //same payer address details
            "addressLine1": "3700 Loon Rd",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345-1234"
        },
        "payeeName": "ABC123abc Energy", //same
        "payeeAddress": { //same payee address details
            "addressLine1": "123 Some Road",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345"
        },
        "platformNumber": "+1 (555) 666-7777", //same
        "memo": "Both of these checks will print with two separate serial numbers"
    },
    "webhookUrl": "https://your_webhook_url/EXT_REFERENCE_ID1"
}
{
    "reference": "EXT_REFERENCE_ID2", //Different reference IDS
    "checkAttributes": {
        "amount": 11.13, //same amount
        "currency": "USD",
        "returnAddress": {
            //same return address details
        },
        "payerName": "Jim Payer", //same
        "payerAddress": {
            //same payer address details
        },
        "payeeName": "ABC123abc Energy", //same
        "payeeAddress": {
            //same payee address details
        },
        "platformNumber": "+1 (555) 666-7777", //same
        "memo": "Both of these checks will print with two separate serial numbers"
    },
    "webhookUrl": "https://your_webhook_url/EXT_REFERENCE_ID1"
}

Schema

Property table for check/print

Property Description Required Schema
reference An external alphanumeric reference ID for the entity in your system Yes {
  "type": "string",
  "pattern": "^[0-9a-zA-Z]+$",
  "minLength": 1,
  "maxLength": 32,
  "description": "common-reference"
}
checkAttributes An object containing all of the applicable check attributes Yes check printing baseCheckAttributes object
webhookUrl webhookUrl No {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 0,
  "maxLength": 500,
  "nullable": true,
  "description": "common-commonStr500"
}

Property table for check printing address object

Property Description Required Schema
addressLine1 addressLine1 Yes {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 1,
  "maxLength": 50,
  "isNotOnlyWhitespace": true,
  "description": "common-commonStr50Req"
}
addressLine2 addressLine2 No {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 0,
  "maxLength": 50,
  "nullable": true,
  "description": "common-commonStr50"
}
addressLine3 addressLine3 No {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 0,
  "maxLength": 50,
  "nullable": true,
  "description": "common-commonStr50"
}
city city Yes {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 1,
  "maxLength": 50,
  "isNotOnlyWhitespace": true,
  "description": "common-commonStr50Req"
}
state state Yes {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 1,
  "maxLength": 50,
  "isNotOnlyWhitespace": true,
  "description": "common-commonStr50Req"
}
postalCode postalCode Yes {
  "type": "string",
  "pattern": "^[0-9a-zA-Z-]+$",
  "minLength": 5,
  "maxLength": 10,
  "description": "customer-postalCode"
}
country country No {
  "type": "string",
  "pattern": "^[A-Z]{3}$",
  "description": "customer-countryCodeA3"
}

Property table for check printing baseCheckAttributes object

Property Description Required Schema
amount amount Yes {
  "type": "number",
  "exclusiveMinimum": 0,
  "amountPrecision": 2,
  "description": "common-amount"
}
currency A three character ISO alphabetic code to identify the currency Yes {
  "type": "string",
  "enum": [ "USD" ]
}
returnAddress An object containing the return address Yes check printing returnAddress object
payerName Name of the payer Yes {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 1,
  "maxLength": 50,
  "isNotOnlyWhitespace": true,
  "description": "common-commonStr50Req"
}
payerAddress An object containing the payer address Yes check printing address object
payeeName Name of the payee Yes {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 1,
  "maxLength": 50,
  "isNotOnlyWhitespace": true,
  "description": "common-commonStr50Req"
}
payeeAddress An object containing the payee address Yes check printing address object
platformNumber Platform Company's customer service telephone number Yes {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 1,
  "maxLength": 50,
  "isNotOnlyWhitespace": true,
  "description": "common-commonStr50Req"
}
memo memo No {
  "type": "string",
  "minLength": 1,
  "maxLength": 45,
  "description": "check-printing-memo"
}
reference An external alphanumeric reference ID for the entity in your system No {
  "type": "string",
  "pattern": "^[0-9a-zA-Z_]+$",
  "minLength": 1,
  "maxLength": 36,
  "description": "common-id"
}
logo URL to image file - leave blank if no logo image should be printed. For best results, use .png format. Alternative logo formats include .jpg and .tiff No {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 0,
  "maxLength": 500,
  "nullable": true,
  "description": "common-commonStr500"
}
attachmentCount The number of attachments included in the attachments array No {
  "type": "number",
  "exclusiveMinimum": 0
}
attachments An array of URL(s) to image file(s) such as a pack list. Leave blank if no attachments are needed. No array of {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 0,
  "maxLength": 500,
  "nullable": true,
  "description": "common-commonStr500"
}

Property table for check printing returnAddress object

Property Description Required Schema
addressLine1 addressLine1 Yes {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 1,
  "maxLength": 50,
  "isNotOnlyWhitespace": true,
  "description": "common-commonStr50Req"
}
addressLine2 addressLine2 No {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 0,
  "maxLength": 50,
  "nullable": true,
  "description": "common-commonStr50"
}
addressLine3 addressLine3 No {
  "type": "string",
  "pattern": "^((?![<>]).)*$",
  "minLength": 0,
  "maxLength": 50,
  "nullable": true,
  "description": "common-commonStr50"
}

Request Body

{
    "reference": "UNIQUE_REFERENCE_ID",
    "checkAttributes": {
        "amount": 1.01,
        "currency": "USD",
        "returnAddress": {
            "addressLine1": "Platform Name, ATTN: Employee",
            "addressLine2": "100 Unicorn St",
            "addressLine3": "San Francisco, CA 94103"
        },
        "payerName": "Jim Payer",
        "payerAddress": {
            "addressLine1": "3700 Loon Rd",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345-1234"
        },
        "payeeName": "Xcel Energy",
        "payeeAddress": {
            "addressLine1": "414 Nicollet Mall",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345"
        },
        "platformNumber": "+1 (555) 666-7777",
        "memo": "Electricity payment"
    },
    "webhookUrl": "https://your_webhook_url/UNIQUE_REFERENCE_ID"
}

Snippet Examples

javascript

const axios = require('axios');
const data = {
    "reference": "UNIQUE_REFERENCE_ID",
    "checkAttributes": {
        "amount": 1.01,
        "currency": "USD",
        "returnAddress": {
            "addressLine1": "Platform Name, ATTN: Employee",
            "addressLine2": "100 Unicorn St",
            "addressLine3": "San Francisco, CA 94103"
        },
        "payerName": "Jim Payer",
        "payerAddress": {
            "addressLine1": "3700 Loon Rd",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345-1234"
        },
        "payeeName": "Xcel Energy",
        "payeeAddress": {
            "addressLine1": "414 Nicollet Mall",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345"
        },
        "platformNumber": "+1 (555) 666-7777",
        "memo": "Electricity payment"
    },
    "webhookUrl": "https://your_webhook_url/UNIQUE_REFERENCE_ID"
};
const config = {
  method: 'POST',
  url: '${CONNECTFI_BASE_URL}/check/print',
  headers: {
    'Content-Type': "application/json",
    'x-connectfi-token': "A long random string token received from /auth/get-token request"
  },
  data
};

let result;
try {
  result = await axios.request(config);
  if (result.status === 200) {
    console.log(JSON.stringify(result.data));
  }
} catch (err) {
  console.log({
    errCode: err.code,
    responseStatus: err.response && err.response.status,
    data: err.response && JSON.stringify(err.response.data)
  });
}

cURL

curl --location "CONNECTFI_BASE_URL/check/print" --data "{    \"reference\":\"UNIQUE_REFERENCE_ID\",   \"checkAttributes\":{        \"amount\":1.01,       \"currency\":\"USD\",       \"returnAddress\":{            \"addressLine1\":\"Platform Name,ATTN:Employee\",           \"addressLine2\":\"100 Unicorn St\",           \"addressLine3\":\"San Francisco,CA 94103\"        },       \"payerName\":\"Jim Payer\",       \"payerAddress\":{            \"addressLine1\":\"3700 Loon Rd\",           \"city\":\"Minneapolis\",           \"state\":\"MN\",           \"postalCode\":\"12345-1234\"        },       \"payeeName\":\"Xcel Energy\",       \"payeeAddress\":{            \"addressLine1\":\"414 Nicollet Mall\",           \"city\":\"Minneapolis\",           \"state\":\"MN\",           \"postalCode\":\"12345\"        },       \"platformNumber\":\"+1 (555) 666-7777\",       \"memo\":\"Electricity payment\"    },   \"webhookUrl\":\"https://your_webhook_url/UNIQUE_REFERENCE_ID\"}" --header "Content-Type: application/json" --header "x-connectfi-token: A long random string token received from /auth/get-token request" 

Successful Response Examples

200 CHECK/PRINT SUCCESSFUL RESPONSE

HEADERS

Header Value
Content-Type application/json
x-connectfi-token A long random string token received from /auth/get-token request

REQUEST BODY

{
    "reference": "extChkRef700",
    "checkAttributes": {
        "amount": 1.01,
        "currency": "USD",
        "returnAddress": {
            "addressLine1": "Platform Name, ATTN: Employee",
            "addressLine2": "100 Unicorn St",
            "addressLine3": "San Francisco, CA 94103"
        },
        "payerName": "Jim Payer",
        "payerAddress": {
            "addressLine1": "3700 Loon Rd",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345-1234"
        },
        "payeeName": "Xcel Energy",
        "payeeAddress": {
            "addressLine1": "414 Nicollet Mall",
            "city": "Minneapolis",
            "state": "MN",
            "postalCode": "12345"
        },
        "platformNumber": "+1 (555) 666-7777",
        "memo": "Electricity payment"
    },
    "webhookUrl": "https://your_webhook_url/extChkRef700"
}

RESPONSE BODY

{
    "code": "0",
    "data": {
        "cFiCheckId": "chk_6UxgKofyzcMWdSjbZlMMZs",
        "reference": "extChkRef700",
        "serial": "89",
        "amount": 1.01,
        "currency": "USD",
        "cFiAggregatorId": "CLIENTID",
        "cFiCheckStatus": "Processing",
        "initVoid": false,
        "webhookUrl": "https://your_webhook_url/extChkRef700",
        "dtsCreatedAt": "2023-11-02T11:20:54.354Z"
    },
    "requestId": "e3140730797111eeb5658f28ab5fe311"
}