Skip to content

Check Processor

Electronic check processing and reversals.

3 endpoints All API groups

Get Report

POST /api/CheckProcessor/GetReport

Request a check transactions report.

Request body

Schema: Request

Field Type Requirement Description
AppKey string Required Application Key which uniquely identifies your application as provided by the Blackstone system.
AppType integer (int32) Required Application Type as provided by the Blackstone system.
mid integer (int32) Required Merchant ID – A number used to identify the merchant.
cid integer (int32) Required Cashier ID – A number used to identify the merchant’s subclient.
UserName string Required User credential of the client on the host.
Password string Required Password of the client on the host.
IpAddress string Optional
Source string — ApiClient, BpaydPortal, BPaydApp, BatchCloser, RecurringBillingTask, BPaydPlugin, PaymentFrame, VirtualTerminal, PaymentLink, Recurring, Invoice, QuickPayment, TakePayment, QuickPaymentMobileApp, WordPress, Zoho, Xero, Odoo, GoHighLevel, TakePaymentMobileApp Optional
AppInfo string Optional
IsTest boolean Optional
curl --request POST \
  --url 'https://services.bmspay.com/api/CheckProcessor/GetReport' \
  --header 'Content-Type: application/json' \
  --data-binary @- <<'JSON'
{
  "AppKey": "your-app-key",
  "AppType": 1,
  "mid": 1,
  "cid": 1,
  "UserName": "your-username",
  "Password": "your-password",
  "IsTest": true
}
JSON
{
  "AppKey": "your-app-key",
  "AppType": 1,
  "mid": 1,
  "cid": 1,
  "UserName": "your-username",
  "Password": "your-password",
  "IsTest": true
}

Responses

Status Description Schema
200 The Check Report Response CheckReportResponse
Example response
{
  "Transactions": [
    {
      "mid": 1,
      "RoutingNumber": "<routing-number>",
      "AccountNumber": "<account-number>",
      "AccountType": "<account-type>",
      "PacketIdentifier": "<packet-identifier>",
      "CheckAmount": 10.0,
      "ResponseType": "<response-type>",
      "ResponseTypeText": "<response-type-text>",
      "ResultCode": "<result-code>",
      "TypeCode": "<type-code>",
      "Code": "<code>",
      "Message": "<message>",
      "CheckNumber": "<check-number>",
      "MadeOn": "2026-01-31T12:00:00Z",
      "TransactionVoided": false,
      "TransactionVoidedOn": "2026-01-31T12:00:00Z"
    }
  ],
  "ResponseCode": 200,
  "Msg": [
    "<msg>"
  ],
  "verbiage": "<verbiage>",
  "displayMessage": "<display-message>"
}

Process Check

POST /api/CheckProcessor/ProcessCheck

Process checks by Web with Geti web service

Request body

Schema: CheckRequest

