Skip to main content

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:

StatusDescription
createdThe transfer request has been created
processingThe transfer has been created and is being prepared for sending
sendingThe transfer is being sent to the destination account
postedThe transfer has been posted by the bank or payment processor
paidThe transfer has been successfully completed
failedThe 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

FieldDescription
resource.idUnique transfer identifier
resource.amountTransfer amount
resource.currencyCurrency code
resource.statusCurrent transfer status
resource.bankIdDestination bank account ID
resource.dateToPostScheduled posting date
resource.datePostedWhen transfer was posted (if applicable)
resource.dateSettledWhen transfer was settled (if applicable)
resource.holdsAssociated hold information
resource.providerPayment processor handling the transfer
sourceTypeAlways "Transfer" for transfer events

Handling Transfer Events

Best Practices

  1. Use transfer ID for idempotency: Track processed events using resource.id
  2. Monitor status progression: Track transfer through its lifecycle
  3. Handle timing: Use timestamps to track transfer timeline
  4. Check holds: Monitor hold status for fund availability
  5. 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