> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mangopay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# View a Transfer

<Note>
  **Note – Transfer data retained for 13 months**

  An API call to retrieve a transfer whose `CreationDate` is older than 13 months may return 404 Not Found.

  For more information, see the <a href="/api-reference/overview/data-availability-periods">Data availability periods</a> article.
</Note>

### Path parameters

<ParamField path="TransferId" type="string" required>
  The unique identifier of the transfer.
</ParamField>

### Responses

<AccordionGroup>
  <Accordion title="200">
    <ResponseField name="ScaContext" type="string">
      **Possible values:** `USER_PRESENT`, `USER_NOT_PRESENT`

      The SCA context of the request, which is **required** if the debited wallet owner's `UserCategory` is `OWNER`:

      * `USER_PRESENT` – The user is taking the SCA-triggering action of initiating a transfer. The platform must [redirect the user](/guides/sca/session) using the `PendingUserAction.RedirectUrl` returned so that the user can complete the SCA session (unless Mangopay applied an exemption for low-amount and low-risk transfers, so no redirection link was returned).
      * `USER_NOT_PRESENT` – The platform is taking the action under proxy from the user and the user has previously given consent to Mangopay (via the SCA hosted experience) to allow the action. If the user has not given (or has revoked) their consent, then `USER_NOT_PRESENT` returns a 403 error.

      Read more about [managing proxy and user consent](/guides/sca/proxy-management) **→**

      **Note:** For existing platforms, the parameter is technically optional if the debited wallet owner's `UserCategory` is `OWNER`, and the default value will become `USER_PRESENT` from **Dec 15, 2025** (Dec 1 in Sandbox)
    </ResponseField>

    <ResponseField name="Id" type="string">
      Max length: 128 characters (see [data formats](/api-reference/overview/data-formats) for details)

      The unique identifier of the object.
    </ResponseField>

    <ResponseField name="Tag" type="string">
      Max. length: 255 characters

      Custom data that you can add to this object.
    </ResponseField>

    <ResponseField name="CreationDate" type="Unix timestamp">
      The date and time at which the object was created.
    </ResponseField>

    <ResponseField name="AuthorId" type="string">
      The unique identifier of the user at the source of the transaction.
    </ResponseField>

    <ResponseField name="CreditedUserId" type="string">
      **Default value:** The unique identifier of the owner of the credited wallet.

      The unique identifier of the user whose wallet is credited.
    </ResponseField>

    <ResponseField name="DebitedFunds" type="object">
      Information about the debited funds.

      <Expandable title="properties">
        <ResponseField name="Currency" type="string">
          **Returned values:** The three-letter <a href="/api-reference/overview/data-formats" target="_blank">ISO 4217 code</a> (EUR, GBP, etc.) of a <a href="/guides/currencies" target="_blank">supported currency</a> (depends on feature, contract, and activation settings).

          The currency of the debited funds.
        </ResponseField>

        <ResponseField name="Amount" type="integer">
          An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as `1260` whereas JPY 12 would be represented as just `12`).
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="CreditedFunds" type="object">
      Information about the credited funds (`CreditedFunds` = `DebitedFunds` - `Fees`).

      <Expandable title="properties">
        <ResponseField name="Currency" type="string">
          **Returned values:** The three-letter <a href="/api-reference/overview/data-formats" target="_blank">ISO 4217 code</a> (EUR, GBP, etc.) of a <a href="/guides/currencies" target="_blank">supported currency</a> (depends on feature, contract, and activation settings).

          The currency of the credited funds.
        </ResponseField>

        <ResponseField name="Amount" type="integer">
          An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as `1260` whereas JPY 12 would be represented as just `12`).
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="Fees" type="object">
      Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet).

      <Expandable title="properties">
        <ResponseField name="Currency" type="string">
          **Returned values:** The three-letter <a href="/api-reference/overview/data-formats" target="_blank">ISO 4217 code</a> (EUR, GBP, etc.) of a <a href="/guides/currencies" target="_blank">supported currency</a> (depends on feature, contract, and activation settings).

          The currency of the fees.
        </ResponseField>

        <ResponseField name="Amount" type="integer">
          An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as `1260` whereas JPY 12 would be represented as just `12`).
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="Status" type="string">
      **Returned values:** `CREATED`, `SUCCEEDED`, `FAILED`

      The status of the transaction.
    </ResponseField>

    <ResponseField name="ResultCode" type="string">
      The code indicating the result of the operation. This information is mostly used to <a href="/errors/codes">handle errors</a> or for filtering purposes.
    </ResponseField>

    <ResponseField name="ResultMessage" type="string">
      The explanation of the result code.
    </ResponseField>

    <ResponseField name="ExecutionDate" type="Unix timestamp">
      The date and time at which the status changed to `SUCCEEDED`, indicating that the transaction occurred. The statuses `CREATED` and `FAILED` return an `ExecutionDate` of `null`.
    </ResponseField>

    <ResponseField name="Type" type="string">
      **Returned values:** `PAYIN`, `TRANSFER`, `CONVERSION`, `PAYOUT`

      The type of the transaction.
    </ResponseField>

    <ResponseField name="Nature" type="string">
      **Returned values:** `REGULAR`, `REPUDIATION`, `REFUND`, `SETTLEMENT`

      The nature of the transaction, providing more information about the context in which the transaction occurred:

      * `REGULAR` – Relative to most of the transactions (pay-ins, payouts, and transfers) in a usual workflow.
      * `REPUDIATION` – Automatic withdrawal of funds from the platform’s repudiation wallet as part of the dispute process (when the user has requested a chargeback).
      * `REFUND` – Reimbursement of a transaction to the user (pay-in refund), to a wallet (transfer refund), or of a payout (payout refund, only initiated by Mangopay).
      * `SETTLEMENT` – Transfer made to the repudiation wallet by the platform to settle a lost dispute.
    </ResponseField>

    <ResponseField name="DebitedWalletId" type="string">
      The unique identifier of the debited wallet.
    </ResponseField>

    <ResponseField name="CreditedWalletId" type="string">
      The unique identifier of the credited wallet.
    </ResponseField>
  </Accordion>
