Skip to main content

Bank Accounts

Where claim payments are sent, by ACH. Accounts are registered at the owner level here; which account a building pays to is configured on the property (bank_account_external_id). A building with no explicit account pays to the owner's default.

See the Onboarding overview for the array, result, and upsert conventions this endpoint shares.

Register bank accounts

POST /partners/{owner_slug}/bank_accounts
Content-Type: application/json
[
{ "external_system_id": "acme-bank-88",
"display_name": "Hudson primary operating",
"routing_number": "021000021",
"account_number": "483902117" },
{ "external_system_id": "acme-bank-89",
"display_name": "Hudson East region",
"routing_number": "021000021",
"account_number": "580441022" }
]

Request fields

FieldRequiredNotes
external_system_idyesYour own identifier. The upsert key, referenced by bank_account_external_id on properties
display_nameyesA label for operations and claim records, not the legal account holder name. Make it recognizable to the owner
routing_numberyes9 digits, ABA
account_numberyesDigits, up to 20. Never returned in responses; only the last four digits are echoed back
defaultnoThe owner's first account is the default automatically. true on a later account moves the default to it. false on the current default is rejected: the default must always point somewhere

Response

{
"status_code": 200,
"results": [
{ "external_system_id": "acme-bank-88",
"action": "created",
"display_name": "Hudson primary operating",
"routing_number": "021000021",
"account_number_last4": "2117",
"default": true },
{ "external_system_id": "acme-bank-89",
"action": "created",
"display_name": "Hudson East region",
"routing_number": "021000021",
"account_number_last4": "1022",
"default": false }
],
"meta": { "created": 2, "updated": 0, "failed": 0 }
}

The first account you register becomes the default automatically. For most owners that single call is the entire setup: every building without its own account pays to it, including buildings added later. Portfolios that route by region or group register additional accounts and reference them from the property items. Send default: true on a later account to move the default; buildings without an explicit account follow it.

The account_number is never echoed back. Responses carry only account_number_last4.

Behavior and constraints

  • Accounts are accepted as submitted. Rhino does not verify routing or account numbers and pays claims to the values you send, so correctness is the sender's responsibility.
  • Register accounts before the properties that reference them. A bank_account_external_id that Rhino does not recognize fails the property item. For a default only setup, order does not affect payout correctness, but registering accounts before going live allows the first claim to pay out on the day it is approved.
  • Accounts cannot be deleted through this API. Reassign the buildings, or move the default, and the unused account is retired by Rhino.
  • For an owner with an existing Rhino relationship, its buildings usually already have payout accounts in Rhino. Coordinate with your Partner Success Manager before sending bank details or account references for them.

Next steps

  • Properties: reference an account from a building with bank_account_external_id