---
title: Transactions
slug: apis/payments/book-transfer/transactions
description: Retrieve transaction history using GET /core/v1/transactions for audit and reconciliation.
icon: {"apiMethod":"POST"}
docTags: 
createdAt: 2025-07-22T06:51:41.782Z
---

## Relevant webhooks

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

- Core.Transaction.Completed
- Core Transaction.Rejected

## API reference

The Core Transactions API endpoint allows partners to move funds between their accounts. This endpoint effects a book transfer. It is an extended version of the transfer endpoint. It allows you to provide a description and transaction code. In the context of Advanced Authorization, this endpoint is provided for the partner to sync external activity (transactions) into Cross River accounts at the end of each day.

:::ApiMethodV2
```json
{
  "name": "Endpoint: /core/v1/transactions",
  "method": "POST",
  "url": "https://sandbox.crbcos.com/core/v1/transactions",
  "description": "",
  "tab": "examples",
  "examples": {
    "languages": [
      {
        "id": "hIyb6HxBZBiF03IHcJXah",
        "language": "curl",
        "code": "curl -L 'https://sandbox.crbcos.com/core/v1/transactions' ^\n-H 'Content-Type: application/json' ^\n-H 'Authorization: Bearer token' ^\n-d '{\n  \"debitAccountNumber\": \"2955057589\",\n  \"creditAccountNumber\": \"2870342504\",\n  \"transactionCode\": \"Account Transfer\",\n  \"description\": \"Settlement Transfer\",\n  \"amount\": 13571,\n  \"currency\": \"usd\",\n  \"clientIdentifier\": \"1988192d-3967-485e-a720-ffef339638ab\",\n  \"flags\": []\n}\n\n\n'",
        "customLabel": ""
      },
      {
        "id": "F-lYjMZnt01fNNdoMWEl4",
        "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': '/core/v1/transactions',\n  'headers': {\n    'Content-Type': 'application/json',\n    'Authorization': 'Bearer token'\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 = JSON.stringify({\n  \"debitAccountNumber\": \"2955057589\",\n  \"creditAccountNumber\": \"2870342504\",\n  \"transactionCode\": \"Account Transfer\",\n  \"description\": \"Settlement Transfer\",\n  \"amount\": 13571,\n  \"currency\": \"usd\",\n  \"clientIdentifier\": \"1988192d-3967-485e-a720-ffef339638ab\",\n  \"flags\": []\n});\n\nreq.write(postData);\n\nreq.end",
        "customLabel": ""
      },
      {
        "id": "9R0Lv8LxczyelXDyTG268",
        "language": "python",
        "code": "import requests\nimport json\n\nurl = \"https://sandbox.crbcos.com/core/v1/transactions\"\n\npayload = json.dumps({\n  \"debitAccountNumber\": \"2955057589\",\n  \"creditAccountNumber\": \"2870342504\",\n  \"transactionCode\": \"Account Transfer\",\n  \"description\": \"Settlement Transfer\",\n  \"amount\": 13571,\n  \"currency\": \"usd\",\n  \"clientIdentifier\": \"1988192d-3967-485e-a720-ffef339638ab\",\n  \"flags\": []\n})\nheaders = {\n  'Content-Type': 'application/json',\n  'Authorization': 'Bearer token'\n}\n\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\nprint(response.text)\n",
        "customLabel": ""
      },
      {
        "id": "oRMxhRj1Gp38Q8IICNOUa",
        "language": "ruby",
        "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"https://sandbox.crbcos.com/core/v1/transactions\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"Content-Type\"] = \"application/json\"\nrequest[\"Authorization\"] = \"Bearer token\"\nrequest.body = JSON.dump({\n  \"debitAccountNumber\": \"2955057589\",\n  \"creditAccountNumber\": \"2870342504\",\n  \"transactionCode\": \"Account Transfer\",\n  \"description\": \"Settlement Transfer\",\n  \"amount\": 13571,\n  \"currency\": \"usd\",\n  \"clientIdentifier\": \"1988192d-3967-485e-a720-ffef339638ab\",\n  \"flags\": []\n})\n\nresponse = https.request(request)\nputs response.read_body\n",
        "customLabel": ""
      },
      {
        "id": "nHillIP3Pdvk4iyTezTng",
        "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/core/v1/transactions\"\n  method := \"POST\"\n\n  payload := strings.NewReader(`{`+\"\n\"+`\n  \"debitAccountNumber\": \"2955057589\",`+\"\n\"+`\n  \"creditAccountNumber\": \"2870342504\",`+\"\n\"+`\n  \"transactionCode\": \"Account Transfer\",`+\"\n\"+`\n  \"description\": \"Settlement Transfer\",`+\"\n\"+`\n  \"amount\": 13571,`+\"\n\"+`\n  \"currency\": \"usd\",`+\"\n\"+`\n  \"clientIdentifier\": \"1988192d-3967-485e-a720-ffef339638ab\",`+\"\n\"+`\n  \"flags\": []`+\"\n\"+`\n}`+\"\n\"+`\n`+\"\n\"+`\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  req.Header.Add(\"Content-Type\", \"application/json\")\n  req.Header.Add(\"Authorization\", \"Bearer token\")\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": "hIyb6HxBZBiF03IHcJXah"
  },
  "results": {
    "languages": [
      {
        "id": "kcRcUaYhEpL8DHVEgmP34",
        "language": "200",
        "code": "{\n    \"id\": \"3ef99bff-13b6-45cf-b808-b323007e90c2\",\n    \"traceNumber\": \"T25204034048Y94RZ\",\n    \"status\": \"Pending\",\n    \"debit\": {\n        \"transactionType\": \"Debit\",\n        \"accountType\": \"Deposit\",\n        \"masterAccountNumber\": \"2955057589\",\n        \"subAccountNumber\": \"2955057589\",\n        \"partnerId\": \"1101a33d-fbd9-4b9e-b169-b29500f12407\",\n        \"productId\": \"29f3022a-ccfc-42eb-aa8f-b29500f13d00\",\n        \"activityId\": \"f8c46dae-5a12-4f57-a1ea-b323007e90c2\"\n    },\n    \"credit\": {\n        \"transactionType\": \"Credit\",\n        \"accountType\": \"Deposit\",\n        \"masterAccountNumber\": \"2870342504\",\n        \"subAccountNumber\": \"2870342504\",\n        \"partnerId\": \"1101a33d-fbd9-4b9e-b169-b29500f12407\",\n        \"productId\": \"29f3022a-ccfc-42eb-aa8f-b29500f13d00\",\n        \"activityId\": \"47a622fc-c9ae-4390-b411-b323007e90c2\"\n    },\n    \"transactionCode\": \"Account Transfer\",\n    \"amount\": 13571,\n    \"currency\": \"usd\",\n    \"description\": \"Settlement Transfer\",\n    \"rail\": \"Internal\",\n    \"railId\": \"0\",\n    \"clientIdentifier\": \"1988192d-3967-485e-a720-ffef339638ab\",\n    \"flags\": [],\n    \"schedule\": [],\n    \"proposedAt\": \"2025-07-23T03:40:48.6439092-04:00\",\n   ",
        "customLabel": ""
      },
      {
        "id": "3XSbC2ijR_92TYCNhat1K",
        "language": "400",
        "code": "{\n    \"errors\": [\n        {\n            \"code\": 2626,\n            \"message\": \"Debit account not found\"\n        }\n    ]\n}",
        "customLabel": ""
      }
    ],
    "selectedLanguageId": "kcRcUaYhEpL8DHVEgmP34"
  },
  "request": {
    "pathParameters": [],
    "queryParameters": [],
    "headerParameters": [],
    "bodyDataParameters": [
      {
        "name": "debitAccountNumber",
        "kind": "required",
        "type": "string",
        "description": "One of the two COS Account numbers associated to the Transaction – it refers to the account that is getting the funds debited to credit another account.",
        "": "required"
      },
      {
        "name": "creditAccountNumber",
        "kind": "required",
        "type": "string",
        "description": "One of the two COS Account numbers associated to the Transaction – it refers to the account that is getting funds credited from another account.",
        "": "required"
      },
      {
        "name": "transactionCode",
        "kind": "required",
        "type": "string",
        "description": "An identifier used to describe the type of transaction. Examples of Values (non-exhaustive). See complete list of transaction codes in the requests and response codes page:\n- Account Transfer\n- Deposit\n- Adjustment",
        "": "An identifier used to describe the type of transaction. Examples of Values (non-exhaustive). See complete list of transaction codes in the requests and response codes page:\n- Account Transfer\n- Deposit\n- Adjustment"
      },
      {
        "name": "description",
        "kind": "required",
        "type": "string",
        "description": "A description that will identify the transaction as it gets posted.",
        "": "required"
      },
      {
        "name": "amount",
        "kind": "required",
        "type": "integer",
        "description": "Amount of the transaction in positive integral cents. For example, write $1.00 as 100.",
        "": "integer"
      },
      {
        "name": "currency",
        "kind": "optional",
        "type": "string",
        "description": "Currency of the transfer amount",
        "": "Currency of the transfer amount"
      },
      {
        "name": "clientIdentifier",
        "kind": "optional",
        "type": "string",
        "description": "Use this attribute to add your own unique identifying string to a payment call or COS record. This attribute is useful for idempotency purposes.",
        "": "Use this attribute to add your own unique identifying string to a payment call or COS record. This attribute is useful for idempotency purposes."
      },
      {
        "name": "flags",
        "kind": "optional",
        "type": "array",
        "description": "Array of flags to indicate special information about this transaction. See list of flags and their codes in the requests and response codes page",
        "": "array"
      }
    ],
    "formDataParameters": []
  },
  "currentNewParameter": {
    "label": "Body Parameter",
    "value": "bodyDataParameters"
  },
  "response": [
    {
      "name": "TransactionInfo",
      "kind": "optional",
      "type": "object",
      "description": "",
      "children": [
        {
          "name": "id",
          "kind": "optional",
          "type": "string",
          "description": "Transaction identifier for the current transaction. This ID is in GUID format. Sample value: “00000000-0000-0000-0000-000000000000”."
        },
        {
          "name": "traceNumber",
          "kind": "optional",
          "type": "string",
          "description": "A unique alphanumeric identifier assigned to a transaction. This has 17 characters and begins with the letter 'T'.  \nNote: A Core transaction trace number is NOT the same as an ACH payment trace number."
        },
        {
          "name": "status",
          "kind": "optional",
          "type": "string",
          "description": "Status of the transaction. Values allowed:\n- Pending\n- Complete\n- Rejected\n- Review\n- Declined\n- Canceled\n- Processing\n"
        },
        {
          "name": "TransactionOperationInfo",
          "kind": "optional",
          "type": "object",
          "description": "Information about the card used.",
          "children": [
            {
              "name": "transactionType",
              "kind": "optional",
              "type": "string",
              "description": "Either:\n- Debit\n- Credit"
            },
            {
              "name": "accountType",
              "kind": "optional",
              "type": "string",
              "description": "Options:\n- GeneralLedger\n- Deposit\n- CreditCard\n- StoredValue\n- Wallet\n- Unknown"
            },
            {
              "name": "masterAccountNumber",
              "kind": "optional",
              "type": "string",
              "description": "Deposit account number associated with the card"
            },
            {
              "name": "subAccountNumber",
              "kind": "optional",
              "type": "string",
              "description": ""
            },
            {
              "name": "partnerId",
              "kind": "optional",
              "type": "string",
              "description": "Your ID in the Cross River system. This ID is in GUID format."
            },
            {
              "name": "productId",
              "kind": "optional",
              "type": "string",
              "description": "Product ID of the cardholder deposit account. This ID is in the GUID format."
            },
            {
              "name": "activityId",
              "kind": "optional",
              "type": "string",
              "description": ""
            },
            {
              "name": "result",
              "kind": "optional",
              "type": "object",
              "description": "",
              "children": [
                {
                  "name": "success",
                  "kind": "optional",
                  "type": "string",
                  "description": ""
                },
                {
                  "name": "code",
                  "kind": "optional",
                  "type": "string",
                  "description": ""
                },
                {
                  "name": "message",
                  "kind": "optional",
                  "type": "string",
                  "description": ""
                }
              ]
            }
          ]
        },
        {
          "name": "transactionCode",
          "kind": "optional",
          "type": "string",
          "description": "An identifier used to describe the type of transaction. Examples of Values (non-exhaustive):\n- Account Transfer\n- Deposit\n- Adjustment"
        },
        {
          "name": "amount",
          "kind": "optional",
          "type": "string",
          "description": "Amount of the transaction in positive integral cents. For example, write $1.00 as 100."
        },
        {
          "name": "currency",
          "kind": "optional",
          "type": "string",
          "description": ""
        },
        {
          "name": "description",
          "kind": "optional",
          "type": "string",
          "description": "A description that will identify the transaction as it gets posted."
        },
        {
          "name": "rail",
          "kind": "optional",
          "type": "string",
          "description": "One of the following:\n- Ach\n- Wires\n- CreditCard\n- DebitCard\n- StoredValue\n- Checks\n- Rtp\n- CardManagement\n- International\n- CardPayments\n- Teller\n- Internal"
        },
        {
          "name": "railId",
          "kind": "optional",
          "type": "string",
          "description": ""
        },
        {
          "name": "clientIdentifier",
          "kind": "optional",
          "type": "string",
          "description": "Use this attribute to add your own unique identifying string to a payment call or COS record. This attribute is useful for idempotency purposes."
        },
        {
          "name": "flags",
          "kind": "optional",
          "type": "string",
          "description": "Array of flags to indicate special information about this transaction. See list of flags and their codes in the requests and response codes page"
        },
        {
          "name": "schedule",
          "kind": "optional",
          "type": "string",
          "description": ""
        },
        {
          "name": "proposedAt",
          "kind": "optional",
          "type": "string",
          "description": "The date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]"
        },
        {
          "name": "executedAt",
          "kind": "optional",
          "type": "string",
          "description": "The date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]"
        },
        {
          "name": "canceledAt",
          "kind": "optional",
          "type": "string",
          "description": "The date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]"
        },
        {
          "name": "lastModifiedAt",
          "kind": "optional",
          "type": "string",
          "description": "Date and time the card record was last modified. Examples include change of name on the card and change in card status. In this case, the date and time are in this format: yyyy-mm-ddThh:mm:ss[.mmm]"
        }
      ]
    }
  ],
  "autoGeneratedAnchorSlug": "endpoint-corev1transactions",
  "legacyHash": "PLs3yaCGTP7UJNHm8WbHT"
}
```
:::