Field Type Requirement Description
TerminalID string Optional Identify the device which is doing the transaction.
PacketIdentifier string Optional Packet Identifier
| Value | Description |
|---|---|
| A | This is used in schemas for ARC, BOC, POP, TEL, WEB, and Check 21 to indicate that an authorization is requested for the XML Data Packet being sent. |
| O | This is used in schemas for ARC, BOC, POP, TEL, WEB, and Check 21 when the host system receives a manager needed message to void the previous transaction and input a new transaction in its place. |
| V | This is used in schemas for ARC, BOC, POP, TEL, WEB, and Check 21 to void a previously authorized transaction.However, it should be noted that transactions can only be voided on the same calendar day they were authorized. |
ROUTING_NUMBER string Optional Bank routing number
ACCOUNT_NUMBER string Optional Check Account Number
CHECK_NUMBER string Optional Check number
ACCOUNT_TYPE string Optional Account Type
| Name | Value | Description |
|---|---|---|
| CHECKING | Checking | Checking Account |
| SAVING | Saving | Savings Account |
FIRST_NAME string Optional First Name on check.
LAST_NAME string Optional Last Name on check.
ADDRESS1 string Optional Address line 1
ADDRESS2 string Optional Address line 2
CITY string Optional Address City
STATE string Optional State
| Name | Value | Description |
|---|---|---|
| AB | 0 | Alberta |
| AK | 1 | Alaska |
| AL | 2 | Alabama |
| AR | 3 | Arkansas |
| AS | 4 | American Samoa |
| AZ | 5 | Arizona |
| BC | 6 | British Columbia |
| CA | 7 | California |
| CO | 8 | Colorado |
| CT | 9 |Connecticut|
| DC | 10 | District of Columbia |
| DE | 11 | Delaware |
| FL | 12 | Florida |
| GA | 13 | Georgia |
| GU | 14 | Guam |
| HI | 15 | Hawaii |
| IA | 16 | Iowa |
| ID | 17 | Idaho |
| IL | 18 | Illinois |
| IN | 19 | Indiana |
| KS | 20 | Kansas |
| KY | 21 | Kentucky |
| LA | 22 | Louisiana |
| MA | 23 | Massachusetts |
| MB | 24 | Manitoba |
| MD | 25 | Maryland |
| ME | 26 | Maine |
| MI | 27 | Michigan |
| MN | 28 | Minnesota |
| MO | 29 | Missouri |
| MS | 30 | Mississippi |
| MT | 31 | Montana |
| NB | 32 | New Brunswick |
| NC | 33 | North Carolina |
| ND | 34 | North Dakota |
| NE | 35 | Nebraska |
| NF | 36 | Newfoundland |
| NH | 37 | New Hampshire |
| NJ | 38 | New Jersey |
| NM | 39 | New Mexico |
| NS | 40 | Nova Scotia |
| NT | 41 | Northwest Territories |
| NU | 42 | Nunavut |
| NV | 43 | Nevada |
| NY | 44 | New York |
| OH | 45 | Ohio |
| OK | 46 | Oklahoma |
| ON | 47 | Ontario |
| OR | 48 | Oregon |
| PA | 49 | Pennsylvania |
| PE | 50 | Prince Edward Island |
| PR | 51 | Puerto Rico |
| QC | 52 | Quebec |
| RI | 53 | Rhode Island |
| SC | 54 | South Carolina |
| SD | 55 | South Dakota |
| SK | 56 | Saskatchewan |
| TN | 57 | Tennessee |
| TX | 58 | Texas |
| UT | 59 | Utah |
| VA | 60 | Virginia |
| VI | 61 | Virgin Islands |
| VT | 62 | Vermont |
| WA | 63 | Washington |
| WI | 64 | Wisconsin |
| WV | 65 | West Virginia |
| WY | 66 | Wyoming |
| YT | 67 | Yukon |
ZIP string Optional Address Zip Code
PHONE_NUMBER string Optional Phone Number
DL_STATE string Optional State
| Name | Value | Description |
|---|---|---|
| AB | 0 | Alberta |
| AK | 1 | Alaska |
| AL | 2 | Alabama |
| AR | 3 | Arkansas |
| AS | 4 | American Samoa |
| AZ | 5 | Arizona |
| BC | 6 | British Columbia |
| CA | 7 | California |
| CO | 8 | Colorado |
| CT | 9 |Connecticut|
| DC | 10 | District of Columbia |
| DE | 11 | Delaware |
| FL | 12 | Florida |
| GA | 13 | Georgia |
| GU | 14 | Guam |
| HI | 15 | Hawaii |
| IA | 16 | Iowa |
| ID | 17 | Idaho |
| IL | 18 | Illinois |
| IN | 19 | Indiana |
| KS | 20 | Kansas |
| KY | 21 | Kentucky |
| LA | 22 | Louisiana |
| MA | 23 | Massachusetts |
| MB | 24 | Manitoba |
| MD | 25 | Maryland |
| ME | 26 | Maine |
| MI | 27 | Michigan |
| MN | 28 | Minnesota |
| MO | 29 | Missouri |
| MS | 30 | Mississippi |
| MT | 31 | Montana |
| NB | 32 | New Brunswick |
| NC | 33 | North Carolina |
| ND | 34 | North Dakota |
| NE | 35 | Nebraska |
| NF | 36 | Newfoundland |
| NH | 37 | New Hampshire |
| NJ | 38 | New Jersey |
| NM | 39 | New Mexico |
| NS | 40 | Nova Scotia |
| NT | 41 | Northwest Territories |
| NU | 42 | Nunavut |
| NV | 43 | Nevada |
| NY | 44 | New York |
| OH | 45 | Ohio |
| OK | 46 | Oklahoma |
| ON | 47 | Ontario |
| OR | 48 | Oregon |
| PA | 49 | Pennsylvania |
| PE | 50 | Prince Edward Island |
| PR | 51 | Puerto Rico |
| QC | 52 | Quebec |
| RI | 53 | Rhode Island |
| SC | 54 | South Carolina |
| SD | 55 | South Dakota |
| SK | 56 | Saskatchewan |
| TN | 57 | Tennessee |
| TX | 58 | Texas |
| UT | 59 | Utah |
| VA | 60 | Virginia |
| VI | 61 | Virgin Islands |
| VT | 62 | Vermont |
| WA | 63 | Washington |
| WI | 64 | Wisconsin |
| WV | 65 | West Virginia |
| WY | 66 | Wyoming |
| YT | 67 | Yukon |
DL_NUMBER string Optional Driver’s License Number
COURTESY_CARD_ID string Optional Courtesy Card ID
SSN4 string Optional Last 4 digits of the Social Security number
DOB_YEAR string Optional Birthdate's year
CHECK_AMOUNT string Optional Check Amount
Method integer (int32) Optional | Name | Value | Description |
|---|---|---|
| CheckNoVerificationDLOptional | 0 |

