Transfer Events
Transfer events are triggered when a transfer (payout) is created or updated. These events help you track when funds are being transferred to your bank account.
Transfer Status Overview
Transfer statuses can be found in the webhook payload at resource.status. The following statuses indicate the current state of the transfer:
| Status | Description |
|---|---|
created | The transfer request has been created |
processing | The transfer has been created and is being prepared for sending |
sending | The transfer is being sent to the destination account |
posted | The transfer has been posted by the bank or payment processor |
paid | The transfer has been successfully completed |
failed | The transfer request failed |
Event: Transfer Status — Processing
This event is triggered when a transfer is first created and being prepared.
{
"object": "event",
"id": "uywkgdxdobb3j8at3w4tlvpr",
"resource": {
"object": "transfer",
"id": "idycutxksodjjrpeljw0hoa5",
"amount": "100.00",
"currency": "USD",
"dateToPost": "2025-07-15T21:30:59.000Z",
"holds": [
{
"object": "hold",
"id": "qyrdjevt3knpozbcnyiq6dsh",
"amount": "100.00",
"currency": "USD",
"holdTime": "0",
"releaseDate": "2025-07-15T21:30:59.000Z",
"resourceId": "idycutxksodjjrpeljw0hoa5",
"resourceType": "Transfer",
"status": "created",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:30:59.000Z"
}
],
"bankId": "1h6xdwqkemo5npnkmy7q9pcs",
"accountKey": "default",
"resourceId": "jf1zmoz90sryhybdxqbdhmml",
"resourceType": "Withdrawal",
"status": "processing",
"ownerId": "belg86nbs3ahqbq6a7sbn2ez",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:30:59.000Z",
"provider": "vantiv"
},
"diff": {
"previous": {},
"changes": {
"object": "transfer",
"id": "idycutxksodjjrpeljw0hoa5",
"status": "processing"
}
},
"sourceId": "idycutxksodjjrpeljw0hoa5",
"sourceType": "Transfer",
"status": "active"
}
Event: Transfer Status — Sending
This event is triggered when a transfer is being sent to the destination account.
{
"object": "event",
"id": "xt6dwjttgmfhnbk5r4d5taxj",
"resource": {
"object": "transfer",
"id": "idycutxksodjjrpeljw0hoa5",
"amount": "100.00",
"currency": "USD",
"dateToPost": "2025-07-15T21:30:59.000Z",
"holds": [
{
"object": "hold",
"id": "qyrdjevt3knpozbcnyiq6dsh",
"amount": "100.00",
"currency": "USD",
"holdTime": "0",
"releaseDate": "2025-07-15T21:30:59.000Z",
"resourceId": "idycutxksodjjrpeljw0hoa5",
"resourceType": "Transfer",
"status": "active",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:31:48.000Z"
}
],
"bankId": "1h6xdwqkemo5npnkmy7q9pcs",
"accountKey": "default",
"resourceId": "jf1zmoz90sryhybdxqbdhmml",
"resourceType": "Withdrawal",
"status": "sending",
"ownerId": "belg86nbs3ahqbq6a7sbn2ez",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:31:48.000Z",
"provider": "vantiv"
},
"diff": {
"previous": {
"status": "processing",
"lastUpdated": "2025-07-15T21:30:59.000Z"
},
"changes": {
"holds": [
{
"status": "active",
"lastUpdated": "2025-07-15T21:31:48.000Z"
}
],
"status": "sending",
"lastUpdated": "2025-07-15T21:31:48.000Z"
}
},
"sourceId": "idycutxksodjjrpeljw0hoa5",
"sourceType": "Transfer",
"status": "active"
}
Event: Transfer Status — Posted
This event is triggered when a transfer has been posted by the bank.
{
"object": "event",
"id": "jg9fcy7tryrrj8k2br3wcsja",
"resource": {
"object": "transfer",
"id": "idycutxksodjjrpeljw0hoa5",
"amount": "100.00",
"currency": "USD",
"dateToPost": "2025-07-15T21:30:59.000Z",
"datePosted": "2025-07-15T21:31:51.000Z",
"holds": [
{
"object": "hold",
"id": "qyrdjevt3knpozbcnyiq6dsh",
"amount": "100.00",
"currency": "USD",
"holdTime": "0",
"releaseDate": "2025-07-15T21:30:59.000Z",
"resourceId": "idycutxksodjjrpeljw0hoa5",
"resourceType": "Transfer",
"status": "active",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:31:48.000Z"
}
],
"bankId": "1h6xdwqkemo5npnkmy7q9pcs",
"accountKey": "default",
"resourceId": "jf1zmoz90sryhybdxqbdhmml",
"resourceType": "Withdrawal",
"status": "posted",
"ownerId": "belg86nbs3ahqbq6a7sbn2ez",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:31:51.000Z",
"provider": "vantiv"
},
"diff": {
"previous": {
"status": "sending",
"lastUpdated": "2025-07-15T21:31:48.000Z"
},
"changes": {
"datePosted": "2025-07-15T21:31:51.000Z",
"status": "posted",
"lastUpdated": "2025-07-15T21:31:51.000Z"
}
},
"sourceId": "idycutxksodjjrpeljw0hoa5",
"sourceType": "Transfer",
"status": "active"
}
Event: Transfer Status — Paid
This event is triggered when a transfer is successfully completed.
{
"object": "event",
"id": "6ccvb96gv8xnq8kerl5yj9ko",
"resource": {
"object": "transfer",
"id": "idycutxksodjjrpeljw0hoa5",
"amount": "100.00",
"currency": "USD",
"dateToPost": "2025-07-15T21:30:59.000Z",
"datePosted": "2025-07-15T21:31:51.000Z",
"dateSettled": "2025-07-15T21:37:26.000Z",
"holds": [
{
"object": "hold",
"id": "qyrdjevt3knpozbcnyiq6dsh",
"amount": "100.00",
"currency": "USD",
"holdTime": "0",
"releaseDate": "2025-07-15T21:30:59.000Z",
"dateReleased": "2025-07-15T21:31:52.000Z",
"resourceId": "idycutxksodjjrpeljw0hoa5",
"resourceType": "Transfer",
"status": "released",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:31:52.000Z"
}
],
"bankId": "1h6xdwqkemo5npnkmy7q9pcs",
"accountKey": "default",
"resourceId": "jf1zmoz90sryhybdxqbdhmml",
"resourceType": "Withdrawal",
"status": "paid",
"ownerId": "belg86nbs3ahqbq6a7sbn2ez",
"created": "2025-07-15T21:30:59.000Z",
"lastUpdated": "2025-07-15T21:37:26.000Z",
"provider": "vantiv"
},
"diff": {
"previous": {
"datePosted": "2025-07-15T21:31:51.000Z",
"status": "posted",
"lastUpdated": "2025-07-15T21:31:51.000Z"
},
"changes": {
"dateSettled": "2025-07-15T21:37:26.000Z",
"holds": [
{
"dateReleased": "2025-07-15T21:31:52.000Z",
"status": "released",
"lastUpdated": "2025-07-15T21:31:52.000Z"
}
],
"status": "paid",
"lastUpdated": "2025-07-15T21:37:26.000Z"
}
},
"sourceId": "idycutxksodjjrpeljw0hoa5",
"sourceType": "Transfer",
"status": "active"
}
Key Transfer Event Fields
| Field | Description |
|---|---|
resource.id | Unique transfer identifier |
resource.amount | Transfer amount |
resource.currency | Currency code |
resource.status | Current transfer status |
resource.bankId | Destination bank account ID |
resource.dateToPost | Scheduled posting date |
resource.datePosted | When transfer was posted (if applicable) |
resource.dateSettled | When transfer was settled (if applicable) |
resource.holds | Associated hold information |
resource.provider | Payment processor handling the transfer |
sourceType | Always "Transfer" for transfer events |
Handling Transfer Events
Best Practices
- Use transfer ID for idempotency: Track processed events using
resource.id - Monitor status progression: Track transfer through its lifecycle
- Handle timing: Use timestamps to track transfer timeline
- Check holds: Monitor hold status for fund availability
- Bank reconciliation: Match transfers with bank statements
Common Use Cases
- Cash flow management: Track when funds will be available
- Financial reporting: Record transfer status in accounting systems
- Notifications: Alert when transfers are completed
- Reconciliation: Match transfers with bank deposits
- Dashboard updates: Show real-time transfer status