The Marina Contracts report tracks slip agreements — which reservations have a contract attached, which version the customer signed, when it expires, and whether it has actually been signed yet. It is how you keep on top of signature chasing and renewals without opening reservations one at a time.
This article assumes you already know the basics of the Sharper reporting module — the Name, Token, Subtotal, column picker, and filter fields. For a full walkthrough of the reporting form itself, see the Sharper Reporting Reference Guide. This article only covers what's specific to the Contracts report.
Why This Report Matters
A slip contract is what makes the rest of your terms enforceable — liability, insurance requirements, rules of the marina, and what happens if a customer stops paying. An unsigned contract on an occupied slip is a genuine exposure, and it is very easy to miss when signature chasing happens by memory. Use this report to:
Find customers who are in a slip but have not signed their agreement
Build a renewals list from contract expiration dates, well before the season turns over
Confirm which version of your agreement each customer actually signed, after you revise your terms
See who signed electronically and who signed on paper
Only Reservations With a Contract Appear
Rows come from contract records attached to reservations. That sounds obvious, but it produces a result that catches people out:
A reservation that was never issued a contract at all does not appear in this report — not as an unsigned row, not as a blank one. So this report shows you unsigned contracts, but it cannot show you missing ones. To find reservations with no contract, run the Marina Reservations report and compare, or check that your contract is set to attach automatically for that booking type.
Building a Contracts Report
Go to Reports → Marina → Contracts in the left sidebar.
If a shipped report is close to what you need, use the ⋯ menu → Copy first — shipped reports can only be edited by the Sharper team.
Otherwise click + New and give it a Name, such as "Unsigned Contracts."
Add the columns below from the Available panel.
Optionally turn on Dashboard so the signature-chasing list is one click away.
Click Save, then Get Report to run it.
Recommended Columns
Field | What It Shows |
Contract Name | Which agreement was issued |
Contract Version | The version the customer was given. Essential after you revise your terms — it tells you who is still on the old wording. |
Contract Start Date, Contract Expiration Date | The term of the agreement. Expiration date is the column to build renewals from. |
Contract Created Date | When the contract was generated — compare against the signing dates to see how long signatures are taking |
Contract E-sign Completed | Whether the electronic signature process finished. This is the primary "is it signed?" column. |
Contract E-sign Date | When it was signed electronically |
Contract Print Sign Date | When a paper copy was signed and recorded. A contract can be legitimately signed on paper with no e-sign date at all — check both before chasing. |
Contract Email | The address the contract was sent to — the first thing to check when a customer says they never received it |
Customer Name, Cust Email, Cust Phone | Who to chase |
Unit Name, Group Name | The slip the contract covers and its dock |
Vessel Name, Vessel Registration | The boat covered by the agreement |
Arrival Date, Departure Date, Reservation Status | The stay the contract belongs to, and whether it is still live |
Reservation Reference | The booking reference, for looking the reservation up |
Insurance Expiration Date, COI Received, Additional Insured | Insurance status alongside contract status — the two compliance checks are usually done together |
Subtotal, Tax, Total | The value of the reservation the contract covers |
Has Auto Pay | Whether payment is automated for this customer |
Note: Before treating a contract as unsigned, check both Contract E-sign Completed and Contract Print Sign Date. A customer who came into the office and signed on paper will show no e-sign completion, and chasing them for a signature they have already given is a poor customer experience.
Useful Filters
Genuinely unsigned: Field Contract E-sign Completed set to No, And Contract Print Sign Date set to is empty.
Unsigned on an active stay: add Reservation Status to the group above, set to your active status — this is your real exposure list.
Renewals due: Field Contract Expiration Date, operator Between, entering today and a date 60 or 90 days out.
Already expired but still occupied: Contract Expiration Date operator < today, with an active reservation status.
Customers on an old version: Field Contract Version, operator < or not equal to your current version number.
Signed on paper: Field Contract Print Sign Date, set to is not empty.
The unsigned-on-an-active-stay filter is the one worth pinning to your dashboard — it is short, it is actionable, and it should ideally be empty.
