Get Transfer
Overview
The Get Transfer API allows you to retrieve detailed information about a specific transfer by its ID. This endpoint returns the complete transfer object including all metadata, current status, and any additional processing information. The transfer must belong to the specified business and the authenticated user must have permission to view it.
Resource Access
- HTTP Method:
GET - Endpoint:
/v1/businesses/{business_id}/transfers/{transfer_id} - Authentication: Bearer token required
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
business_id | string (UUID) | Yes | Unique identifier for the business |
transfer_id | string (UUID) | Yes | Unique identifier for the transfer to retrieve |
Request Headers
| Header | Value | Required | Description |
|---|---|---|---|
Accept | application/json | Yes | Content type for the response |
Authorization | Bearer {access_token} | Yes | Bearer token for authentication |
Response
Success Response (200 OK)
{
"id": "urn:uuid:transfer-123",
"business_id": "urn:uuid:9b397b0d-69bc-b09f-9d82-0e02637042fc",
"amount": {
"currency": "USD",
"amount": "100.00"
},
"bank_account_id": "urn:uuid:bank-account-123",
"direction": "withdrawal",
"type": "wire",
"status": "completed",
"idempotency_key": "urn:uuid:idempotency-123",
"user_data": {
"purpose": "Monthly withdrawal",
"reference": "REF-001",
"notes": "Additional transfer notes"
},
"created_at": "2022-01-01T00:00:00.000Z",
"updated_at": "2022-01-01T12:00:00.000Z",
"processed_at": "2022-01-01T01:30:00.000Z"
}
Response Fields
| Field | Type | Description |
|---|---|---|
id | string (UUID) | Unique identifier for the transfer |
business_id | string (UUID) | Business ID this transfer belongs to |
amount | object | Transfer amount with currency |
bank_account_id | string (UUID) | Bank account ID used for this transfer |
direction | string | Transfer direction |
type | string | Transfer method type |
status | string | Current status of the transfer |
idempotency_key | string (UUID) | Idempotency key used |
user_data | object | Additional user-defined data |
created_at | string (date-time) | Creation timestamp |
updated_at | string (date-time) | Last update timestamp |
processed_at | string (date-time) | Processing completion timestamp (completed transfers only) |
failure_reason | string | Failure reason (failed transfers only) |
Transfer Status Values
pending: Transfer initiated but not yet processedprocessing: Transfer is being processedcompleted: Transfer successfully completedfailed: Transfer failed to processcancelled: Transfer was cancelled
Transfer Direction Values
deposit: Money coming into the business accountwithdrawal: Money going out of the business account
Transfer Type Values
wire: Wire transfer (fastest, highest fees)ach: ACH transfer (slower, lower fees)check: Physical check (slowest, variable fees)
Error Responses
- 401 Unauthorized: Invalid or missing authentication token
- 403 Forbidden: User does not have permission to view this transfer
- 404 Not Found: Business or transfer not found
Code Examples
cURL
curl -X GET \
'https://api.example.com/v1/businesses/urn:uuid:9b397b0d-69bc-b09f-9d82-0e02637042fc/transfers/urn:uuid:transfer-123' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR_ACCESS_TOKEN'
Python
import requests
url = "https://api.example.com/v1/businesses/urn:uuid:9b397b0d-69bc-b09f-9d82-0e02637042fc/transfers/urn:uuid:transfer-123"
headers = {
"Accept": "application/json",
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
response = requests.get(url, headers=headers)
print(response.json())
JavaScript (Node.js)
const axios = require('axios');
const url = 'https://api.example.com/v1/businesses/urn:uuid:9b397b0d-69bc-b09f-9d82-0e02637042fc/transfers/urn:uuid:transfer-123';
const headers = {
'Accept': 'application/json',
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
};
axios.get(url, { headers })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error.response.data);
});
Usage Notes
- Use this endpoint to check the current status of a specific transfer
- The
processed_atfield is only included for transfers incompletedstatus - The
failure_reasonfield is only included for transfers infailedstatus - This endpoint provides more detailed information than the list transfers endpoint
- Use the transfer ID from create transfer responses or list transfers results
- The authenticated user must have permission to view transfers for the specified business
- Transfer details include all metadata and processing information for monitoring and auditing