Skip to main content
Billing & Pricing

Invoicing & Payments

Create invoices, record payments, apply credits, and accept online payments via Stripe or Square.

Invoice Statuses

Status Meaning
Draft Created but not yet sent to the owner
Sent Emailed to the owner; awaiting payment
Paid Fully paid
Overdue Past due date and still unpaid
Void Cancelled/written off

Creating an Invoice

  1. Go to Invoices → New Invoice.
  2. Select the Pet Owner.
  3. Optionally link to a Reservation.
  4. Set the Due Date.
  5. The Tax Rate defaults to your facility's configured rate; adjust if needed.
  6. Click Create Invoice. You are taken to the invoice detail page.

Adding Line Items

An invoice starts empty. Add line items:

  1. On the invoice detail page, click + Add Line Item.
  2. Enter a description, quantity, and unit price.
  3. Click Add. The subtotal, tax, and total update automatically.

You can add as many line items as needed (boarding nights, grooming services, medications, etc.).

Manual Discount Line Items

To apply a manual discount to an invoice:

  1. Click + Add Line Item.
  2. Use one of the quick-add discount buttons: Multi-pet discount, Loyalty / returning client, or Manual credit.
  3. Enter a negative unit price (e.g., −$12.00) to deduct from the total.
  4. Click Add.

Discount line items appear on the invoice with their own line, making the price adjustment transparent to the client.

Applying a Promo Code to an Invoice

On the invoice detail page, enter a valid promo code in the Promo Code field and click Apply. The discount is applied to the subtotal.

Manual Invoice Discount (% or $)

You can also apply a one-off discount directly on a draft invoice — no promo code required:

  1. On the invoice detail page, click Add Discount.
  2. Use the % / $ toggle to choose between a percentage off or a flat dollar amount.
  3. Enter the value (e.g., 10 for 10% off, or 25 for $25 off).
  4. Click Apply.

Flat dollar discounts are validated to be positive and not greater than the chargeable subtotal so the invoice can never go negative.

Selective Taxability

By default, sales tax is applied to the entire invoice subtotal. Some facilities only need to tax certain categories (e.g., retail add-ons but not boarding). To configure:

  1. Go to Settings → Payments → Tax Settings.
  2. Set your Tax Rate (e.g., 8.5 for 8.5%).
  3. Toggle which line item categories are taxable: Boarding, Daycare, Service / Grooming, Add-on, Custom.
  4. Click Save.

On any draft invoice, each line item now shows a Taxed or Tax-free pill. Click the pill to override the facility default for that specific row (handy for one-off non-taxable items). Overridden rows show a small dot indicator and a Reset button to revert to the facility rule. When part of an invoice is taxable, the totals section displays a Taxable portion row so the math is transparent.

Backward compatibility: Facilities that haven't configured per-category taxability continue to tax the full subtotal, so existing workflows are unaffected.

Client Credits

If a pet owner has a positive credit balance, their credits are applied automatically when they pay an invoice through the Customer Portal. Credits reduce the amount charged to the client's card. You can add credits from the pet owner's detail page — see Managing Pet Owners for details.

Sending an Invoice

Click Send Invoice. The owner receives an email with a link to view and pay the invoice online through the Customer Portal.

Recording a Payment

To record a payment (cash, card, check, etc.):

  1. Open the invoice detail page.
  2. Click + Record Payment.
  3. Enter the payment amount, date, and method.
  4. Click Save Payment.

If the payment covers the full balance, the invoice automatically moves to Paid status.

Editing a Payment

Recorded the wrong amount or method? Each manual payment row in the invoice's payment history shows a small pencil edit icon. Click it to amend the amount, date, method, or notes — the invoice totals and paid status are recalculated automatically. Payments collected through Stripe or Square are read-only and don't show the edit icon.

Mark as Paid (Manual Override)

Click Mark as Paid to immediately set the invoice status to Paid without recording individual payment details.

Voiding an Invoice

Click Void Invoice to cancel an invoice. Voided invoices are retained for record-keeping but are removed from outstanding balances.

Re-invoicing after a void: When an invoice is voided, the linked reservation(s) become eligible for invoicing again. You can immediately create a new invoice for the same reservation without any manual cleanup.

Downloading a PDF

Click Download PDF to download a professionally formatted PDF of the invoice.

Emailing an Invoice

