---
title: Authorize check
slug: apis/payments/checks/authorize-a-check
description: Authorize a check via POST /checks/v1/positive-pay-authorizations.
icon: {"apiMethod":"POST"}
docTags: 
createdAt: 2025-05-06T08:42:30.504Z
---

## Relevant webhooks

For this endpoint be sure you have [registered](docId\:BN5XtgkJogBe-CtwomCbS) for these webhooks:

- [Check.Payment.Received](docId\:cWUBvaS0BDIfokyxu5LhQ)&#x20;
- [Check.PositivePay.Created](docId\:cWUBvaS0BDIfokyxu5LhQ)&#x20;

## API reference

Authorizes a check using [Positive Pay](docId\:qMy-Hnem-DnbIioD8z2jS).&#x20;

:::ApiMethodV2
```json
{
  "name": "Endpoint: /checks/v1/positive-pay-authorizations",
  "method": "POST",
  "url": "https://sandbox.crbcos.com/checks/v1/positive-pay-authorizations",
  "description": "",
  "tab": "examples",
  "examples": {
    "languages": [
      {
        "id": "C57PnRkRzpPg0u7vhM1aA",
        "language": "curl",
        "code": "curl --location 'https://sandbox.crbcos.com/checks/v1/positive-pay-authorizations' \\\n--data '{\n  \"accountNumber\": \"2640511503\",\n  \"amount\": 10000,\n  \"checkNumber\": 64958137456,\n  \"payeeName\": \"John Strong\",\n  \"expiresAt\": \"2025-07-19T12:12:27.270Z\"\n}'",
        "customLabel": ""
      },
      {
        "id": "vYz0Jtv8I1mhbtkrI5WDB",
        "language": "nodejs",
        "code": "var https = require('follow-redirects').https;\nvar fs = require('fs');\n\nvar options = {\n  'method': 'POST',\n  'hostname': 'sandbox.crbcos.com',\n  'path': '/checks/v1/positive-pay-authorizations',\n  'headers': {\n  },\n  'maxRedirects': 20\n};\n\nvar req = https.request(options, function (res) {\n  var chunks = [];\n\n  res.on(\"data\", function (chunk) {\n    chunks.push(chunk);\n  });\n\n  res.on(\"end\", function (chunk) {\n    var body = Buffer.concat(chunks);\n    console.log(body.toString());\n  });\n\n  res.on(\"error\", function (error) {\n    console.error(error);\n  });\n});\n\nvar postData =  \"{\\r\\n  \\\"accountNumber\\\": \\\"2640511503\\\",\\r\\n  \\\"amount\\\": 10000,\\r\\n  \\\"checkNumber\\\": 64958137456,\\r\\n  \\\"payeeName\\\": \\\"John Strong\\\",\\r\\n  \\\"expiresAt\\\": \\\"2025-07-19T12:12:27.270Z\\\"\\r\\n}\";\n\nreq.write(postData);\n\nreq.end();",
        "customLabel": ""
      },
      {
        "id": "KKmPhrGOQsjsssgRYQSOk",
        "language": "python",
        "code": "import http.client\n\nconn = http.client.HTTPSConnection(\"sandbox.crbcos.com\")\npayload = \"{\\r\\n  \\\"accountNumber\\\": \\\"2640511503\\\",\\r\\n  \\\"amount\\\": 10000,\\r\\n  \\\"checkNumber\\\": 64958137456,\\r\\n  \\\"payeeName\\\": \\\"John Strong\\\",\\r\\n  \\\"expiresAt\\\": \\\"2025-07-19T12:12:27.270Z\\\"\\r\\n}\"\nheaders = {}\nconn.request(\"POST\", \"/checks/v1/positive-pay-authorizations\", payload, headers)\nres = conn.getresponse()\ndata = res.read()\nprint(data.decode(\"utf-8\"))",
        "customLabel": ""
      },
      {
        "id": "DX88Z7gdC-upg6Usiqy5c",
        "language": "ruby",
        "code": "require \"uri\"\nrequire \"net/http\"\n\nurl = URI(\"https://sandbox.crbcos.com/checks/v1/positive-pay-authorizations\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest.body = \"{\\r\\n  \\\"accountNumber\\\": \\\"2640511503\\\",\\r\\n  \\\"amount\\\": 10000,\\r\\n  \\\"checkNumber\\\": 64958137456,\\r\\n  \\\"payeeName\\\": \\\"John Strong\\\",\\r\\n  \\\"expiresAt\\\": \\\"2025-07-19T12:12:27.270Z\\\"\\r\\n}\"\n\nresponse = https.request(request)\nputs response.read_body\n",
        "customLabel": ""
      },
      {
        "id": "WEXP6FBsmhFBu7kfskjCy",
        "language": "go",
        "code": "package main\n\nimport (\n  \"fmt\"\n  \"strings\"\n  \"net/http\"\n  \"io\"\n)\n\nfunc main() {\n\n  url := \"https://sandbox.crbcos.com/checks/v1/positive-pay-authorizations\"\n  method := \"POST\"\n\n  payload := strings.NewReader(`{`+\"\n\"+`\n  \"accountNumber\": \"2640511503\",`+\"\n\"+`\n  \"amount\": 10000,`+\"\n\"+`\n  \"checkNumber\": 64958137456,`+\"\n\"+`\n  \"payeeName\": \"John Strong\",`+\"\n\"+`\n  \"expiresAt\": \"2025-07-19T12:12:27.270Z\"`+\"\n\"+`\n}`)\n\n  client := &http.Client {\n  }\n  req, err := http.NewRequest(method, url, payload)\n\n  if err != nil {\n    fmt.Println(err)\n    return\n  }\n  res, err := client.Do(req)\n  if err != nil {\n    fmt.Println(err)\n    return\n  }\n  defer res.Body.Close()\n\n  body, err := io.ReadAll(res.Body)\n  if err != nil {\n    fmt.Println(err)\n    return\n  }\n  fmt.Println(string(body))\n}",
        "customLabel": ""
      }
    ],
    "selectedLanguageId": "C57PnRkRzpPg0u7vhM1aA"
  },
  "results": {
    "languages": [
      {
        "id": "UMLrTwLcOrwmKN6RHJT6G",
        "language": "200",
        "customLabel": "",
        "code": "{\n    \"id\": \"bf50797f-bdd7-4cc9-8efc-b30d008043d3\",\n    \"status\": \"Authorized\",\n    \"accountNumber\": \"2640511503\",\n    \"payeeName\": \"John Strong\",\n    \"checkNumber\": \"64958137456\",\n    \"amount\": 10000,\n    \"createdAt\": \"2025-07-01T03:46:59.9029464-04:00\",\n    \"expiresAt\": \"2025-07-19T08:12:27.27-04:00\",\n    \"productId\": \"83bed086-8182-4151-a1e3-af5b01362783\",\n    \"partnerId\": \"cd9c12f4-7691-424a-b38b-af5b0134c611\",\n    \"lastModifiedAt\": \"2025-07-01T03:46:59.9029464-04:00\"\n}"
      }
    ],
    "selectedLanguageId": "UMLrTwLcOrwmKN6RHJT6G"
  },
  "request": {
    "pathParameters": [],
    "queryParameters": [],
    "headerParameters": [],
    "bodyDataParameters": [
      {
        "name": "accountNumber",
        "kind": "required",
        "type": "string",
        "description": "Number of the account the check is drawn on",
        "": "Number of the account the check is drawn on"
      },
      {
        "name": "amount",
        "kind": "required",
        "type": "Integer",
        "description": "Money amount that appears on the check",
        "children": []
      },
      {
        "name": "checkNumber",
        "kind": "required",
        "type": "string",
        "description": "The serial number that appears on the check.\n20 characters maximum",
        "": "The serial number that appears on the check.\n20 characters maximum"
      },
      {
        "name": "payeeName",
        "kind": "required",
        "type": "string",
        "description": "Name written on the pay to the order of line of the check.\n255 characters maximum.",
        "": "Name written on the pay to the order of line of the check.\n255 characters maximum."
      },
      {
        "name": "expiresAt",
        "kind": "optional",
        "type": "string",
        "description": "The date and time the authorization expires. In this case, the date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]",
        "": "The date and time the authorization expires. In this case, the date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]"
      }
    ],
    "formDataParameters": []
  },
  "currentNewParameter": {
    "label": "Body Parameter",
    "value": "bodyDataParameters"
  },
  "response": [
    {
      "name": "id",
      "kind": "optional",
      "type": "string",
      "description": "Positive pay authorization ID.\n\nSave this GUID format ID as proof that the check was authorized using Positive Pay, and for use if you revoke authorization.Positive pay authorization ID.\n\nSave this GUID format ID as proof that the check was authorized using Positive Pay, and for use if you revoke authorization."
    },
    {
      "name": "status",
      "kind": "optional",
      "type": "string",
      "description": "Status of the positive pay record:\n\n- Authorized\n- Paid\n- Revoked",
      "children": []
    },
    {
      "name": "accountNumber",
      "kind": "optional",
      "type": "string",
      "description": "Number of the account the check is drawn on",
      "children": []
    },
    {
      "name": "payeeName",
      "kind": "optional",
      "type": "string",
      "description": "Name written on the pay to the order of line of the check",
      "children": []
    },
    {
      "name": "checkNumber",
      "kind": "optional",
      "type": "string",
      "description": "The serial number that appears on the check",
      "children": []
    },
    {
      "name": "amount",
      "kind": "optional",
      "type": "Integer",
      "description": "Money amount that appears on the check",
      "children": []
    },
    {
      "name": "relatedPaymentId",
      "kind": "optional",
      "type": "string",
      "description": "Unique identifier for the check payment",
      "children": []
    },
    {
      "name": "createdAt",
      "kind": "optional",
      "type": "string",
      "description": "The date and time the record was created. In this case, the date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]",
      "children": []
    },
    {
      "name": "expiresAt",
      "kind": "optional",
      "type": "string",
      "description": "The date and time the authorization expires. In this case, the date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]",
      "children": []
    },
    {
      "name": "revokedAt",
      "kind": "optional",
      "type": "string",
      "description": "The date and time authorization was revoked. In this case, the date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]",
      "children": []
    },
    {
      "name": "productId",
      "kind": "optional",
      "type": "string",
      "description": "ID in GUID format of your specific product type on which the Cross River account is based. Provided by Cross River. ",
      "children": []
    },
    {
      "name": "partnerId",
      "kind": "optional",
      "type": "string",
      "description": "Your unique ID in the Cross River system. This ID is in GUID format.",
      "children": []
    },
    {
      "name": "lastModifiedAt",
      "kind": "optional",
      "type": "string",
      "description": "Internal Cross River value. Date and time the database entry was last modified. In this case, the date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]",
      "children": []
    }
  ],
  "hasTryItOut": false,
  "autoGeneratedAnchorSlug": "endpoint-checksv1positive-pay-authorizations",
  "legacyHash": "JnTPNq1tlamzRTXbo4Q1b"
}
```
:::

