Bank account notification payloads
When you subscribe to a BILL event and the event triggers, BILL sends a notification to your provided notificationUrl. See /v3/funding-accounts/banks in the API reference for more information about the request and response fields.
Sample bank-account.created payload
bank-account.created payloadIn this sample unescaped JSON payload, the details of a bank account are available. All the fields are included in each bank-account.created payload.
Field | Description |
|---|---|
| BILL-generated ID of the bank account. The value begins with |
| Set as |
| Bank account number |
| Full name on bank account |
| Bank routing number |
| Bank name |
| Bank account status ( |
| BILL-generated ID of the user that created the bank account. This value begins with |
| Bank account type ( |
| Bank account owner type ( |
| Created date and time |
| Updated date and time |
| Bank account default values for BILL AP and AR operations.
|
{
"metadata": {
"eventId": "{event_id}",
"subscriptionId": "{subscription_id}",
"organizationId": "{organization_id}",
"eventType": "bank-account.created",
"version": "1"
},
"bank-account": {
"id": "{bankaccount_id}",
"archived": true,
"accountNumber": "*****2333",
"nameOnAccount": "Noodle Soupsmith",
"routingNumber": "074000010",
"bankName": "Chase",
"status": "PENDING",
"createdBy": "{user_id}",
"type": "CHECKING",
"ownerType": "BUSINESS",
"createdTime": "2025-12-16T23:15:23.127+00:00",
"updatedTime": "2025-12-16T23:15:23.127+00:00",
"default": {
"payables": false,
"receivables": false
}
}
}Sample bank-account.updated payloads
bank-account.updated payloadsBILL sends bank-account.updated notifications for a set of operations.
Fields that trigger bank-account.updated notifications
bank-account.updated notificationsWhen changes are made to a set of fields in a bank account, the bank-account.updated notification is triggered.
| Field | Description |
|---|---|
archived | Set as true if the bank account is archived |
status | Bank account status |
default.payables | Set as true if the bank account is set as default for AP operations |
default.receivables | Set as true if the bank account is set as default for AR operations |
Bank account status values
status valuesIn this sample unescaped JSON payload, the details of an updated bank account are available.
When the status changes from PENDING to VERIFIED, the archived value is set as false.
{
"metadata": {
"eventId": "{event_id}",
"subscriptionId": "{subscription_id}",
"organizationId": "{organization_id}",
"eventType": "bank-account.updated",
"version": "1"
},
"bank-account": {
"id": "{bankaccount_id}",
"archived": false,
"accountNumber": "*****2333",
"nameOnAccount": "Noodle Soupsmith",
"routingNumber": "074000010",
"bankName": "Chase",
"status": "VERIFIED",
"createdBy": "{user_id}",
"type": "CHECKING",
"ownerType": "BUSINESS",
"createdTime": "2025-12-16T23:15:23.127+00:00",
"updatedTime": "2025-12-19T23:15:23.127+00:00",
"default": {
"payables": false,
"receivables": false
}
}
}When the status changes from VERIFIED to NOT_VERIFIED, the archived value is set as true.
{
"metadata": {
"eventId": "{event_id}",
"subscriptionId": "{subscription_id}",
"organizationId": "{organization_id}",
"eventType": "bank-account.updated",
"version": "1"
},
"bank-account": {
"id": "{bankaccount_id}",
"archived": true,
"accountNumber": "*****2333",
"nameOnAccount": "Noodle Soupsmith",
"routingNumber": "074000010",
"bankName": "Chase",
"status": "NOT_VERIFIED",
"createdBy": "{user_id}",
"type": "CHECKING",
"ownerType": "BUSINESS",
"createdTime": "2025-12-16T23:15:23.127+00:00",
"updatedTime": "2025-12-20T23:15:23.127+00:00",
"default": {
"payables": false,
"receivables": false
}
}
}When the bank account status is PENDING, EXPIRED, or BLOCKED, the archived value is set as true.
{
"metadata": {
"eventId": "{event_id}",
"subscriptionId": "{subscription_id}",
"organizationId": "{organization_id}",
"eventType": "bank-account.updated",
"version": "1"
},
"bank-account": {
"id": "{bankaccount_id}",
"archived": true,
"accountNumber": "*****2333",
"nameOnAccount": "Noodle Soupsmith",
"routingNumber": "074000010",
"bankName": "Chase",
"status": "{PENDING, EXPIRED, or BLOCKED}",
"createdBy": "{user_id}",
"type": "CHECKING",
"ownerType": "BUSINESS",
"createdTime": "2025-12-16T23:15:23.127+00:00",
"updatedTime": "2025-12-19T23:15:23.127+00:00",
"default": {
"payables": false,
"receivables": false
}
}
}default values for AP and AR operations
default values for AP and AR operationsIn this sample unescaped JSON payload, the details of an updated bank account are available.
{
"metadata": {
"eventId": "{event_id}",
"subscriptionId": "{subscription_id}",
"organizationId": "{organization_id}",
"eventType": "bank-account.updated",
"version": "1"
},
"bank-account": {
"id": "{bankaccount_id}",
"archived": false,
"accountNumber": "*****2333",
"nameOnAccount": "Noodle Soupsmith",
"routingNumber": "074000010",
"bankName": "Chase",
"status": "VERIFIED",
"createdBy": "{user_id}",
"type": "CHECKING",
"ownerType": "BUSINESS",
"createdTime": "2025-12-16T23:15:23.127+00:00",
"updatedTime": "2025-12-20T23:15:23.127+00:00",
"default": {
"payables": true,
"receivables": true
}
}
}Updated 3 days ago
