Payment request
Relevant webhooks
For this endpoint be sure you have registered for these webhooks:
API reference
Initiates a request for payment (RfP)
Allows the recipient to authorize and trigger an instant payment credit transfer. RfPs can be initiated from:
- Master account
- Deposit account (DDA)
- Associated subledger
Endpoint: /rtp/v1/payments/payment-request
POST
https://sandbox.crbcos.com/rtp/v1/payments/payment-request
Body Parameters
- accountNumberstringrequiredDescription
- amountintegerrequiredDescription
- purposestringDescription
- requestedExecutionDatestringrequiredDescription
- expiryDatestringrequiredDescription
- clientIdentifierstringDescription
- remittanceDatastringDescription
- remittanceLocationobjectDescription
- methodstringDescription
- eAddressstringDescription
- debtorobjectrequiredDescription
- accountNumberstringrequiredDescription
- namestringrequiredDescription
- birthCitystringDescription
- birthcountrystringDescription
- birthDatestringDescription
- orgLegalEntityIdstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- routingNumberstringrequiredDescription
- phoneNumberstringDescription
- ultimateDebtorobjectDescription
- namestringrequiredDescription
- privateIdstringDescription
- orgLegalEntityIdstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- creditorobjectDescription
- routingNumberstringrequiredDescription
- accountNumberstringrequiredDescription
- namestringrequiredDescription
- birthCitystringDescription
- birthCountrystringDescription
- birthDatestringDescription
- orgLegalEntityIdstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- phoneNumberstringDescription
- ultimateCreditorobjectDescription
- namestringrequiredDescription
- privateIdstringDescription
- orgLegalEntityIdstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- useCasestringrequiredDescription
- industryCategorystringDescription
- senderIDstringrequiredDescription
- amountModAllowedbooleanDescription
Response
- idstringDescription
- originalPaymentIdstringDescription
- referenceIdstringDescription
- accountNumberstringDescription
- clientIdentifierstringDescription
- amountintegerDescription
- operatorCoreTransactionIdstringDescription
- authorizationTransactionIdstringDescription
- memoPostIdstringDescription
- memoPostRemovedAtstringDescription
- directionstringDescription
- statusstringDescription
- paymentTypestringDescription
- sourcestringDescription
- transactionAccountContextstringDescription
- rtpTransactionStatusstringDescription
- debtorobjectDescription
- routingNumberstringDescription
- accountNumberstringDescription
- namestringDescription
- birthCitystringDescription
- birthCountrystringDescription
- birthDatestringDescription
- orgLegalEntityIdstringDescription
- proxyIdstringDescription
- phoneNumberstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- ultimateDebtorobjectDescription
- namestringDescription
- privateIdstringDescription
- orgLegalEntityIdstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- creditorobjectDescription
- routingNumberstringDescription
- accountNumberstringDescription
- namestringDescription
- birthCitystringDescription
- birthCountrystringDescription
- birthDatestringDescription
- orgLegalEntityIdstringDescription
- proxyIdstringDescription
- phoneNumberstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- ultimateCreditorobjectDescription
- namestringDescription
- privateIdstringDescription
- orgLegalEntityIdstringDescription
- addressStreetNamestringDescription
- addressLinestringDescription
- addressBuildingNumberstringDescription
- addressCitystringDescription
- addressStatestringDescription
- addressPostalCodestringDescription
- addressCountrystringDescription
- networkobjectDescription
- messageDefIdstringDescription
- businessMessageIdstringDescription
- messageIdstringDescription
- createdAtstringDescription
- numberOfTransactionsintegerDescription
- interbankSettlementAmountintegerDescription
- currencystringDescription
- interbankSettlementDatestringDescription
- settlementMethodstringDescription
- clearingSystemCodestringDescription
- instructionIdstringDescription
- endToEndIdstringDescription
- transactionIdstringDescription
- clearingSystemRefstringDescription
- fromParticipantIdstringDescription
- toParticipantIdstringDescription
- fromBranchIdstringDescription
- toBranchIdstringDescription
- instructingRoutingNumberstringDescription
- instructedRoutingNumberstringDescription
- headerCreationDatestringDescription
- messageCreationDateTimestringDescription
- uetrstringDescription
- remittanceAdviceobjectDescription
- remittanceIdentificationstringDescription
- origInstructionIdstringDescription
- origEndToEndIdstringDescription
- origTransactionIdstringDescription
- origPaymentInfoIdstringDescription
- origInstructedAmountintegerDescription
- origInstructedAmountCurrencystringDescription
- transactionInfoobjectDescription
- statusstringDescription
- reasonCodestringDescription
- additionalInfostringDescription
- reasonProprietarystringDescription
- serviceLevelCodestringDescription
- localInstrumentProprietarystringDescription
- categoryPurposestringDescription
- initiatingPartyNamestringDescription
- currencystringDescription
- chargeBearerstringDescription
- remittanceIdentificationstringDescription
- remittanceDatastringDescription
- paymentInfoIdstringDescription
- reqExecutionDateobjectDescription
- datestringDescription
- dateTypestringDescription
- expiryDateobjectDescription
- datestringDescription
- dateTypestringDescription
- paymentConditionsobjectDescription
- amountModAllowedbooleanDescription
- earlyPayAllowedbooleanDescription
- acceptedAmountintegerDescription
- purposestringDescription
- wasRefundedbooleanDescription
- wasPaidbooleanDescription
- createdAtstringDescription
- productIdstringDescription
- partnerIdstringDescription
- lastModifiedAtstringDescription
- sendAttemptCountintegerDescription
- discountsobjectDescription
- typestringDescription
- amountintegerDescription
- currencystringDescription
- awaitingResponsebooleanDescription
- networkPlatformstringDescription
curl
curl --location 'https://sandbox.crbcos.com/rtp/v1/payments/payment-request' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"accountNumber": "2564791479",
"amount": 20000,
"discount": 1000,
"debtor": {
"routingNumber": "071212128",
"accountNumber": "2758463448",
"name": "Terry Tester",
"birthCity": "Pine Brook",
"birthCountry": "US",
"birthDate": "1996-08-09",
"addressStreetName": "Linwood Ave",
"addressBuildingNumber": "2115",
"addressCity": "Pine Brook",
"addressState": "NJ",
"addressPostalCode": "07024",
"addressCountry": "US"
},
"creditor": {
"accountNumber": "2564791479",
"name": "the creditor"
},
"purpose": "Test Payment 2",
"clientIdentifier": "123456",
"requestedExecutionDate": "2025-08-10",
"expiryDate": "2025-08-16",
"senderId": "100000001",
"useCase": "BusinessToBusiness",
"industryCategory": "OnlineGaming"
}'nodejs
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://sandbox.crbcos.com/rtp/v1/payments/payment-request',
'headers': {
'Authorization': 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"accountNumber": "2564791479",
"amount": 20000,
"discount": 1000,
"debtor": {
"routingNumber": "071212128",
"accountNumber": "2758463448",
"name": "Terry Tester",
"birthCity": "Pine Brook",
"birthCountry": "US",
"birthDate": "1996-08-09",
"addressStreetName": "Linwood Ave",
"addressBuildingNumber": "2115",
"addressCity": "Pine Brook",
"addressState": "NJ",
"addressPostalCode": "07024",
"addressCountry": "US"
},
"creditor": {
"accountNumber": "2564791479",
"name": "the creditor"
},
"purpose": "Test Payment 2",
"clientIdentifier": "123456",
"requestedExecutionDate": "2025-08-10",
"expiryDate": "2025-08-16",
"senderId": "100000001",
"useCase": "BusinessToBusiness",
"industryCategory": "OnlineGaming"
})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
python
import requests
import json
url = "https://sandbox.crbcos.com/rtp/v1/payments/payment-request"
payload = json.dumps({
"accountNumber": "2564791479",
"amount": 20000,
"discount": 1000,
"debtor": {
"routingNumber": "071212128",
"accountNumber": "2758463448",
"name": "Terry Tester",
"birthCity": "Pine Brook",
"birthCountry": "US",
"birthDate": "1996-08-09",
"addressStreetName": "Linwood Ave",
"addressBuildingNumber": "2115",
"addressCity": "Pine Brook",
"addressState": "NJ",
"addressPostalCode": "07024",
"addressCountry": "US"
},
"creditor": {
"accountNumber": "2564791479",
"name": "the creditor"
},
"purpose": "Test Payment 2",
"clientIdentifier": "123456",
"requestedExecutionDate": "2025-08-10",
"expiryDate": "2025-08-16",
"senderId": "100000001",
"useCase": "BusinessToBusiness",
"industryCategory": "OnlineGaming"
})
headers = {
'Authorization': 'Bearer <token>',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
ruby
require "uri"
require "json"
require "net/http"
url = URI("https://sandbox.crbcos.com/rtp/v1/payments/payment-request")
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 = JSON.dump({
"accountNumber": "2564791479",
"amount": 20000,
"discount": 1000,
"debtor": {
"routingNumber": "071212128",
"accountNumber": "2758463448",
"name": "Terry Tester",
"birthCity": "Pine Brook",
"birthCountry": "US",
"birthDate": "1996-08-09",
"addressStreetName": "Linwood Ave",
"addressBuildingNumber": "2115",
"addressCity": "Pine Brook",
"addressState": "NJ",
"addressPostalCode": "07024",
"addressCountry": "US"
},
"creditor": {
"accountNumber": "2564791479",
"name": "the creditor"
},
"purpose": "Test Payment 2",
"clientIdentifier": "123456",
"requestedExecutionDate": "2025-08-10",
"expiryDate": "2025-08-16",
"senderId": "100000001",
"useCase": "BusinessToBusiness",
"industryCategory": "OnlineGaming"
})
response = https.request(request)
puts response.read_body
go
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.crbcos.com/rtp/v1/payments/payment-request"
method := "POST"
payload := strings.NewReader(`{
"accountNumber": "2564791479",
"amount": 20000,
"discount": 1000,
"debtor": {
"routingNumber": "071212128",
"accountNumber": "2758463448",
"name": "Terry Tester",
"birthCity": "Pine Brook",
"birthCountry": "US",
"birthDate": "1996-08-09",
"addressStreetName": "Linwood Ave",
"addressBuildingNumber": "2115",
"addressCity": "Pine Brook",
"addressState": "NJ",
"addressPostalCode": "07024",
"addressCountry": "US"
},
"creditor": {
"accountNumber": "2564791479",
"name": "the creditor"
},
"purpose": "Test Payment 2",
"clientIdentifier": "123456",
"requestedExecutionDate": "2025-08-10",
"expiryDate": "2025-08-16",
"senderId": "100000001",
"useCase": "BusinessToBusiness",
"industryCategory": "OnlineGaming"
}`)
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": "8ee74810-45fe-47ee-9569-b30500b8d6ae",
"originalPaymentId": "8ee74810-45fe-47ee-9569-b30500b8d6ae",
"referenceId": "R174OI808VYXJ",
"accountNumber": "2955057589",
"clientIdentifier": "123456",
"amount": 19000,
"direction": "Outbound",
"status": "Created",
"paymentType": "RequestForPayment",
"source": "Api",
"transactionAccountContext": "NotSubmitted",
"debtor": {
"routingNumber": "011000138",
"accountNumber": "2758463448",
"name": "Terry Tester",
"birthCity": "Pine Brook",
"birthCountry": "US",
"birthDate": "1996-08-09",
"addressStreetName": "Linwood Ave",
"addressBuildingNumber": "2115",
"addressCity": "Pine Brook",
"addressState": "NJ",
"addressPostalCode": "07024",
"addressCountry": "US"
},
"creditor": {
"routingNumber": "021214891",
"accountNumber": "2955057589",
"name": "Dim Mak",
"addressStreetName": "400 Kelby St",
"addressCity": "Fort Lee",
"addressState": "NJ",
"addressPostalCode": "07024",
"addressCountry": "US"
},
"network": {
"clearingSystemCode": "TCH",
"currency": "USD",
"endToEndId": "6909c29416f0453fbdfdb30500b8d6ae",
"instructionId": "20250623021214273T1B19TS07136537534",
"interbankSettlementAmount": 19000,
"interbankSettlementDate": "2025-06-23",
"messageId": "M20250623021214273T1BDQK15672530466",
"numberOfTransactions": 1,
"settlementMethod": "CLRG",
"businessMessageId": "B20250623021214273T1BPRK46725920502",
"toParticipantId": "990000001S1",
"fromParticipantId": "021214273T1",
"instructingRoutingNumber": "021214891",
"instructedRoutingNumber": "011000138",
"headerCreationDate": "2025-06-23T07:12:58.6058948-04:00",
"messageCreationDateTime": "2025-06-23T07:12:58.6058948-04:00",
"createdAt": "2025-06-23T07:12:58.6058948-04:00"
},
"serviceLevelCode": "SDVA",
"localInstrumentProprietary": "STANDARD",
"categoryPurpose": "CONSUMER",
"currency": "USD",
"chargeBearer": "SLEV",
"paymentInfoId": "20250623021214273T1B19TS07136537534",
"reqExecutionDate": {
"date": "2025-08-10T00:00:00-04:00",
"dateType": "DtTm"
},
"expiryDate": {
"date": "2025-08-16T00:00:00-04:00",
"dateType": "DtTm"
},
"paymentConditions": {
"amountModAllowed": false,
"earlyPayAllowed": true,
"acceptedAmount": 19000
},
"purpose": "Test Payment 2",
"useCase": "BusinessToBusiness",
"industryCategory": "OnlineGaming",
"senderID": "10000000000",
"wasRefunded": false,
"wasPaid": false,
"createdAt": "2025-06-23T07:12:58.6058948-04:00",
"productId": "29f3022a-ccfc-42eb-aa8f-b29500f13d00",
"partnerId": "1101a33d-fbd9-4b9e-b169-b29500f12407",
"lastModifiedAt": "2025-06-23T07:12:58.6380956-04:00",
"sendAttemptCount": 0,
"discounts": [
{
"type": "DSCT",
"amount": 1000,
"currency": "USD"
},
{
"type": "FULL",
"amount": 20000,
"currency": "USD"
}
],
"awaitingResponse": false,
"networkPlatform": "TCH"
}400
{
"errors": [
{
"code": 2045,
"message": "Receiver does not support Request For Payment"
}
]
}