Using this method:

  • Driver License is not required.
  • Check Verification is not processed.
  • ID verification is not processed.
|
| CheckNoVerificationDLRequired | 1 |

Using this method:

  • Driver License is required.
  • Check Verification is not processed.
  • ID verification is not processed.
|
| CheckVerificationIdentityVerificationDLOptional | 3 |

Using this method:

  • Driver License is not required.
  • Check Verification is processed.
  • ID verification is processed.
|
| CheckVerificationIdentityVerificationDLRequired | 4 |

Using this method:

  • Driver License is required.
  • Check Verification is processed.
  • ID verification is processed.
|
| CheckVerificationOnlyDLOptional | 5 |

Using this method:

  • Driver License is not required.
  • Check Verification is processed.
  • ID verification is processed.
|
| CheckVerificationOnlyDLRequired | 6 |

Using this method:

  • Driver License is required.
  • Check Verification is processed.
  • ID verification is not processed.
|
| IdentityVerificationOnlyDLOptional | 7 |

Using this method:

  • Driver License is not required.
  • Check Verification is not processed.
  • ID verification is processed.
|
| IdentityVerificationOnlyDLRequired | 8 |

Using this method:

  • Driver License is required.
  • Check Verification is not processed.
  • ID verification is processed.
|
COMPANY_NAME string Optional Company Name
CheckTransactionId integer (int32) Optional
SaveToken boolean Optional
AppKey string Required Application Key which uniquely identifies your application as provided by the Blackstone system.
AppType integer (int32) Required Application Type as provided by the Blackstone system.
mid integer (int32) Required Merchant ID – A number used to identify the merchant.
cid integer (int32) Required Cashier ID – A number used to identify the merchant’s subclient.
UserName string Required User credential of the client on the host.
Password string Required Password of the client on the host.
IpAddress string Optional
Source string — ApiClient, BpaydPortal, BPaydApp, BatchCloser, RecurringBillingTask, BPaydPlugin, PaymentFrame, VirtualTerminal, PaymentLink, Recurring, Invoice, QuickPayment, TakePayment, QuickPaymentMobileApp, WordPress, Zoho, Xero, Odoo, GoHighLevel, TakePaymentMobileApp Optional
AppInfo string Optional
IsTest boolean Optional
curl --request POST \
  --url 'https://services.bmspay.com/api/CheckProcessor/ProcessCheck' \
  --header 'Content-Type: application/json' \
  --data-binary @- <<'JSON'
{
  "AppKey": "your-app-key",
  "AppType": 1,
  "mid": 1,
  "cid": 1,
  "UserName": "your-username",
  "Password": "your-password",
  "IsTest": true
}
JSON
{
  "AppKey": "your-app-key",
  "AppType": 1,
  "mid": 1,
  "cid": 1,
  "UserName": "your-username",
  "Password": "your-password",
  "IsTest": true
}

