---
title: "Confirm a transfer request"
method: POST
path: "/transferRequests/{transferRequestId}/confirmations"
tags: ["Transfers"]
---

# Confirm a transfer request

`POST /transferRequests/{transferRequestId}/confirmations`

## Request

- Base URL: `https://api.groupebpce.com/retail/moneyTransfer/v1`
- URL: `https://api.groupebpce.com/retail/moneyTransfer/v1/transferRequests/{transferRequestId}/confirmations`
- Auth: OAuth 2
  - Authorization code: `/api/oauth/authorize`
  - Token URL: `/api/oauth/token` scopes: `moneyTransfer.transferRequests.confirmations:WRITE`

Confirm a transfer request. The entry phase is over with calling this endpoint. At first call of this endpoint, a strong authentication may be generally demanded in order to seal the transfer. So an HTTP error 403 is returned at first call with presence of a HTTP header called "X-Stepup-Token". In this case, the consumer must forward to "BPCE_CONNECT" urls to enter into a stepup process. After that, a second call of this endpoint will be possible and needed to really do the confirmation of the transfer request.
In particular and rare cases, besides the confirmation of the transfer request is necessary, it is not allowed at all via this API ; in this case, an HTTP 400 error with code "bpce.delegation.hasToBeDoneOnBankWebSite" indicates the end user customer to validate the transfer within the BPCE web site.

## Response `201`

Confirmation of the transfer. The request goes into CONFIRMED status. It is no longer possible to modify the request (by adding lines for example).

- TransferRequestSummary: Summary of a transfer request. This resource includes only global information of the request. There is no information about the lines details here. The globalAmount property is a free of charge amount.
  - `transferRequestId` string, required: Identifier related to the transfer request
  - `globalAmount` Amount: Default objet which stands for an amount (number value + currency code).
    - `value` number, double, required: Value of the amount.
    - `currencyCode` string, required: Alphabetical code of the currency code (ISO 4217)
  - `transferRequestStatus` 'INITIALIZED' | 'CONFIRMABLE' | 'CONFIRMED' | 'REJECTED' | 'DELETED', required: State of the transfer request. This state is useful to follow and manage a transfer request only during the entry phase. Once confirmed, rejected or canceled, the transfer request is in a terminal state and will not change, so that it is the state of the transfer request line one must then examinate to know if a transfer have been well processed or not.<table><tr><td>Code</td> <td>Meaning</td></tr><tr><td>INITIALIZED</td> <td>The transfer request has been accepted but all transfer lines has not been processed so that the transfer request confirmation step is not yet available.</td></tr><tr><td>CONFIRMABLE</td> <td>The transfer request has been accepted and all transfer lines has been processed so that the transfer request confirmation step is available.</td></tr><tr><td>CONFIRMED</td> <td>The transfer request has been confirmed. One cannot add additional transfer lines to the transfer request anymore.</td></tr><tr><td>REJECTED</td> <td>The BPCE system has rejected all the lines (for a common cause).</td></tr><tr><td>DELETED</td> <td>The subscriber has canceled the transfer request (all lines are canceled).</td></tr></table>
  - `transfersCount` integer, required: Number of transfers included in this request.
  - `creationDateTime` string, date-time, required: Date and time of creation for the request.
  - `modificationDateTime` string, date-time: Date and time of modification for the request.
  - `requestedDebitMode` 'SINGLE' | 'GROUPED': Indicates how the caller wishes the set of transfer request lines to be debited from the source account ; that is if there should be only one global accounting entry with the global amount or alternatively there should be n single transfers (one accounting entry for one transfer request line). <table><tr><td>Code</td> <td>Meaning</td></tr><tr><td>GROUPED</td> <td>One global accounting entry with the global amount.</td></tr><tr><td>SINGLE</td> <td>One accounting entry for each transfer request line.</td></tr></table>
  - `globalFee` Amount: Default objet which stands for an amount (number value + currency code).
    - `value` number, double, required: Value of the amount.
    - `currencyCode` string, required: Alphabetical code of the currency code (ISO 4217)

## Other responses

- `400`: Bad Request - HTTP 400
- `401`: Unauthorized - HTTP 401
- `403`: Forbidden - HTTP 403
- `404`: Resource Not Found - HTTP 404
- `500`: Internal Server Error - HTTP 500.
- `503`: Service Unavailable - HTTP 503.

---

[API](https://skmtc.dev/groupebpce/apis/bpce-open-finance-transfer.md) - [All operations](https://skmtc.dev/groupebpce/apis/bpce-open-finance-transfer/llms.txt) - [OpenAPI document](https://skmtc.dev/groupebpce/apis/bpce-open-finance-transfer/revisions/b85ff7120f49?raw)
