Payments
...
APIs
Return approval
api reference used to approve an inbound return request for a previously received rtp credit transfer this operation is relevant when an inbound payment to a cross river account is being returned to the original sender this endpoint is strictly used to approve return requests for inbound instant payments this action can also be done via docid\ vrbjrchnvqf5kqizxzloe in cos explorer { "name" "endpoint /rtp/v1/payments/{id}/approve return", "method" "post", "url" "https //sandbox crbcos com/rtp/v1/payments/{id}/approve return", "description" "", "tab" "examples", "examples" { "languages" \[ { "id" "tiu4cyzv2obskcr5taq d", "language" "curl", "code" "", "customlabel" "" }, { "id" "2ywx4qreq r5gxud3qe83", "language" "nodejs", "code" "", "customlabel" "" }, { "id" "yohqfoum8rgbnowxp x0u", "language" "python", "code" "", "customlabel" "" }, { "id" "po3dr zn2july7vnhkt l", "language" "ruby", "code" "", "customlabel" "" }, { "id" "puudtha7ybqrhtgmwlbrm", "language" "go", "code" "", "customlabel" "" } ], "selectedlanguageid" "puudtha7ybqrhtgmwlbrm" }, "results" { "languages" \[ { "id" "za7e vgg1euptpxfre3cs", "language" "200", "customlabel" "", "code" "{\n \\"id\\" \\"e3e08e0f 1b6b 48b7 9c15 b30e00d7780a\\",\n \\"originalpaymentid\\" \\"4084feee 5f40 4502 83dd b2d400a5093a\\",\n \\"referenceid\\" \\"r183o7e781r32\\",\n \\"accountnumber\\" \\"398423912193\\",\n \\"amount\\" 4000,\n \\"direction\\" \\"outbound\\",\n \\"status\\" \\"created\\",\n \\"paymenttype\\" \\"returnresponse\\",\n \\"source\\" \\"phone\\",\n \\"transactionaccountcontext\\" \\"notsubmitted\\",\n \\"network\\" {\n \\"businessmessageid\\" \\"b20250702021214273t1bdxe00225897773\\",\n \\"messageid\\" \\"m20250702021214273t1bxjw29900517960\\",\n \\"createdat\\" \\"2025 07 02t09 04 29 8964283 04 00\\",\n \\"instructionid\\" \\"m20250702990000001s1brrc27060408124\\",\n \\"fromparticipantid\\" \\"021214273t1\\",\n \\"toparticipantid\\" \\"990000001s1\\",\n \\"instructingroutingnumber\\" \\"020202020\\",\n \\"instructedroutingnumber\\" \\"021214891\\",\n \\"headercreationdate\\" \\"2025 07 02t09 04 29 8964283 04 00\\",\n \\"messagecreationdatetime\\" \\"2025 07 02t09 04 29 8964283 04 00\\"\n },\n \\"transactioninfo\\" {\n \\"status\\" \\"ipay\\"\n },\n \\"wasrefunded\\" false,\n \\"waspaid\\" false,\n \\"createdat\\" \\"2025 07 02t09 04 29 8964283 04 00\\",\n \\"canceledat\\" \\"2025 07 02t09 04 29 8964283 04 00\\",\n \\"productid\\" \\"fb791f7d 7e65 488c b3e9 af63015283bb\\",\n \\"partnerid\\" \\"16ec26e2 259b 4c35 a792 af63010ed9d7\\",\n \\"lastmodifiedat\\" \\"2025 07 02t09 04 29 9596518 04 00\\",\n \\"sendattemptcount\\" 0,\n \\"awaitingresponse\\" false,\n \\"referencedpaymentid\\" \\"abbdf449 e0c4 49bc 9b4f b30e00d717e2\\",\n \\"networkplatform\\" \\"tch\\"\n}" }, { "id" "on1q4ouolk2zfilk12wlc", "language" "400", "code" "{\n \\"errors\\" \[\n {\n \\"code\\" 2045,\n \\"message\\" \\"receiver does not support request for payment\\"\n }\n ]\n}", "customlabel" "" } ], "selectedlanguageid" "za7e vgg1euptpxfre3cs" }, "request" { "pathparameters" \[ { "name" "id", "kind" "required", "type" "string", "description" "the id of the inbound payment for which the return request is being approved", "" "the id of the inbound payment for which the return request is being approved" } ], "queryparameters" \[], "headerparameters" \[], "bodydataparameters" \[], "formdataparameters" \[] }, "currentnewparameter" { "label" "body parameter", "value" "bodydataparameters" }, "response" \[ { "name" "id", "kind" "optional", "type" "string", "description" "unique id for the approved return request assigned by cross river " }, { "name" "originalpaymentid", "kind" "optional", "type" "string", "description" "the id of the originally received inbound payment that is now being returned ", "children" \[] }, { "name" "referenceid", "kind" "optional", "type" "string", "description" "cross river’s unique return reference id for instant payments, this begins with r ", "children" \[] }, { "name" "accountnumber", "kind" "optional", "type" "string", "description" "cross river account to which the original inbound payment was posted ", "children" \[] }, { "name" "amount", "kind" "optional", "type" "integer", "description" "the amount (in cents) being returned to the original sender in positive integral cents for example, write $1 00 as 100 ", "children" \[] }, { "name" "direction", "kind" "optional", "type" "string", "description" "always outbound, indicating the return payment is being sent from cross river back to the original sender ", "children" \[] }, { "name" "status", "kind" "optional", "type" "string", "description" "transaction status \n\n created\n pending\n processing\n completed\n rejected\n canceled\n hold\n timedout\n finalizing\n failed\n researchrequired\n expired\n authorized", "children" \[] }, { "name" "paymenttype", "kind" "optional", "type" "string", "description" "type of payment for approved return requests, this is always returnresponse ", "children" \[] }, { "name" "source", "kind" "optional", "type" "string", "description" "the source of the activity \n'phone', 'fax', 'email', 'clearinghouse', 'api', 'rtpsystemtimeout', 'opsportal', 'partnerportal', 'returnoffunds', 'autoresend', 'fednow', 'crnow'", "children" \[] }, { "name" "transactionaccountcontext", "kind" "optional", "type" "string", "description" "transaction account context \n\n notsubmitted\n pending\n processing\n complete\n reversal\n memopost\n timedout\n canceled\n rejected\n authonly\n notset", "children" \[] }, { "name" "network", "kind" "optional", "type" "object", "description" "network information", "children" \[ { "name" "businessmessageid", "kind" "optional", "type" "string", "description" "network level unique identifier for the return message sent via rtp " }, { "name" "messageid", "kind" "optional", "type" "string", "description" "unique message id used by the network (e g , the clearing house) " }, { "name" "createdat", "kind" "optional", "type" "string", "description" "indicates when the return message was created, formatted as yyyy mm ddthh\ mm\ ss\[ mmm]" }, { "name" "instructionid", "kind" "optional", "type" "string", "description" "the unique id assigned by the instructing agent for the payment return request while it remains active within the rtp system \n\nthis id serves as the unique identifier for the payment request within the instant payments network " }, { "name" "fromparticipantid", "kind" "optional", "type" "string", "description" "the rtp id of the participant (cross river) sending the return " }, { "name" "toparticipantid", "kind" "optional", "type" "string", "description" "the rtp id of the original sending participant receiving the return " }, { "name" "instructingroutingnumber", "kind" "optional", "type" "string", "description" "routing number of cross river as the sender of the return " }, { "name" "instructedroutingnumber", "kind" "optional", "type" "string", "description" "routing number of the receiving financial institution " }, { "name" "headercreationdate", "kind" "optional", "type" "string", "description" "internal cr timestamp for when the rtp header was generated " }, { "name" "messagecreationdatetime", "kind" "optional", "type" "string", "description" "the date and time when the payment request message was created, formatted as yyyy mm ddthh\ mm\ ss\[ mmm]" } ] }, { "name" "transactioninfo", "kind" "optional", "type" "object", "description" "information about the transaction", "children" \[ { "name" "status", "kind" "optional", "type" "string", "description" "the status of the return within the rtp transaction lifecycle example ipay " } ] }, { "name" "wasrefunded", "kind" "optional", "type" "boolean", "description" "indicates whether a refund was previously issued on this return usually false for new approvals ", "children" \[] }, { "name" "waspaid", "kind" "optional", "type" "boolean", "description" "indicates whether funds were successfully transferred back to the original sender ", "children" \[] }, { "name" "createdat", "kind" "optional", "type" "string", "description" "the date and time when the credit transfer was created, formatted as yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "canceledat", "kind" "optional", "type" "string", "description" "timestamp indicating if and when the return was canceled after approval ", "children" \[] }, { "name" "productid", "kind" "optional", "type" "string", "description" "the guid representing the id of your specific product type associated with the account this is provided by cr and identifies the cr account involved in the transfer ", "children" \[] }, { "name" "partnerid", "kind" "optional", "type" "string", "description" "your unique id within the cr system, provided in guid format", "children" \[] }, { "name" "lastmodifiedat", "kind" "optional", "type" "string", "description" "an internal cr value indicating the date and time the database entry was last modified, formatted as yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "sendattemptcount", "kind" "optional", "type" "integer", "description" "the total count of attempts to send the return payment request", "children" \[] }, { "name" "awaitingresponse", "kind" "optional", "type" "boolean", "description" "indicates whether a message response is pending true if waiting, otherwise false \n", "children" \[] }, { "name" "referencepaymentid", "kind" "optional", "type" "string", "description" "internal id referencing the original return request, if applicable ", "children" \[] }, { "name" "networkplatform", "kind" "optional", "type" "string", "description" "the payment network platform used to process the payment possible values are tch (for rtp via the clearing house)", "children" \[] } ] } sla for inbound return request response inbound return requests must be approved or rejected within the following service level timelines, based on the payment rail fednow a response is required by the end of the next business day after the return request is received rtp if the original credit transfer was a standard payment response is required within 10 business days of receiving the return request if the original credit transfer was initiated through a request for payment (rfp) response is required within 20 business days of receiving the return request failure to respond within these slas will result in automatic rejection of the inbound return request important note on fraud related return requests any incoming return request with a reason code of frad (fraud) will be reviewed by cross river and cannot be actioned directly by the partner cross river will evaluate the request and determine next steps internally