PilotLedger Help Center for Part 107 Drone Pilots
Setup guides, troubleshooting, and answers to common questions.
System Requirements
PilotLedger runs entirely in your web browser. There's nothing to download or install.
Supported browsers:
- Google Chrome (recommended) — version 90 or later
- Safari — version 15 or later
- Microsoft Edge — version 90 or later
- Firefox — version 90 or later
Other requirements:
- A stable internet connection
- JavaScript enabled (it is by default in all modern browsers)
- Cookies enabled for session management
Creating Your Account Step by Step
- Open your browser and go to pilotledger.com.
- Click the Create Account button on the landing page.
- Enter your full name in the Name field.
- Enter your email address. This will be your login username.
- Enter your company name.
- Choose a password. Use at least 8 characters with a mix of letters and numbers.
- Scroll through the Terms of Service summary and check the "I agree to the Terms of Service" checkbox. You cannot proceed without agreeing.
- Click Create Account. A verification email is sent to your email address.
- Check your inbox (and spam/junk folder) for an email from [email protected] with subject "Verify Your Email — PilotLedger."
- Click the verification link in the email to activate your account. You will see a confirmation screen that your email has been verified.
- Log in with your email and password. The Setup Wizard will open automatically to guide you through your company profile.
The Setup Wizard Walkthrough
The Setup Wizard appears the first time you log in. It walks you through seven steps to configure your account:
- Company Name — Enter your registered business name. This appears on all your quotes and invoices.
- Contact Information — Your name, title, phone number, and email. This is the "Prepared By" info on quotes.
- Business Address — Your mailing address. Appears on quotes, invoices, and your directory profile.
- Website — Your business website URL (optional). Included on your public profile if you have the Directory plan.
- About Your Business — A short description of your drone services. Keep it to 2-3 sentences.
- Services — Select the drone services you offer from an expanded categorized list. Services are organized into 8 categories (Mapping & Survey, Inspection, Thermal & Sensors, Photography & Video, 3D & Modeling, Agriculture, Public Safety, Environmental). Click a category to expand it and check the services you perform. These selections determine which client RFPs you get matched with.
- Defaults — Set your default payment terms, quote validity period, and deposit percentage. These auto-fill on new quotes and invoices.
Setting Up Stripe Connect for Payments
Stripe Connect lets your clients pay invoices online with credit card or ACH bank transfer. Payments go directly to your bank account.
- Go to Settings in the sidebar.
- Scroll to the Payment Processing section.
- Click the Connect with Stripe button.
- You'll be redirected to Stripe's onboarding page. Follow the prompts to:
- Verify your identity (name, date of birth, SSN last 4)
- Enter your business details
- Add your bank account for payouts
- After completing Stripe's onboarding, you're redirected back to PilotLedger.
- Your Stripe Status will show as "Connected" with a green indicator.
Configuring Email (SMTP Setup)
To send quotes and invoices directly from PilotLedger, you need to configure your email settings. This uses SMTP (Simple Mail Transfer Protocol) to send emails from your own email address.
- Go to Settings in the sidebar.
- Scroll to the Email Configuration section.
- Enter your SMTP settings:
- SMTP Host — Your email provider's SMTP server (e.g.,
smtp.gmail.com) - SMTP Port — Usually
587for TLS or465for SSL - Username — Usually your full email address
- Password — Your email password or app-specific password
- From Email — The email address that appears as the sender
- From Name — The name that appears as the sender (e.g., "Midwest Aerial Precision")
- SMTP Host — Your email provider's SMTP server (e.g.,
- Click Send Test Email to verify your settings work.
- Click Save.
Common SMTP settings:
- Gmail: Host:
smtp.gmail.com, Port:587 - Outlook/Office 365: Host:
smtp.office365.com, Port:587 - Yahoo: Host:
smtp.mail.yahoo.com, Port:587 - GoDaddy: Host:
smtpout.secureserver.net, Port:465
Uploading Your Company Logo
- Go to Settings in the sidebar.
- Find the Company Logo section.
- Click Upload Logo or drag and drop your logo file.
- Your logo preview appears. Click Save to confirm.
Logo requirements:
- Formats: PNG or JPG
- Recommended size: 300 x 100 pixels
- Maximum file size: 2 MB
- Transparent PNG backgrounds work best on white quote/invoice PDFs
Setting Default Payment Terms
Default payment terms are automatically applied to new invoices. You can override them on any individual invoice.
- Go to Settings.
- Find Quote & Invoice Defaults.
- Set your Default Payment Terms: Due on Receipt, Net 15, Net 30, Net 45, or Net 60.
- Set your Quote Validity period (how many days a quote remains valid). Default is 30 days.
- Set your Default Deposit % (e.g., 50%). This is the upfront portion shown on quotes.
- Click Save.
Understanding Your Trial Period (14 Days Free)
Every new account gets a 14-day free trial with full access to all features, including:
- Unlimited quotes and invoices
- Payment processing via Stripe Connect
- Expense tracking with receipt upload
- All reports and analytics
- Directory listing (if you set up a profile)
No credit card is required to start. You'll see a trial countdown in the app showing how many days remain.
Choosing a Plan — Pro, Pro + Directory, or Team
| Feature | Pro ($39/mo) | Pro + Directory ($59/mo) | Team ($129/mo) |
|---|---|---|---|
| Unlimited Quotes | ✓ | ✓ | ✓ |
| Unlimited Invoices | ✓ | ✓ | ✓ |
| Client Management | ✓ | ✓ | ✓ |
| Payment Processing (Stripe) | ✓ | ✓ | ✓ |
| Expense Tracking + Receipts | ✓ | ✓ | ✓ |
| PDF Generation | ✓ | ✓ | ✓ |
| Reports & Analytics | ✓ | ✓ | ✓ |
| Email Quotes & Invoices | ✓ | ✓ | ✓ |
| Verified Directory Listing | — | ✓ | ✓ |
| Public Profile Page | — | ✓ | ✓ |
| Inbound Lead Notifications | — | ✓ | ✓ |
| Map Placement on findadronepilot.com | — | ✓ | ✓ |
| 5 Team Members Included | — | — | ✓ |
| Additional Seats ($10/mo · $109/yr CRM-only; $20/mo · $209/yr with SkyView) | — | — | ✓ |
| Job Sheet Management | — | — | ✓ |
| Quarterly Pricing | $104/3mo | $159/3mo | $349/3mo |
| Annual Pricing | $399/yr (save ~15%) | $599/yr (save ~15%) | $1,299/yr (save ~16%) |
SkyView Mapping Plans
SkyView is a plan jump (desktop processing, hosted delivery, and storage) — not a flat add-on. No quarterly SkyView price.
| Plan | Monthly | Annual | Storage / licenses |
|---|---|---|---|
| Pro + SkyView | $99/mo | $999/yr | 100 GB · 1 license |
| Pro + Directory + SkyView | $120/mo | $1,199/yr | 100 GB · 1 license |
| Team + SkyView | $229/mo | $2,299/yr | 300 GB · 5 SkyView licenses |
| Extra Team seat without SkyView | $10/mo | $109/yr | — |
| Extra Team seat with SkyView | $20/mo | $209/yr | — |
| Storage overage | $10 per 10 GB | Monthly only | — |
| 21+ active users | Enterprise — call for pricing. No self-serve number. | ||
How Billing Works (Monthly/Quarterly/Annual)
After your trial ends, you choose a plan and billing frequency:
- Monthly billing — Charged on the same date each month. Maximum flexibility. Cancel anytime.
- Quarterly billing — Charged every 3 months. A middle ground between monthly flexibility and annual savings. Saves approximately 11% compared to monthly.
- Annual billing — Charged once per year. Best value with approximately 17% savings. Refunds are prorated if you cancel mid-term.
Billing is processed securely through Stripe. You'll receive an email receipt for each payment.
Updating Your Payment Method
- Click Billing in the sidebar.
- Under Payment Method, click Update.
- You'll be redirected to a secure Stripe page to enter your new card details.
- After updating, you're redirected back to PilotLedger.
Cancelling Your Subscription
- Go to Billing in the sidebar.
- Click Cancel Subscription.
- Confirm the cancellation.
Your access continues until the end of your current billing period. After that:
- You can still log in and view your data
- You cannot create new quotes, invoices, or expenses
- Existing payment links remain active for 30 days
- Your directory listing is removed (if applicable)
What Happens When Your Trial Expires
When your 14-day free trial ends without subscribing, you don't lose access overnight. There's a graceful, multi-stage transition:
- Days 15–17 — Grace period (3 days). You still have full access. A yellow banner appears at the top of the app reminding you to subscribe. You can keep creating quotes, invoices, and jobs as normal.
- Days 18–21 — Read-only mode (4 days). You can view, search, and export everything, but new creates and edits are blocked. The banner becomes more prominent.
- Day 22 onward — Lockout. A full-screen "Subscribe to continue" prompt replaces the app. Your data stays exactly as you left it.
Subscribing at any point during grace, read-only, or lockout instantly restores full access. Nothing is deleted, archived, or moved.
You'll receive emails at each transition: a 3-day-out heads-up, a "trial ended — grace started" notice, a "read-only mode active" notice, and a final "account locked" notice. Some accounts may receive an extended 7+7 grace window at our discretion (a separate "we are giving you 7 more days" email goes out in that case).
I'm in "Grace Period" — What Does That Mean?
Yellow banner says I'm in grace period
Cause: Your 14-day free trial has ended and you're now in the 3-day full-access grace period (or 7-day grace period if you received the extended grace email).
What you can still do: Everything. Create quotes, send invoices, log jobs, accept payments, all of it. The banner is just a reminder.
What's coming: If you don't subscribe by the end of grace, the account moves to read-only mode for 4 days (or 7 days under extended grace), then to lockout.
To resolve: Click Subscribe Now on the banner, or go to Settings → Subscription and choose a plan.
I Can't Save Anything — Account is Read-Only
Save buttons return "subscribe to continue" or similar
Cause: Your trial is in read-only mode — days 18–21 of the trial expiration cycle (or days 22–28 under extended grace).
What you can still do: View all records, search with Cmd+K, export PDFs and reports, delete records.
What's blocked: Creating new records, editing existing ones, sending invoices, accepting new payments.
Fix: Subscribe to any plan from Settings → Subscription or click Subscribe Now on the read-only banner. Full access restores immediately.
Trial Expired — Subscribe to Restore Access
Full-screen "Subscribe to continue" prompt blocks the app
Cause: Your trial has fully expired (day 22+ of the standard cycle, or day 29+ under extended grace) and is in lockout state.
Your data is safe. Nothing has been deleted, archived, or modified. The lockout screen is just blocking the app surface until you subscribe.
Fix: Click Subscribe Now on the lockout screen. Choose Pro ($39/mo), Pro+Directory ($59/mo), or Team ($129/mo). Annual options are also available. Full access restores immediately.
If you believe this is an error: Email [email protected] with your account email and we'll look into it.
Cmd+K Search Not Finding Records
Global search returns no results, or misses records I know exist
Cause: A few possibilities — query too short, search modal not fully loaded, or a typo in the search term.
Fix — in order:
- Make sure your query is at least 2 characters. Single-letter searches return nothing on purpose.
- Try a partial match instead of an exact phrase. Search reads inside line items and JSON content, but exact-quote matching isn't supported.
- If the modal won't open with Cmd+K, try the search pill in the top-right of the desktop nav, or the magnifying-glass icon in the mobile drawer.
- Refresh the page once. Search relies on a fresh page session in some edge cases.
If results are still missing after these steps, email [email protected] with the exact query and what you expected to find.
I Can't Find a Feature in the New Menu
"Where did Calendar/Documents/Mileage go?"
Cause: The top navigation has been reorganized into five intent-based buckets: Sales, Work, Fleet, Money, and Setup. A few items appear in two buckets on purpose.
Quick map:
- Calendar: Work menu — or use the inline shortcut in the top nav.
- Clients: Sales menu — or use the inline shortcut in the top nav. Also under Setup.
- Documents: Work menu — also under Setup.
- Flight Log: Work menu — also under Fleet.
- Mileage: Work menu — also under Money.
- Reports: Money menu.
- Aircraft & Maintenance: Fleet menu.
Or just hit Cmd+K (Ctrl+K on Windows) and type what you're looking for — global search will jump you straight to it.
What Happens When Your Subscription Lapses
If a payment fails (expired card, insufficient funds), PilotLedger will:
- Retry the charge automatically after 3 days.
- Send you an email notification about the failed payment.
- Retry again after 5 days if still failing.
- After 7 days of failed payments, your account enters a grace period with limited access.
Update your payment method in Billing to resolve the issue immediately.
"Not Authenticated" Error
"Not Authenticated" or "Session Expired"
Cause: Your login session has expired. Sessions last approximately 24 hours for security.
Fix:
- Click the Log In button or refresh the page.
- Enter your email and password.
- If you were in the middle of creating a quote, check Saved Quotes — auto-save may have preserved your work.
Can't Log In — Reset Your Password
Unable to log in with your credentials
Cause: Incorrect email or password, or account may not exist.
Fix:
- Double-check that you're using the correct email address.
- Make sure Caps Lock is off.
- Click Forgot Password? on the login screen.
- Enter your email address and click Send Reset Link.
- Check your email (including spam folder) for the reset link.
- Click the link and set a new password.
Quote/Invoice PDF Won't Generate
PDF generation fails or produces a blank document
Cause: Missing required fields on the quote or invoice.
Fix:
- Make sure your company information is filled in (Settings > Company Info).
- Check that the quote/invoice has at least one line item with a description and amount.
- Ensure the client information is complete (name at minimum).
- Try clicking Generate again. If it still fails, save the quote as a draft and reload the page, then try again.
Email Not Sending — SMTP Configuration
Emails fail to send or show an error
Cause: SMTP settings are incorrect or not configured.
Fix:
- Go to Settings > Email Configuration.
- Verify your SMTP host, port, username, and password are correct.
- Click Send Test Email to check if emails go through.
- If using Gmail, make sure you're using an App Password, not your regular password.
- Check that port
587(TLS) or465(SSL) is not blocked by your network.
Payment Link Not Working
Payment links use the format /pay/{token}. Here are the most common failure modes and what to check for each.
Customer reports “Cannot GET /pay/...”
Cause: Historical bug in the pay-page route — fixed in Hotfix 2026-04-16-02.
Fix: If you’re on the current release this should not happen anymore. If a customer still sees it, have them hard-refresh the page (the service worker may be serving a stale copy), or resend the invoice to generate a fresh link.
Customer sees a JSON parse error on the pay page
Cause: Historical bug where the pay page requested JSON without the right Accept header — fixed in Hotfix 2026-04-16-03.
Fix: Current release fixes this. If a customer still reports it, ask them to hard-refresh or clear their browser cache.
Pay page loads but shows “Invoice not found or payment link disabled”
Cause: The invoice’s payment_link_enabled flag is off, or no Stripe method is enabled.
Fix: Open the invoice editor and confirm that either Credit/Debit Card or ACH Bank Transfer is checked. At least one Stripe method must be enabled for the payment link to be live. Save and resend if needed.
Pay page loads but shows no way to pay
Cause: Only offline methods (check, wire, call-in card) are enabled on this invoice, so the page is information-only by design.
Fix: This is intended behavior — when only offline methods are on, the pay page shows instructions instead of a payment button. If you want the customer to pay online, open the invoice editor and enable Credit/Debit Card (or ACH), then resend.
Client clicks payment link but gets a Stripe error
Cause: Stripe Connect is not set up or the connection has expired.
Fix:
- Go to Settings > Payment Processing.
- Check that your Stripe status shows “Connected” (green).
- If it shows “Not Connected” or “Pending”, click Connect with Stripe to complete or redo the onboarding.
- After connecting, resend the invoice to generate a fresh payment link.
Client Can't View Quote
Client says the quote link doesn't work or shows an error
Cause: The quote may have expired, been deleted, or the link is incorrect.
Fix:
- Check the quote status in your Saved Quotes list. If it's "Expired", the link is disabled.
- Make sure the quote hasn't been deleted.
- Resend the quote email to give the client a fresh link.
- If the quote has expired, you can duplicate it and send the new version.
Receipt Upload Failed
Receipt image or PDF won't upload
Cause: File is too large or in an unsupported format.
Fix:
- Check the file size. Maximum is 10 MB per receipt.
- Supported formats: JPG, JPEG, PNG, PDF.
- If using a phone camera, try reducing the photo quality setting or use the built-in compression (PilotLedger auto-compresses images over 2 MB).
- Try a different browser if the upload button isn't responding.
Map Not Loading on Directory
The pilot directory map shows a blank area or won't load
Cause: Browser cache issue or ad blocker interference.
Fix:
- Clear your browser cache: Settings > Privacy > Clear browsing data.
- Disable any ad blockers or content blockers for findadronepilot.com.
- Make sure JavaScript is enabled in your browser.
- Try a different browser (Chrome works best).
Mobile App Not Installing
"Add to Home Screen" option doesn't appear
Cause: PWA installation requires specific browser and security conditions.
Fix:
- iPhone: You must use Safari. Chrome and other browsers on iOS don't support PWA install.
- Android: Use Chrome or Edge. Open the site, tap the three-dot menu, look for "Install app" or "Add to Home screen".
- Make sure you're on https://pilotledger.com (not http).
- If the option still doesn't appear, try logging in first, then look for the install prompt.
Page Loading Slowly
Pages take a long time to load or feel sluggish
Cause: Browser cache, slow connection, or too many open tabs.
Fix:
- Clear your browser cache — this forces fresh files to download.
- Check your internet connection — try loading other websites to compare.
- Close unnecessary browser tabs. Each tab uses memory.
- If using the mobile app, try closing and reopening it.
- If the problem persists, contact support with details about your browser and connection type.
Not Receiving RFP Notifications
You are not seeing any RFPs in your Opportunities section
Cause: Your profile may not be configured for RFP matching, or no RFPs match your profile yet.
Fix:
- Make sure your directory listing is active: Settings > Public Profile > Listed on Directory = Yes.
- Make sure you have services selected on your profile — if no services are selected, you cannot be matched with any RFPs.
- Make sure you have states selected — you will only receive RFPs for states you serve.
- Check that your subscription includes directory access (Pro + Directory or Team plan).
- Check your email spam folder — RFP notifications come from [email protected].
- If everything looks correct and you are still not receiving RFPs, contact [email protected].
Part 107 Certificate Not Saving
Certificate number or image won't save
Cause: Invalid format or file too large.
What to check:
- Verify you've entered a valid certificate number (format: typically 7 digits).
- Check that the uploaded image is under 5 MB (JPG, PNG, or PDF).
- Certificate number is required for directory listing — without it, your profile won't appear in search results.
- If the image upload fails, try a smaller file size or different format.
Can't Enable Online Payments on Quote
The "Include Online Payment Option" toggle won't turn on
Cause: Stripe Connect is not connected or pending.
What to check:
- The toggle requires an active Stripe Connect account.
- Go to Settings > Payment Processing to check your Stripe status.
- If status shows "Pending," you need to complete the Stripe onboarding process.
- If you just completed onboarding, wait a few minutes and refresh the page.
Client Reports Payment Not Working
Client can't pay an invoice online
Cause: Stripe not connected, payment not enabled on quote, or browser issue.
What to check:
- Verify your Stripe Connect status is "Active" in Settings.
- Ensure the invoice has a payment link enabled (check the original quote had online payment toggled on).
- Have the client try a different browser or clear their cache.
- If using Payment Protection, the client must create an account first — share the Client Portal link.
- Check if the invoice status is already "Paid" — it may have been marked paid manually.
Received a Payment Protection Dispute
A client has filed a dispute on a Payment Protection transaction
Cause: The client believes deliverables do not match the accepted quote.
What to do:
- You have 7 calendar days to respond from the date you receive the dispute notification email.
- Log in to your dashboard and review the invoice and delivered files.
- Gather evidence that your deliverables match the accepted quote specifications (screenshots, file listings, reports).
- Respond through PilotLedger with your evidence and explanation.
- PilotLedger will review both sides and make a binding decision.
Two-Factor Authentication Not Working
2FA code is being rejected
Cause: Time sync issue, wrong account in authenticator app, or expired code.
Fix:
- Check that your phone's clock is correct. TOTP codes are time-based — if your clock is off by more than 30 seconds, codes will be rejected. Go to your phone's Date & Time settings and enable automatic time.
- Make sure you're entering the code for "PilotLedger" in your authenticator app, not a code for another service.
- Codes refresh every 30 seconds. If a code is about to expire, wait for the next one.
- Try using a backup code instead. Enter one of the 10 backup codes you saved during 2FA setup.
- If nothing works, contact [email protected] with proof of identity to have 2FA removed from your account.
Account Temporarily Locked (Too Many Attempts)
You are locked out after multiple failed login attempts
Cause: PilotLedger locks accounts after 5 failed login attempts to protect against unauthorized access.
Fix:
- Wait 15 minutes and try again. The lockout expires automatically.
- Use Forgot Password on the login screen to reset your password. The reset link bypasses the lockout — you can log in immediately after resetting.
- If you believe someone else is trying to access your account, reset your password immediately and enable 2FA in Settings > Security.
I'm Traveling and Can't Log In
Login is blocked from your current location
Cause: PilotLedger is currently available to customers in the United States and Canada only. If you are signing in from outside those countries, login is blocked for security. The message reads: "Login from your current location is not permitted. If you are a current customer traveling, please contact [email protected] to enable temporary access."
Fix:
- If you are inside the US or Canada and still see this, you may be on a VPN that reports a foreign location. Turn the VPN off and try again.
- If you are genuinely traveling abroad, email [email protected] and ask for a temporary travel window. Support can grant short-term access to your account.
- Once your trip is over, no action is needed. Access from the US or Canada always works.
"Login from This Network Is Not Permitted"
Login or sign-up is blocked because of your network
Cause: You are connecting through a VPN, proxy, data-center, or anonymizing network. PilotLedger blocks these for account security. The message reads: "Login from this network is not permitted. Please try again from a residential or business internet connection." Sign-up shows a similar network message.
Fix:
- Turn off your VPN or proxy and try again. This is the most common fix.
- Connect from a normal home or office internet connection rather than a hosting or data-center network.
- On a corporate network, check with your IT team whether traffic is routed through a cloud proxy, and try a different connection if so.
Sign-Up Says My Address Can't Be Verified
"We could not verify that mailing address as deliverable"
Cause: During sign-up, PilotLedger checks that your mailing address is a real, deliverable US address. A typo, a suite or unit line without the street, a brand-new construction address, or a non-deliverable PO box can fail this check.
Fix:
- Enter your street address exactly as the post office knows it (house number and street first, with the unit or suite as a separate part).
- Double-check the city, state, and ZIP code match the street.
- Avoid using only a suite or PO box line as the main street address.
- If your address is valid and still rejected, email [email protected] and we will help you get set up.
A Deliverable File Won't Upload
An upload fails, stalls, or shows "Upload failed"
Cause: Almost always a network interruption, the browser tab being closed mid-upload, or a very large file on a slow connection.
Fix:
- Keep the job tab open and the progress bar visible until it reaches 100 percent. Closing the tab cancels the file in progress.
- For very large files (over 100 MB), use a stable wired or strong Wi-Fi connection. Large files upload in parts, so they tolerate brief hiccups better than one big transfer.
- If a file failed, just upload it again. Files that already finished stay put; you only need to redo the failed ones.
- If every upload fails instantly, check that your internet is working and that an ad blocker or firewall is not blocking the upload.
My Client Can't Open or Download the Delivery
The client says the link doesn't work or shows "Delivery Not Found"
Cause: The client is using an old or mistyped link, the email went to the wrong address, or the job was removed.
Fix:
- Open the job, confirm the deliverable files are still listed, and click Send to Client again to send a fresh email and link.
- Double-check the client's email address before resending.
- Ask the client to click the most recent Download Your Files button, not an older email.
- The delivery page works in any modern browser. If files will not download, have the client try a different browser or turn off a strict pop-up or download blocker.
Frequently Asked Questions
The invoice has the “This is a deposit invoice” flag enabled. Open the invoice editor and look at the yellow banner at the top — uncheck the box to turn this invoice back into a full-amount invoice. Save and the pay page heading will return to “Invoice Payment” with the full balance due.
See the Deposit & Partial Payment guide for the full walkthrough.
Each invoice’s payment methods are controlled by the checkboxes on that specific invoice — not by a global setting. Open the invoice editor and review the checkboxes: Credit/Debit Card, ACH, Wire, Check, Call-in Card. Whatever is checked is what the customer sees; everything else is hidden.
Settings > Payments & Billing controls the defaults for brand-new invoices, but saving any invoice updates those defaults to whatever you last used. So if you recently changed the methods on one invoice, the next new invoice will inherit that set.
A Project is an umbrella that ties a single engagement’s quotes, job sheets, invoices, deliverables, and clients together under one number (P-YYDDDNNN). When a quote is accepted, a project is created automatically. You can also create one manually from the Projects page.
See the full Projects guide in the How-To for sub-tabs, multi-client setup, attach/detach, and status workflow.
Two common causes:
- Status filter is hiding it. The Invoices list has status filter checkboxes at the top (Draft, Sent, PDF, Paid, Partial, Void). If Draft is unchecked, new draft invoices will be invisible. Check all the boxes to see everything.
- Stale service worker on mobile. If you’re on a phone and a recently-saved invoice isn’t showing up, the service worker may be serving a cached copy of the list. Pull to refresh, or close and reopen the PilotLedger tab. This is a known issue tracked in the backlog.
Very secure. PilotLedger uses industry-standard security measures:
- SSL/TLS encryption — All data is encrypted in transit (HTTPS).
- Password hashing — Passwords are hashed with bcrypt (12 rounds). We never store plain-text passwords.
- Stripe security — All payment processing is handled by Stripe, a PCI Level 1 certified provider. PilotLedger never sees or stores your clients' card numbers.
- Database security — Your data is isolated per tenant. Other users cannot access your records.
- Parameterized queries — All database queries use parameterized inputs to prevent SQL injection.
Yes. PilotLedger supports team access with roles:
- Owner — Full access to everything including billing and settings.
- Admin — Full access except billing management.
- Member — Can create and manage quotes, invoices, and expenses, but cannot change settings.
All team members share the same company data (clients, quotes, invoices). The account is billed under one subscription.
PilotLedger accepts the following receipt formats:
- Images: JPG, JPEG, PNG
- Documents: PDF
Maximum file size is 10 MB. Images over 2 MB are automatically compressed. The OCR auto-fill feature works best with clear, well-lit photos of receipts.
The PDF template automatically includes your company logo, colors, and branding. Currently, the layout is standardized across all accounts to ensure professional, consistent output.
You can customize:
- Your company logo and contact information
- Default payment terms and deposit percentage
- Terms and conditions text
- Line item descriptions and pricing
- Notes to the client
Custom template layouts are on our roadmap for a future release.
If you need to refund a client payment:
- Refunds for Stripe payments are processed through your Stripe Dashboard at dashboard.stripe.com.
- Log in to Stripe, find the payment, and click "Refund".
- You can issue a full or partial refund.
- PilotLedger's platform fee is not refunded, but Stripe refunds their processing fee on full refunds.
For manual payments (cash, check), you handle the refund directly with the client and update the invoice status in PilotLedger.
Your data is safe. When you cancel:
- Your account remains accessible in read-only mode.
- You can log in and view all existing quotes, invoices, clients, and expenses.
- You cannot create new records or send emails.
- Your data is retained for at least 12 months after cancellation.
- Resubscribe at any time to restore full access instantly.
If you want your data permanently deleted, contact [email protected].
Currently, clients are added manually through the app. CSV import is on our roadmap. If you have a large client list to import, contact [email protected] and we can help with a bulk import.
A public API is not currently available. PilotLedger is designed to be used through the web interface and mobile app. API access is being considered for a future release. If you have a specific integration need, contact support to discuss your requirements.
Go to Settings > Security and click Enable 2FA. Scan the QR code with an authenticator app like Google Authenticator or Authy, then enter the 6-digit code to confirm. Save your backup codes in a safe place — you'll need them if you lose access to your authenticator app.
Use one of the 10 backup codes you saved during 2FA setup. Each backup code works once. Enter it instead of the 6-digit code on the login screen. If you've used all backup codes, contact [email protected] with proof of identity to have 2FA removed from your account.
PilotLedger locks your account for 15 minutes after 5 failed login attempts to prevent unauthorized access. Wait 15 minutes and try again, or use Forgot Password to reset your credentials. The reset link bypasses the lockout.
After creating your account, you need to verify your email address by clicking the link in the verification email we sent you. Check your spam/junk folder if you don't see it. You can resend the email from the banner or from Settings.
You have 72 hours to verify. After that, you'll be restricted to a verification-only page until you complete verification. This protects your account and ensures you can receive important notifications about your quotes, invoices, and payments.
Email us at [email protected]. We respond within 24 hours on business days (Monday–Friday). Include as much detail as possible: your account email, what you were doing when the issue occurred, and any error messages you saw.
PilotLedger is available nationwide. You can use PilotLedger for your drone business in all 50 states, Washington D.C., and U.S. territories. The Find a Drone Pilot directory at findadronepilot.com also covers all 50 states.
Check your spam or junk folder. The email comes from [email protected] with the subject "Verify Your Email — PilotLedger." If you still do not see it, log in to PilotLedger and click Resend Verification Email. The new link is valid for 24 hours. If problems persist, contact [email protected].
Verification links are valid for 24 hours. If yours has expired, go to pilotledger.com, log in with your email and password, and you will see the verification screen with a Resend Verification Email button. Click it to receive a fresh link.
Select every service you are qualified and equipped to perform. Your skill selections determine which client RFPs you are matched with. If you do not select a service, you will not receive notifications for projects requesting that service. You can update your selections at any time in your Public Profile settings.
An RFP is a project posting submitted by a client through the PilotLedger directory. The client describes their project, selects the states involved, and chooses the services they need. PilotLedger automatically notifies pilots whose profiles match the requested states and services. There is no commission or fee on RFP matches — it is included with your directory subscription.
PilotLedger matches you with RFPs based on two criteria: (1) you serve at least one of the states listed in the RFP, and (2) you offer at least one of the services requested. Both must be true. Make sure your Public Profile has all applicable states and services selected to maximize your matches.
Go to the Opportunities section in your dashboard, click on the RFP, review the project details, and click Respond. Write a brief message introducing yourself and your qualifications. Your contact information is included so the client can reach you directly. All further communication is between you and the client.
If a client has a large, multi-state, or complex project and wants PilotLedger to serve as project manager, they can submit an Enterprise inquiry through the directory. These go directly to the PilotLedger operations team, not to individual pilots. If your services are needed, the PilotLedger team may reach out to you as a subcontractor.
Funds are committed before you fly. The client can't back out of payment once funds are held. If you deliver what the quote specifies, funds are released to you — either when the client confirms or automatically after 14 days. Learn more →
Nothing for pilots. The 2% fee is charged to the client on top of your quoted price. You receive 100% of your quoted amount. View full terms →
Yes. All quoting, invoicing, receipt tracking, and client management features work without Stripe. You just won't be able to accept online payments. You can still accept checks, wire transfers, cash, etc. and record them manually.
The Team plan is $129/month, $349/quarter, or $1,299/year. It includes 5 team member seats with role-based permissions (Owner, Admin, Member), the directory listing, and job sheet management. Additional seats are $10/member/month.
No. Clients can browse the directory, view your profile, and contact you without any account. Client accounts are only needed for Payment Protection transactions. Learn more →
Your data is retained for 90 days. Quotes and invoices remain accessible to clients via their existing links. You can reactivate at any time to regain full access.
Contact & Support
We're here to help. Reach out anytime:
- Email: [email protected]
- Response time: Within 24 hours on business days (Monday–Friday)
- Feature requests: Email us with your idea. We review every suggestion and prioritize based on demand.
When contacting support, please include:
- Your account email address
- A description of the issue or question
- Any error messages you see (screenshot if possible)
- Your browser name and version
- Whether you're on desktop or mobile
Need the day-to-day guide?
Check out the How-To Guide for step-by-step instructions on every feature.
View How-To Guide