Recall Cases (available soon)
Learn about Recall Cases – when they are triggered, how to respond, and the complete workflow for handling recall requests.
A Recall Case requires a response from you. You must choose whether to accept or reject the recall request. The case will remain "OPEN" until you submit a decision or the deadline has passed.
Action Required: All Recall Cases require a response from you. Failure to respond may result in the request being re‑notified or closed as non‑responsive.
Incoming Recall Requests
An incoming recall request is created when an external bank requests a settled payment to be returned. These requests include details about the original payment, the reason for the recall, and the deadline for responding.
You must assess each recall request and respond by either accepting or rejecting it. If you accept the request, the return or reversal of the payment is handled automatically. However, it can take several business days to instruct the return payment. If you reject it, you must provide a predefined rejection reason.
Responding to an Incoming Recall Case
Step 1: Retrieve Recall Details
Use the GET Recall Case endpoint to get the full case details, including:
- Recall request and reasoning
- Recall status and deadline for response
- Any previously submitted recall action (if applicable)
- Transaction information
Step 2: Submit Your Response
Respond to a Recall Request via the Submit Recall Response endpoint. You can respond in two ways:
- Reject the recall: Provide a rejection reason. Only predefined rejection reasons are supported.
- Accept the recall: No reason code is required. Acceptance does not immediately return funds; the payment return or reversal is processed manually within several business days.
Recall Request Reasons
Recall request reasons indicate why the external bank has asked for the settled payment to be returned.
| Reason Code | Description |
|---|---|
| AC03 | Invalid creditor account number. |
| AM09 | Wrong amount. |
| DUPL | Duplicate sending. |
| DT01 | Invalid date range. |
| FRAD | Fraudulent originated credit transfer. |
| CUST | Requested by customer. |
| TECH | Technical problems resulting in erroneous credit transfer. |
| UNKF | Remitters bank/client request. |
| MS01 | Reason has not been specified due to sensitivities. |
Recall Statuses
Recall statuses reflect the progression of the recall request and your submitted response.
| Case Status | Recall Status | Description |
|---|---|---|
| OPEN | OPEN | Initial recall request received. |
| OPEN | OPEN_RESPONSE_REQUIRED | A chaser has been issued; response required. |
| IN_PROGRESS | ACCEPTED | Positive response registered; awaiting confirmation. |
| CLOSED | ACCEPTED | Recall accepted and completion confirmed. |
Recall Rejection Reasons
A Recall Case must only be rejected using a predefined list of reasons.
| Reason Code | Description |
|---|---|
| FUNDS_NO_LONGER_AVAILABLE | Funds are no longer available. |
| CLOSED_ACCOUNT | Account is closed. |
| UNABLE_TO_OBTAIN_RESPONSE | No response could be obtained from the customer. |
| FUNDS_HAVE_ALREADY_BEEN_RETURNED | Funds have already been returned. |
| REQUEST_REJECTED_BY_RECEIVER | The request was rejected by the receiver. |
Workflow
The diagram below illustrates the lifecycle of a Recall Case.
sequenceDiagram
participant EXT as External Bank
participant BC as Banking Circle
participant Client as Client
EXT->>BC: Incoming Recall Request
BC->>BC: Create Recall Case
alt Client uses webhook data
BC-->>Client: Send webhook case-event (Case Opened)
Client->>Client: Extract Case ID from webhook
else Client polls for cases
Client->>BC: GET Cases (/api/v1/cases)
BC-->>Client: Return case list (including new Case ID)
end
Client->>BC: GET Recall Case<br/>(/api/v1/cases/recalls/{case-id})
Client->>BC: Submit Recall Response<br/>POST /api/v1/cases/recalls/{case-id}/submissions
BC->>BC: Recall Status Update<br/> 'ACCEPTED' or 'REJECTED'
BC->>EXT: Send recall action (Accept/Reject)
BC->>BC: Case Status Update<br/> 'CLOSED'
alt Client uses webhook data
BC-->>Client: Send webhook case-event (Case Closed)
end
Updated about 18 hours ago
