Appearance
Invoices, card payments, and manual payments
Professional invoices are included with ShootCal at no extra cost. Each job uses one USD invoice for the full amount, with an optional deposit inside that total. Clients can pay securely by card through your connected Stripe account or use the manual methods you configure.
ShootCal adds no payment or platform fee to Stripe invoice payments; Stripe’s standard processing fees still apply. ShootCal records business expenses and reports income less recorded expenses, but it is not full bookkeeping: it does not reconcile bank or card accounts, store receipt images, track mileage or depreciation, run payroll, or prepare, file, and remit tax returns.
Start an invoice from a client
Open a client in Clients & Booking, then use the Paperwork card’s Send an invoice action. ShootCal opens a new invoice with the client’s name and email filled in and today as the initial due date. Because this action starts from a client rather than a calendar booking, it deliberately does not attach a calendar event; you can review and complete the invoice before saving or issuing it.
From a client-work calendar event, use Send invoice in the event detail. That route carries the exact client, event, calendar, and local event day into the draft so confirmed payments can remain tied to the intended booking. Personal events show no invoice or contract actions. After creating or updating an event, the saved event stays selected so its paperwork actions are immediately available.
The native iPhone, iPad, Mac, and Android client views can hand the same client to the signed-in web editor through a short-lived, single-use browser handoff. The prefill is carried in the URL fragment and removed before parsing, so the client name and email never enter nginx or PHP access logs. A handoff survives the one-time mandatory password setup only for the same ShootCal account and expires from browser session storage after 30 minutes.
First-time invoice setup
Open Payments › Invoices in the web app. The first time you use invoices, review and accept the invoice terms, then open Invoice settings.
- Business details & numbering: Add the business address and contact details invoices should show, and check the next invoice number. The business name comes from your booking page, and the studio logo comes from Settings, the same logo your contracts use.
- Stripe card payments: Connect your own Stripe account and finish its onboarding if you want clients to pay by card.
- Manual payment methods: Offer Zelle, Cash App, Venmo, check, cash, and/or one custom method. Choose an example, replace every highlighted placeholder with your own details, and save. Unfinished examples cannot be used.
- Sales-tax defaults: Save the label and percentage you usually use and choose whether new invoices should start with tax on. You can change the saved choice on each draft.
Sales tax is optional and applies to the whole invoice in the current version; mixed taxable and non-taxable line items are not supported. You are responsible for deciding what is taxable, choosing the correct rate, and registering, reporting, and remitting tax.
Create one invoice for the whole job
Choose New invoice, then:
- Select or enter the client. An email address is optional; without one, you can issue the invoice and copy its protected link yourself.
- Set the issue date and final-balance due date.
- Add products or services, or choose one of the same saved packages used for contracts.
- Optionally request a deposit inside the full invoice total. It is not a second charge and is not taxed twice.
- Optionally link the exact Google Calendar booking if confirmed payments should update that booking’s deposit flag.
- Choose whether the invoice is taxable and which card or manual payment choices to offer.
- Save the draft, or save and issue it.
A draft can be edited or deleted. Once issued, its invoice number, client details, line items, tax, and payment instructions are frozen so the record cannot change behind the client’s link. If it is wrong, void it and create a replacement.
Issue, email, and share
When an invoice has a client email, ShootCal can send a short notice from your connected Gmail with the protected invoice link. The client does not need a ShootCal account, and the page can be printed or saved as a PDF. Share the link only with the intended client.
Stripe card payments and partial payments
When card payments are enabled, the protected invoice page offers the amount currently due, such as the deposit or remaining balance, and the client can also choose Pay another amount to enter any partial amount up to the remaining balance. Stripe hosts the checkout, collects the card details, and settles the funds to the photographer’s connected Stripe account on its normal schedule. A confirmed Stripe payment updates the ShootCal invoice automatically, and partial card payments count toward the deposit and balance just like any other payment.
ShootCal adds no payment or platform fee. Stripe’s standard processing, refund, dispute, and other account fees remain governed by your Stripe agreement.
Getting told a card payment arrived
A card payment is the one payment that happens while you are nowhere near the app, so ShootCal emails you as soon as one is confirmed. The notice names the client and invoice, separates the amount applied to the invoice from any extra charge added at checkout (a card fee, for example), and says whether the invoice is now paid in full or what balance remains. Your client is emailed a receipt at the same time, sent from your own connected Gmail so it matches the invoice they already received.
Both emails go out within about a minute of Stripe confirming the payment, and neither one can affect whether the payment itself was recorded. Manual payments send no such notice, because you are the one entering them.
The Stripe account ShootCal creates for you is a full Stripe account you can sign in to, so you can also turn on Stripe's own payment emails under Settings → Communication preferences in the Stripe Dashboard if you want a second copy from Stripe directly.
Recording manual payments
For Zelle, Cash App, Venmo, check, cash, or a custom method, the invoice shows the client your payment instructions and nothing else: clients never enter manual payments themselves. When the money arrives, record the payment on the invoice with the received date and method. Only payments you record change the invoice balance, cash report, or linked booking.
Payments, refunds, and corrections
- Card refunds: Use the Stripe refund action on the matching card payment. Partial and full refunds are supported.
- Manual corrections: Reverse part or all of a confirmed manual payment. The original payment remains visible and a separate negative entry records the reversal.
- Void: Resolve payment and refund states before voiding an issued invoice. A void tells the client it is no longer payable while preserving its history.
- Permanent deletion: Drafts can be deleted. A void invoice can be permanently deleted only when it has no payment, refund, client-report, Stripe, booking, or uncertain-delivery history. ShootCal asks you to type DELETE before the clean record is removed.
Linking a deposit to one booking
An invoice may point to one exact Google Calendar booking. When net confirmed card and manual payments reach the invoice’s deposit amount, ShootCal marks that booking’s existing deposit flag received. The calendar stores only the paid/not-paid flag, never the invoice amount, and ShootCal does not guess by name or date.
Checkout fields and Google Drive invoice backups
Checkout can collect extra details from the client with custom fields: short text, a number, or a dropdown choice, plus an optional calculated amount. Set your usual fields once in Invoice Settings and every new invoice starts with them; the fields a client sees are frozen when the invoice is issued, so changing your defaults later never alters an invoice that is already out.
If you want an off-site copy of your paperwork, ShootCal can also back up your invoices to your own Google Drive. Turn this on in Invoice Settings; backups are optional and use the Drive connection on your account.
Reports and CSV exports
Open Payments › Reports and choose a year. Income and expenses are reported on a cash basis: gross receipts, refunds or reversals, net base receipts, sales tax collected and refunded, outstanding invoice balances, expenses split between the ones you entered and card processing fees, and breakdowns by month and payment method.
- Cash-received CSV: payment and refund entries by effective date for accounting or tax work.
- Invoice-list CSV: invoice status, totals, payments, refunds, tax, and outstanding balances.
- Sales-tax CSV: the filing worksheet on both bases, with a line for every payment and every invoice.
- Expenses CSV: every recorded expense, with card processing fees flagged in their own column.
Choosing a sales-tax filing basis
The Sales tax filing worksheet has a Filing basis selector: Invoice date or Cash received. It starts on Cash received, matching the rest of Reports, and remembers your last choice. Both totals stay on screen either way and both are in the sales-tax CSV, so the choice only decides which one leads. When they disagree, the difference is sales tax charged on invoices nobody has paid yet.
Neither date is always the right one. For a service the tax often follows the day the work is done, so a wedding invoiced now for next year may belong in next year's return. Which basis and which period apply to you is a question for your state's revenue department or your accountant.
The reports use only the ShootCal invoice ledger. A calendar deposit flag never creates a cash entry.
When to use Wave or QuickBooks
There is no Wave or QuickBooks connection or sync. If you need expense tracking, reconciliation, profit-and-loss statements, payroll, multi-currency accounting, or accountant-ready books, use Wave, QuickBooks, or another full accounting system. Download ShootCal’s CSV files when you or your accountant need these invoice records in a larger workflow.
Frequently asked questions
Does ShootCal accept card payments?
Yes. Connect your own Stripe account, choose card payments on the invoice, and the client can pay through Stripe’s hosted checkout.
What fees does ShootCal add?
None. Professional invoices are included with ShootCal at no extra cost, and ShootCal adds no payment or platform fee. Stripe’s standard processing fees still apply.
Will I know when a client pays by card?
Yes. ShootCal emails you within about a minute of Stripe confirming the payment, and emails your client a receipt at the same time. You do not need to configure anything in Stripe for this to work.
Can a client report a manual payment?
No. Clients pay online by card only. For every other method they simply follow your payment instructions, and you record the payment once the money arrives.
Can I refund part of a payment?
Yes. Stripe card payments and confirmed manual payments both support partial or full refunds or reversals.
Can I edit or delete an invoice after sending it?
An issued invoice is frozen. Void and replace an incorrect one. Permanent deletion is limited to a clean void invoice with no financial, Stripe, client-report, booking, or uncertain-delivery history.
Does ShootCal handle my bookkeeping or taxes?
Partly. ShootCal records its own invoice payments and refunds on a cash basis, records business expenses in 15 categories, and reports income less recorded expenses. That figure is a bookkeeping aid, not taxable profit: asset purchases and other expenses may be treated differently for tax. Sales tax is reported on whichever basis you select in the filing worksheet.
It is not a full accounting system. It does not reconcile bank or card accounts, store receipt images, track mileage or depreciation, run payroll or inventory, keep a general ledger, produce a formal profit-and-loss or balance sheet, or file and remit tax. Use Wave or QuickBooks for those. See When to use accounting software.