Use the Email Invoice button (separate from Send Invoice) to re-send the invoice email at any time.


Deposits & Pre-Payment

You can invoice a customer before their stay begins to collect a deposit or take full payment in advance. On any upcoming (pending or confirmed) reservation, click the Bill Deposit / Pre-Pay action. You have two modes:

  • Deposit only — adds a single non-taxable deposit line, prefilled from your facility's configured deposit percentage but fully editable.
  • Full amount (pay in advance) — invoices the whole estimated stay up front.

There is one live pre-stay invoice per reservation. When the customer pays it, the amount is banked as account credit (a prepayment) and the reservation is marked deposit-collected. Pre-stay invoices also appear in the customer portal with a pay link, so customers can settle them online.

At checkout, that prepayment is automatically netted against the final bill — tax included — so a fully prepaid stay owes $0 at pickup, and a partial deposit simply reduces the balance due. Cancelling a reservation voids its unpaid pre-stay invoice.

Note: Pre-stay invoices are excluded from revenue reports — they're treated as cash collected, and revenue is recognized at checkout. This means you won't see prepaid stays double-counted in reports.

Configure the default deposit percentage in Settings → Policies.


Deposits & Cancellation Policies (Coming Soon)

Automatic deposit collection and cancellation/refund policies are coming soon. You'll be able to require an upfront deposit when reservations are booked and configure refund rules for cancellations.

In the meantime, deposits and refunds can be handled manually: add a line item to the invoice for a deposit you've collected, or use a credit to refund part of a cancelled reservation.


Online Payments (Stripe or Square)

To accept online payments from clients through the Customer Portal:

  1. Go to Payment Setup in the navigation.
  2. Choose your preferred processor — Stripe or Square.
  3. Click Connect and complete the onboarding flow for your chosen processor.
  4. Once connected, clients can pay invoices directly in the portal using a credit or debit card.

Collecting on a Square Register

For in-person card payments on Square hardware, the invoice page has a Send to Square Register button. This creates a Square Invoice that appears natively in your Square Invoices list on the Register and in the Square Dashboard. Staff open it there and charge the customer's card in person. Until it's paid, the invoice shows an "In Square — collect under Invoices" ready state in Goodstay.

Important: Facilities that connected Square before this feature was released must disconnect and reconnect Square to grant the new permissions. Otherwise, sending to the Register will fail.

Tips / Gratuity on the Square Register

The Square Register can prompt the customer for a tip using your configured Square tip presets. You must set up tip amounts in your Square settings for the prompt to appear. Tips are collected and deposited by Square directly and are not tracked in Goodstay — they won't appear in Goodstay payment history or reports. Online Square Checkout links do not prompt for tips.

In-Person vs Online Payment Emails

Owners receive a "payment received" email only for online payments. Payments you collect in person on the Square Register do not email the owner. In payment history, in-person payments are labeled "Collected in person via Square" and online ones "Paid online via Square".


Batch Checkout & Combined Invoices

When a pet owner has multiple reservations to check out (e.g., two dogs boarding at the same time), you can process them together in a single combined invoice.

  1. Open the pet owner's detail page.
  2. Click the Batch Checkout button (appears when the owner has 2+ uninvoiced reservations).
  3. Select reservations: Choose which reservations to include. Both checked-in and already-checked-out-but-uninvoiced reservations are available.
  4. Review & confirm: The confirmation page shows all selected reservations with pricing, automatic multi-pet discount (if configured), optional add-ons, account credit application, and custom manual line items.
  5. Click Check Out & Generate Invoice (or Generate Invoice if all are already checked out).

Auto-redirect: When checking out a single reservation, if the owner has additional uninvoiced reservations, Goodstay automatically redirects to the batch checkout flow.


You can upload a custom logo that appears on all your PDF invoices:

  1. Go to Facility Settings.
  2. Scroll to the Invoice Logo section.
  3. Upload your logo image.
  4. Click Save.

The logo appears in the top-left corner of every invoice PDF (max 160×60 pixels). When a logo is present, the facility name text is hidden to keep the header clean. To remove the logo, click Remove Logo.

Invoice Policies

In Settings → Policies there's an Invoice Policies card where you can enter policy text (up to 2000 characters). When set, it appears as a Policies section on invoice emails and on the invoice PDF, so your terms travel with every bill you send.