Responses

Status Description Schema
200 The Check Response CheckResponse
Example response
{
  "ResultCodeMsg": [
    "<result-code-msg>"
  ],
  "CodeTypeMsg": [
    "<code-type-msg>"
  ],
  "ErrorMessages": [
    "<error-messages>"
  ],
  "ResponseType": "<response-type>",
  "ResponseTypeText": "<response-type-text>",
  "ResultCode": "<result-code>",
  "TypeCode": "<type-code>",
  "Code": "<code>",
  "Message": "<message>",
  "TransactionInfo": {
    "AccountNumber": "<account-number>",
    "RoutingNumber": "<routing-number>",
    "CheckNumber": "<check-number>",
    "CheckAmount": "<check-amount>",
    "ServiceTransactionNumber": "<service-transaction-number>"
  },
  "Token": "<token>",
  "ValidationMessage": "<validation-message>",
  "ResponseCode": 200,
  "Msg": [
    "<msg>"
  ],
  "verbiage": "<verbiage>",
  "displayMessage": "<display-message>"
}

Process Token

POST /api/CheckProcessor/ProcessToken

Request body

Schema: CheckTokenRequest

Field Type Requirement Description
Token string Required
CHECK_AMOUNT string Required
CHECK_NUMBER string Optional
AppKey string Required Application Key which uniquely identifies your application as provided by the Blackstone system.
AppType integer (int32) Required Application Type as provided by the Blackstone system.
mid integer (int32) Required Merchant ID – A number used to identify the merchant.
cid integer (int32) Required Cashier ID – A number used to identify the merchant’s subclient.
UserName string Required User credential of the client on the host.
Password string Required Password of the client on the host.
IpAddress string Optional
Source string — ApiClient, BpaydPortal, BPaydApp, BatchCloser, RecurringBillingTask, BPaydPlugin, PaymentFrame, VirtualTerminal, PaymentLink, Recurring, Invoice, QuickPayment, TakePayment, QuickPaymentMobileApp, WordPress, Zoho, Xero, Odoo, GoHighLevel, TakePaymentMobileApp Optional
AppInfo string Optional
IsTest boolean Optional
curl --request POST \
  --url 'https://services.bmspay.com/api/CheckProcessor/ProcessToken' \
  --header 'Content-Type: application/json' \
  --data-binary @- <<'JSON'
{
  "Token": "<token>",
  "CHECK_AMOUNT": "<check-amount>",
  "AppKey": "your-app-key",
  "AppType": 1,
  "mid": 1,
  "cid": 1,
  "UserName": "your-username",
  "Password": "your-password",
  "IsTest": true
}
JSON
{
  "Token": "<token>",
  "CHECK_AMOUNT": "<check-amount>",
  "AppKey": "your-app-key",
  "AppType": 1,
  "mid": 1,
  "cid": 1,
  "UserName": "your-username",
  "Password": "your-password",
  "IsTest": true
}

Responses

Status Description Schema
200 OK CheckResponse
Example response
{
  "ResultCodeMsg": [
    "<result-code-msg>"
  ],
  "CodeTypeMsg": [
    "<code-type-msg>"
  ],
  "ErrorMessages": [
    "<error-messages>"
  ],
  "ResponseType": "<response-type>",
  "ResponseTypeText": "<response-type-text>",
  "ResultCode": "<result-code>",
  "TypeCode": "<type-code>",
  "Code": "<code>",
  "Message": "<message>",
  "TransactionInfo": {
    "AccountNumber": "<account-number>",
    "RoutingNumber": "<routing-number>",
    "CheckNumber": "<check-number>",
    "CheckAmount": "<check-amount>",
    "ServiceTransactionNumber": "<service-transaction-number>"
  },
  "Token": "<token>",
  "ValidationMessage": "<validation-message>",
  "ResponseCode": 200,
  "Msg": [
    "<msg>"
  ],
  "verbiage": "<verbiage>",
  "displayMessage": "<display-message>"
}