Payouts Reconciliation API Reference [Beta]

How to retrieve GuestyPay transactions for reconciliation purposes.

Introduction

The Payouts Reconciliation API retrieves payout data from Guesty Pay providers. It supports filtering by date range, payout ID, reservation confirmation code, and payment processor sub-accounts.


Core Concepts


TermDefinition
Sub-account IDPayment processor sub-account in the format, accountId.subAccountId (e.g. 1234.1).
Payout IDUnique identifier of a payout generated by the payment processor.
ReservationBooking associated with payout transactions, identified by, reservationConfirmationCode.

API Usage and Policies


The endpoint requires:

  1. Authentication: Valid credentials for the Open API or Partners API
  2. Payment Provider Configuration: Your account should have (active) Guesty Pay providers with payouts processed.

Endpoint Paths


MethodPath
GETpayment-transactions/reports/payouts-reconciliation

Query Parameters


ParameterDescription
startDateStart date (ISO 8601), required when not using reservationConfirmationCode.
endDateEnd date (ISO 8601), required when not using reservationConfirmationCode.
subAccountIdOptional sub-account filter, format: accountId.subAccountId (numeric number.number).
payoutIdOptional payout ID to narrow results within the date range.
reservationConfirmationCodeReservation confirmation code; cannot be combined with any other filter.
skipItems to skip for pagination (default 0).
takePage size (default 25, max 100).

Request Limitations

  • Date range requirement:
    • Either (startDate & endDate) or reservationConfirmationCode must be provided
    • When using reservationConfirmationCode, you must not send startDate, endDate, subAccountId, or payoutId
  • Date range length: Maximum consecutive date range is 31 days
  • Date ordering: endDate must be on or after startDate
  • Pagination: take must be between 1 and 100
  • Sub-account format: subAccountId must be number.number (e.g. 1234.1)

Common Error Scenarios


ScenarioHTTP StatusError Message
Missing both the date range and the reservation code400Date range is required
Invalid date format400Invalid date format
Date range exceeds 31 days400Date range cannot exceed 1 month
End date before start date400End date cannot be before start date
Invalid subAccountId format400subAccountId must be in the format number.number
reservationConfirmationCode combined with any other filter400reservationConfirmationCode cannot be combined with other filters
Unauthenticated request401You need to be authenticated to access this endpoint

Response Payload

An array of transactions per payout. The following table describes a transaction object.

FieldExampleDescription
transactionId"1387001358100142998"Unique identifier for this transaction from the payment processor
reservationConfirmationCode"HA-123abc"Guesty reservation confirmation code
amount1000.00Transaction amount in decimal format
currency"GBP"Currency code
last41234Last four digits of the payment card
bin123456Bank Identification Number (first six digits of the payment card)
subAccount"1387.2 - My Company - GBP"Payment processor account identifier - merchant account name
merchantDate"2025-09-15T02:20:45"Transaction processing date and time by merchant
systemDate"2025-09-15T02:20:48"Transaction processing date and time
settlementDate"2025-09-15T23:59:59"Transaction settlement date and time
paymentMethod"Visa"Payment method type/brand
processorARN"ProcessorARN"Acquirer Reference Number for the transaction
dynamicDescriptor"DynamicDescriptor"Business dynamic descriptor value
status"Processed"Transaction status
transactionType"Verify"Transaction type
authorizationOrErrorCode"275640"Authorization or error code from the processor