The Payment Ledger is an accounting report that allows you to view all of the payments collected today, and see the list of transactions associated with those payments to check whether the reservation was paid in full, what was paid for, or make sure your payments match your revenue.
Payment Ledger report can show, at a glance, whether the property has received all the payments that it was supposed to, for a specific day or month.
Access the Payment Ledger Report
By default, the property owner has access to Financial Reports. Other users must be granted permission inside Roles. Learn more: Roles and Permissions.
- From the Main menu
, go to Classic reports
- Click on Financial Reports
- Select Payment Ledger
Navigate the Payment Ledger Report
- Payment Type: You can select the various payment types that will be used for determining which reservations will appear on the report.
- Payment Date: Select a single or a date range to filter for the date on which the payment was made.
- Associated Transactions: Select which other reservation transactions you would like to display on the report. Only the selected types of transactions will appear for reservations matching the other filters.
- Posted/Pending Transactions: Select whether to show only the transactions that have already posted, the ones that are still pending, or both. A posted transaction is a transaction that has already happened, such as a payment that was added five minutes ago. A pending transaction is one that is due for a future date, such as the room revenue for a reservation that begins tomorrow.
- Filter by Reservation Number, Room Number, or Guest Name; you can also leave this section blank.
- Check-in and Check-out Date
- User: This filter can be modified to only show 1 or all users. It defaults to ALL users.
- Group By and Sub-Group By: Depending on the type of report, you will want to group or sub-group the report by User, Date/Time, Room, Full name, or Reservation ID.
- Status: Use this section to select the reservation status for which you want to generate the report. It defaults to ALL status.
-
Type: Use this filter to sort out different transaction types. Those transaction types are as follows:
- Reservations: Transactions in a reservation.
- House Accounts: Transactions in a house account.
- Group Profile: Transactions in a group profile (only if you have the Groups feature enabled).
- Click Apply to generate the report.
- Clear the filters for new criteria, if needed.
- Export to: Download the report as a PDF/Excel.
The report generated will show the necessary fields regarding:
- User: User who made the transaction.
- Date/Time: The date the product or service is delivered. With proper permission, the service date can be backdated to recognize revenue and expenses in the correct period.
To learn the difference between the Service Date and the Transaction Date, click here.
- Room: Guest's room.
- Name and Surname: Click them to be redirected to the guest's profile.
- Res #: Click the reservation number to be redirected to the guest's reservation.
- Code: Information entered by the customer in the Code field in Taxes and Fees or Items and Services section.
- Transaction code: This refers to the Accounting Code associated with the Accounting service.
Accounting is currently an experimental feature. You can find more information about it here.
- Description: Transaction description.
- Check-in: Check-in date.
- Check-out: Check-out date.
- Status: Reservation status.
- Note: Any note added when posting an adjustment.
- QTY: It stands for "Quantity" and refers to the number of transactions in the table.
- Credit: Payments.
- Debit: Charges.
How to generate a report with different criteria
Apply the following filters:
- Payment Type: Select Cash.
- Payment Date: Enter the date range or specific date you require.
- Associated Transactions: Select the box Select All Credits (Payments).
- Posted / Pending Transactions: Click the drop-down arrow to unselect all and select Posted.
- Group By: If you are using a date range, this section should be grouped by Date/Time. If you use a specific date, group by User, Room, Full Name, or Reservation ID.
- Sub-Group By: If you use a date range, you will want to sub-group by Room. If you are using a specific date, this is optional.
- Click Apply
Apply the following filters:
- Payment Type: Select all.
- Payment Date: Enter the date range or specific date you require.
- Associated Transactions: Click the drop-down arrow and select Credit.
- Posted / Pending Transactions: Click the drop-down arrow and select Posted.
- Click Apply.
The Description column displays the payment method as listed in the folio.
Many hoteliers charge deposits. So, they may need to generate a list of advanced payments charged at any point in time to verify their reporting. Keep in mind that advanced payments would cause the difference between Revenue and Payments in the Daily Revenue Report (which can result in big Grand Total and Ledger numbers).
This section explains how to generate a list of advanced payments posted on a particular day or during a particular period of time (for both future and past reservations):
- If you need to check the amount of deposits held on a particular day, you need to generate a list of payments posted on that day for the guests arriving the following day or later.
- If you need to check it for a period of time, you'll also need to do the same but then extract the report and remove the payment transactions that were not advanced in the spreadsheet.
Apply the following filters:
- Payment Type: Select all.
- Payment Date: Select the desired date (e.g., the 1st of March).
- Associated Transactions: No Associated Transactions should be selected under the drop-down menu.
- Select Check-in Date range: It should be from the second day from the first payment date till any day far in the future (e.g., it should be from the 2nd of March until some date 2 years).
- Type: Select reservations only.
- Click Apply.
You will have a list of payment transactions posted on the selected day (the 1st of March) for the reservations that are checking in in the future. The report is ready, and you can look up the final number.
If you are interested in a payment date range (e.g., the whole month of January), you need to generate the report, export the file, and continue working on the spreadsheet.
Apply the following filters:
- Payment Type: Select all
- Select the desired Payment Date range (e.g., the whole month of January).
- No Associated Transactions should be selected under the drop-down menu.
- Select Check-in Date range: It should be from the second day from the first payment date until any day far in the future (e.g., it should be from the 2nd of January until somewhere in 2 years).
- Type: Select reservations only.
- Click Apply.
You will have the list of both "advanced" and "not advanced" payment transactions. Some of them were posted during the guest's stay. Unfortunately, you cannot remove them from the system, so in this case, you will need to export the generated report and delete the payments that were not advanced.
The instructions below describe the best way to do it in a Google Spreadsheet.
In the extracted report, you need to delete payment transactions posted on the day of the check-in or later. You can use the "IF formula" to mark those transactions. Then, you need to delete them and to recalculate the total.
The following instructions explain how to do it in detail.
Open the Excel file in the Google Spreadsheet:
- For your convenience, freeze the 1st row.
How: Click View > Freeze > 1 row. - Change the format for the following columns: B (Date/Time), I (check-in date) and J (check-out date). Switch from 'Plain Text' to 'Date'.
How: Select the 3 columns > Click Format > Number > Date. - Add an additional column at the end of the sheet (column P).
- On the new column, go ahead and apply an 'IF formula' to mark the non-advanced transactions.
How: Add the following formula: =ARRAYFORMULA(IF(I:I<=B:B,"N/A","ADVANCED")) to P1.
The formula says the following:
If the check-in date is less or equal to the payment date, it will be called "n/a", if not, it will be called "Advanced".
ARRAYFORMULA = Use this array formula in order to have the 'IF formula' applied to the whole column.
I:I<=B:B means: check-in date is less or equal to the payment date/time.
"N/A","ADVANCED" =Excel will generate the results based on the 'IF formula' applied, and they will be displayed as "N/A" (not applicable or non-advanced) and "Advanced." These are just the terms; you can use any other words.
Note that "N/A" and "Advanced" should be added into parentheses; otherwise, Excel will not accept them.
- Apply a filter to the column that you've just created.
How: Select the column you've just created > click Create a Filter icon.
- By using the filter that you've just created, go ahead and remove the "Advanced" transactions from the filter to have a list of only "non-advanced" transactions (N/A).
How: Click the filter icon > remove "Advanced" from the drop-down > Click OK to apply.
- Select all the N/A rows and delete them.
- Remove the filter.
How: Click the filter icon > turn off the filter.
Now, you have only "Advanced" payment transactions on the list.
- Recalculate the total.
How: Apply the sum formula on the last row.
- Click on the current total > Click the Functions icon > select SUM > select the 1st and the last column:row
- Example: =SUM(O2:O279)
See the example below, and note that the row numbers depend on the number of transactions/rows in your sheet.
Example:
Now, you will see the total of "Advanced" payments.
FAQ
Why does this report use Service Date instead of Transaction Date?
The report uses Service Date as a filterable date to support common reporting needs. The Transaction Date/Time remains immutable to ensure accounting accuracy.
How does the Payment Type filter work in this report?
The Payment Type filter allows you to filter results by payment method.
Why does the Description field match the folio, and what do the Code and Transaction Code columns represent?
The Description field pulls directly from the transaction type shown in the PMS folio. The Code column displays user-defined transaction codes, while the Transaction Code column displays the accounting code associated with the Accounting service and aligns with USALI definitions.
Where does the transaction data in this report come from?
Transaction data is pulled from the Accounting service, which provides detailed transaction-level records aligned with USALI standards. Transactions are not editable; changes are recorded through equal and opposite reversal entries.
Can I email the Payment Ledger Report automatically?
Automatic emailing is not available for this report. You can download the Payment Ledger Report using the Export To option and share it as needed.
Exporting a Large Number of Transactions
When exporting the Payments Ledger, please be aware that the export (in both Excel and PDF formats) has a transaction limit of approximately 10,000 to 12,000 rows. If your selected date range contains more transactions than this limit, the export will not include all of your data, and entries beyond this limit will be omitted. This is a current system limitation that also affects some of our other classic financial reports.
Solutions:
To ensure you capture all of your data for a large date range, such as a full year, we recommend the following methods:
- Export in Smaller Segments: Instead of exporting a full year at once, run the report for smaller, manageable date ranges (e.g., monthly or quarterly). You can then export each of these segments and combine the data in a spreadsheet program like Excel.
- Use Alternative Reports: Consider using reports available in Cloudbeds Insights, which do not have this row limit. These reports are better suited for exporting large volumes of data.
If you require assistance with exporting your data or would like to explore alternative reporting options, please contact our support team.
Comments
Please sign in to leave a comment.