</AccordionGroup>

<ResponseExample>
  ```json 200 - SCA required theme={null}
  {
      "ScaContext": "USER_PRESENT",
      "Id": "xfer_c_01JRSHQFG2337DBQ4NS8XPYCK7",
      "CreationDate": 1744614179,
      "DebitedWalletId": "wlt_m_01JRJM7ASZN7YP4MBDVBT0HZF1",
      "CreditedWalletId": "wlt_m_01JRHSTW2NP4MDB45WQMDNS23C",
      "AuthorId": "user_m_01JRJM5RR5NYQDN0S6QWJJDRMR",
      "CreditedUserId": "user_m_01JRHSS3B18H86QA0C467RVK07",
      "DebitedFunds": {
          "Currency": "EUR",
          "Amount": 3001
      },
      "CreditedFunds": {
          "Currency": "EUR",
          "Amount": 3001
      },
      "Fees": {
          "Currency": "EUR",
          "Amount": 0
      },
      "Type": "TRANSFER",
      "Nature": "REGULAR",
      "Status": "CREATED",
      "Tag": "Created using Mangopay API Postman Collection",
      "ResultCode": null,
      "ResultMessage": null,
      "ExecutionDate": null,
      "PendingUserAction": {
          "RedirectUrl": "https://sca.sandbox.mangopay.com/?token=sca_0196331bc1247e3fa33be6f9c797abd7"
      }
  }
  ```

  ```json 200 - SCA not required theme={null}
  {
      "ScaContext": "USER_PRESENT",
      "Id": "xfer_c_01JRSHXFS5YX0HVCXZFQ4J2XMH",
      "CreationDate": 1744614375,
      "DebitedWalletId": "wlt_m_01JRHSTW2NP4MDB45WQMDNS23C",
      "CreditedWalletId": "wlt_m_01JRJM7ASZN7YP4MBDVBT0HZF1",
      "AuthorId": "user_m_01JRHSS3B18H86QA0C467RVK07",
      "CreditedUserId": "user_m_01JRJM5RR5NYQDN0S6QWJJDRMR",
      "DebitedFunds": {
          "Currency": "EUR",
          "Amount": 1000
      },
      "CreditedFunds": {
          "Currency": "EUR",
          "Amount": 1000
      },
      "Fees": {
          "Currency": "EUR",
          "Amount": 0
      },
      "Type": "TRANSFER",
      "Nature": "REGULAR",
      "Status": "SUCCEEDED",
      "Tag": "Created using Mangopay API Postman Collection",
      "ResultCode": "000000",
      "ResultMessage": "Success",
      "ExecutionDate": 1744614375,
      "PendingUserAction": null
  }
  ```
