Simulate inbound payment
API reference
Simulates making a check withdrawal from a Cross River account. The account must be enabled for checks.
In Cross River this is referred to as an inbound forward item because the Federal Reserve sends the check (in) to Cross River for payment and attempts to clear the check on the account.
This API can only be run in the Cross River Sandbox.
Endpoint: /checks/v1/payments/simulated-inbound-payments
POST
https://sandbox.crbcos.com/checks/v1/payments/simulated-inbound-payments
Body Parameters
- accountNumberstringrequiredDescription
- payeeNamestringrequiredDescription
- checkNumberstringrequiredDescription
- amountintegerrequiredDescription
- clientIdentifierstringDescription
Response
- idstringDescription
- accountNumberstringDescription
- referenceIdstringDescription
- paymentTypestringDescription
- checkTypestringDescription
- direction stringDescription
- statusstringDescription
- sourcestringDescription
- postingstringDescription
- rejectionReasonstringDescription
- positivePayResultstringDescription
- positivePayMatchIdstringDescription
- postingCodestringDescription
- clientBatchIdstringDescription
- clientBatchSequenceintegerDescription
- fedBatchIdstringDescription
- fedBatchSequenceintegerDescription
- coreTransactionIdstringDescription
- memoPostIdstringDescription
- originalPaymentIdstringDescription
- customerIdstringDescription
- payerRoutingNumberstringDescription
- payerAccountNumberstringDescription
- payeeNamestringDescription
- checkNumberstringDescription
- bofdRoutingNumberstringDescription
- sequenceNumberstringDescription
- amountintegerDescription
- currencystringDescription
- micrstringDescription
- recognizedAmountintegerDescription
- iqaPassedbooleanDescription
- returnCodestringDescription
- hasFrontImagebooleanDescription
- hasBackImagebooleanDescription
- isRedepositbooleanDescription
- policy stringDescription
- schedulearrayDescription
- createdAtstringDescription
- canceledAtstringDescription
- rejectedAtstringDescription
- processedAtstringDescription
- completedAtstringDescription
- postedAtstringDescription
- wasReturnedbooleanDescription
- purposestringDescription
- clientIdentifierstringDescription
- depositBusinessDatestringDescription
- lockboxVendorIdstringDescription
- productIdstringDescription
- partnerIdstringDescription
- lastModifiedAtstringDescription
curl
curl --location 'https://sandbox.crbcos.com/checks/v1/payments/simulated-inbound-payments' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"accountNumber": "2846220461",
"payeeName": "string",
"checkNumber": "1032357",
"amount": 4400
}'nodejs
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'sandbox.crbcos.com',
'path': '/checks/v1/payments/simulated-inbound-payments',
'headers': {
'Authorization': 'Bearer <token>',
'Content-Type': 'application/json'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = "{\r\n \"accountNumber\": \"2846220461\",\r\n \"payeeName\": \"string\",\r\n \"checkNumber\": \"1032357\",\r\n \"amount\": 4400\r\n}";
req.write(postData);
req.end();python
import requests
url = "https://sandbox.crbcos.com/checks/v1/payments/simulated-inbound-payments"
payload = "{\r\n \"accountNumber\": \"2846220461\",\r\n \"payeeName\": \"string\",\r\n \"checkNumber\": \"1032357\",\r\n \"amount\": 4400\r\n}"
headers = {
'Authorization': 'Bearer <token>',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
ruby
require "uri"
require "net/http"
url = URI("https://sandbox.crbcos.com/checks/v1/payments/simulated-inbound-payments")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = "Bearer <token>"
request["Content-Type"] = "application/json"
request.body = "{\r\n \"accountNumber\": \"2846220461\",\r\n \"payeeName\": \"string\",\r\n \"checkNumber\": \"1032357\",\r\n \"amount\": 4400\r\n}"
response = https.request(request)
puts response.read_body
go
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.crbcos.com/checks/v1/payments/simulated-inbound-payments"
method := "POST"
payload := strings.NewReader(`{
"accountNumber": "2846220461",
"payeeName": "string",
"checkNumber": "1032357",
"amount": 4400
}`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}200
{
"id": "2100980b-4419-4a42-bc4c-b449006b84ec",
"accountNumber": "2846220461",
"referenceId": "C133054U0D94",
"paymentType": "Forward",
"checkType": "Unknown",
"direction": "Inbound",
"status": "Created",
"source": "Api",
"posting": "Pending",
"postingCode": "OK",
"fedBatchId": "9fa74496-c1dd-47a4-b6aa-b449006b84ec",
"fedBatchSequence": 0,
"coreTransactionId": "ea4e0082-63db-4fe3-afa2-b449006b84ec",
"originalPaymentId": "2100980b-4419-4a42-bc4c-b449006b84ec",
"customerId": "05106466-9144-4f3f-8fb1-b345005d18ba",
"payerRoutingNumber": "021214891",
"payerAccountNumber": "2846220461",
"payeeName": "string",
"checkNumber": "1032357",
"bofdRoutingNumber": "061000146",
"sequenceNumber": "6121648120",
"amount": 4400,
"currency": "usd",
"recognizedAmount": 0,
"iqaPassed": false,
"hasFrontImage": true,
"hasBackImage": true,
"isRedeposit": false,
"policy": "Standard",
"schedule": [],
"createdAt": "2026-05-13T02:31:27.9322387-04:00",
"wasReturned": false,
"purpose": "TESTING",
"depositBusinessDate": "260514",
"decisionRequired": false,
"wasDecisioned": false,
"productId": "83bed086-8182-4151-a1e3-af5b01362783",
"partnerId": "cd9c12f4-7691-424a-b38b-af5b0134c611",
"lastModifiedAt": "2026-05-13T02:31:27.9322683-04:00"
}