Vacation Rent Payment Deposit Imports
Convert Vacation Rent Payment settlements into VRPlatform deposits
Last Updated: 2026-07-21
Version: 1.0
Use one Vacation Rent Payment settlement as the boundary for one VRPlatform
deposit. Each settlement transaction becomes one reservation-matchable line.
Result
For each settlement with at least one non-zero transaction, submit one deposit with:
- the settlement ID as
uniqueRef - the parsed settlement date
- the team's configured lowercase default currency
- a configured or unambiguous trust bank-account match
- one line per settlement transaction
Vacation Rent Payment values in this source are signed integer minor units. Normalize disbursement signs with care; do not multiply them by 100.
Vacation Rent Payment Data to Load
Load the settlement report for the target date range. Use the settlement ID as identity. When an ID is absent, use the range-end date plus a stable row index.
| Provider value | VRPlatform use |
|---|---|
settlement.id | Transaction uniqueRef |
settlement.date | Transaction date |
settlement.amt | Reconciliation total |
transaction.id | Line uniqueRef |
transaction.amt | Line amount |
transaction.reservationNumber | Preferred reservation match |
transaction.personExternalId | Reservation match fallback |
The provider may return dates as YYYY-MM-DD or
YYYY-MM-DD-HH-mm-ss. Parse either shape. If the settlement date is malformed,
the current source uses the requested report range end; preserve the malformed
source value for review.
Map Settlement Lines
For each transaction:
- convert its signed minor-unit amount to its absolute value
- skip zero amounts
- use
transaction-${transaction.id}as identity, with a numeric fallback and duplicate suffix when needed - classify it as
vacationRentPayment_transaction - use
reservationNumber, falling back topersonExternalId, for bothmatchReservationConfirmationCodeandmatchReservationProcessorBookingRef
Taking the absolute value models the provider's negative disbursement convention. Use this composition only for settlement transaction rows that represent money included in the deposit. If the report introduces refunds or reversals with a distinct economic sign, classify and sign them separately instead of erasing that distinction.
Match the Bank Account
Resolve bank routing in this order:
- the team's configured payout bank account assignment
- the sole active trust deposit bank account
- no match, requiring manual mapping
Send the resolved account's last four digits as matchBankAccountLast4. Do not
choose among multiple active trust accounts without an explicit mapping.
Reconciliation
Normalize the settlement amount to an absolute integer minor-unit value, then compare it with the line sum:
sum(abs(settlement transaction amounts)) = abs(settlement.amt)The current composition stores both values but still submits a mismatch. For a new API integration, treat that difference as a reviewable exception and do not create a balancing line.
End-to-End Example
{
"id": "23416201:75",
"description": "Direct Deposit Disbursement to #1749",
"amt": "-189242",
"date": "2026-07-07-02-16-24",
"transactions": [
{
"id": "174421182:44",
"amt": "-189242",
"personExternalId": "14333982",
"reservationNumber": "15271689"
}
]
}{
"connectionId": "00000000-0000-0000-0000-000000000002",
"data": [
{
"type": "deposit",
"currency": "usd",
"date": "2026-07-07",
"description": "Vacation Rent Payment settlement 23416201:75",
"uniqueRef": "23416201:75",
"matchBankAccountLast4": "3216",
"lines": [
{
"uniqueRef": "transaction-174421182:44",
"amount": 189242,
"description": "Transaction 174421182:44",
"matchReservationConfirmationCode": "15271689",
"matchReservationProcessorBookingRef": "15271689",
"matchLineTypeClassification": "vacationRentPayment_transaction"
}
]
}
]
}In this example, matchBankAccountLast4 comes from team bank routing, not from
the provider settlement payload.
Implementation Checklist
- Treat provider amounts as signed integer minor units.
- Use one settlement per deposit and the settlement ID as identity.
- Parse both supported provider date shapes.
- Prefer reservation number over person external ID.
- Send the processor booking reference together with the confirmation hint.
- Select a bank only from explicit payout routing or one unambiguous trust bank.
- Review line-total mismatches and never synthesize a balancing line.
- Revisit absolute-value normalization if the provider adds refund semantics.