</ResponseExample>

<RequestExample>
  ```json REST theme={null}
  // GET has no body parameters
  ```

  ```php PHP theme={null}
  <?php 

  require_once 'vendor/autoload.php';

  use MangoPay\MangoPayApi;
  use MangoPay\Libraries\ResponseException as MGPResponseException;
  use MangoPay\Libraries\Exception as MGPException;

  $api = new MangoPayApi();

  $api->Config->ClientId = 'your-client-id';
  $api->Config->ClientPassword = 'your-api-key';
  $api->Config->TemporaryFolder = 'tmp/';

  try {
      $transferId = '155585643';

      $response = $api->Transfers->Get($transferId);

      print_r($response);
  } catch(MGPResponseException $e) {
      print_r($e);
  } catch(MGPException $e) {
      print_r($e);
  }  
  ```

  ```javascript NodeJS   theme={null}
  const mangopayInstance = require('mangopay4-nodejs-sdk')
  const mangopay = new mangopayInstance({
    clientId: 'your-client-id',
    clientApiKey: 'your-api-key',
  })

  let myTransfer = {
    Id: '174877749',
  }

  const viewTransfer = async (transferId) => {
    return await mangopay.Transfers.get(transferId)
      .then((response) => {
        console.info(response)
        return response
      })
      .catch((err) => {
        console.log(err)
        return false
      })
  }

  viewTransfer(myTransfer.Id)  
  ```

  ```ruby Ruby   theme={null}
  require 'mangopay'

  MangoPay.configure do |client|
      client.preproduction = true
      client.client_id = 'your-client-id'
      client.client_apiKey = 'your-api-key'
      client.log_file = File.join(Dir.pwd, 'mangopay.log')
  end

  def viewTransfer(transferId)
      begin
          response = MangoPay::Transfer.fetch(transferId)
          puts response
          return response
      rescue MangoPay::ResponseError => error
          puts "Failed to fetch transfer: #{error.message}"
          puts "Error details: #{error.details}"
          return false
      end
  end


  myTransfer = {
    Id: '194342401'
  }

  viewTransfer(myTransfer[:Id])  
  ```

  ```java Java   theme={null}
  import com.google.gson.Gson;
  import com.google.gson.GsonBuilder;
  import com.mangopay.MangoPayApi;
  import com.mangopay.entities.Transfer;

  public class ViewTransfer {
          public static void main(String[] args) throws Exception {
          MangoPayApi mangopay = new MangoPayApi();
          mangopay.getConfig().setClientId("your-client-id");
          mangopay.getConfig().setClientPassword("your-client-password");

          Transfer transfer = mangopay.getTransferApi().get("xfer_m_01HTF8FNN1E4N332ZBVEVHRMD2");
          
          Gson prettyPrint = new GsonBuilder().setPrettyPrinting().create();
          String prettyJson = prettyPrint.toJson(transfer);

          System.out.println(prettyJson);
      }     
  }
  ```

  ```python Python   theme={null}
  from pprint import pprint
  import mangopay

  mangopay.client_id='your-client-id'
  mangopay.apikey='your-api-key'

  from mangopay.api import APIRequest
  handler = APIRequest(sandbox=True)

  from mangopay.resources import Transfer

  try:
      view_transfer = Transfer.get('214568995')
      pprint(vars(view_transfer))
  except Transfer.DoesNotExist:
      print('Transfer {} does not exist'.format(view_transfer.id))
    
  ```

  ```csharp .NET  theme={null}
  using MangoPay.SDK;
  using MangoPay.SDK.Core.Enumerations;
  using MangoPay.SDK.Entities;
  using MangoPay.SDK.Entities.POST;
  using Newtonsoft.Json;

  class Program
  {
      static async Task Main(string[] args)
      {
          MangoPayApi api = new MangoPayApi();

          api.Config.ClientId = "your-client-id";
          api.Config.ClientPassword = "your-api-key";

          var transferId = "xfer_m_01J3ZG49W215VVZRJS394DKM00";

          var viewTransfer = await api.Transfers.GetAsync(transferId);

          string prettyPrint = JsonConvert.SerializeObject(viewTransfer, Formatting.Indented);
          Console.WriteLine(prettyPrint);
      }
  }
  ```
</RequestExample>
