Getting Set Up
System Requirements Creating Your Account Setup Wizard Walkthrough Setting Up Stripe Connect Configuring Email (SMTP) Uploading Your Logo Setting Payment Terms
Account & Billing
Your Trial Period Plan Comparison How Billing Works Updating Payment Method Cancelling Subscription Trial Expiration Subscription Lapse
Troubleshooting
Not Authenticated Error Can't Log In PDF Won't Generate Email Not Sending Payment Link Not Working Client Can't View Quote Receipt Upload Failed Map Not Loading Mobile App Not Installing Page Loading Slowly Not Receiving RFP Notifications Part 107 Certificate Not Saving Can't Enable Online Payments Client Payment Not Working Payment Protection Dispute 2FA Not Working Account Locked Out
FAQ
Frequently Asked Questions
Contact & Support
Contact Us

PilotLedger Help Center

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:

Other requirements:

For the best experience on mobile, use Safari on iPhone or Chrome on Android. PilotLedger can be installed as a home screen app on both platforms.

Creating Your Account Step by Step

  1. Open your browser and go to pilotledger.us.
  2. Click the Create Account button on the landing page.
  3. Enter your full name in the Name field.
  4. Enter your email address. This will be your login username.
  5. Enter your company name.
  6. Choose a password. Use at least 8 characters with a mix of letters and numbers.
  7. Scroll through the Terms of Service summary and check the "I agree to the Terms of Service" checkbox. You cannot proceed without agreeing.
  8. Click Create Account. A verification email is sent to your email address.
  9. Check your inbox (and spam/junk folder) for an email from donotreply@pilotledger.us with subject "Verify Your Email — PilotLedger."
  10. Click the verification link in the email to activate your account. You will see a confirmation screen that your email has been verified.
  11. Log in with your email and password. The Setup Wizard will open automatically to guide you through your company profile.
You cannot access any PilotLedger features until your email is verified. The verification link expires in 24 hours.
If the verification link has expired, go to pilotledger.us, log in with your email and password, and you will see a verification screen with a Resend Verification Email button. Click it to receive a fresh link valid for 24 hours.
Your 14-day free trial begins immediately. No credit card is required to sign up. You'll have full access to all features during the trial period.

The Setup Wizard Walkthrough

The Setup Wizard appears the first time you log in. It walks you through seven steps to configure your account:

  1. Company Name — Enter your registered business name. This appears on all your quotes and invoices.
  2. Contact Information — Your name, title, phone number, and email. This is the "Prepared By" info on quotes.
  3. Business Address — Your mailing address. Appears on quotes, invoices, and your directory profile.
  4. Website — Your business website URL (optional). Included on your public profile if you have the Directory plan.
  5. About Your Business — A short description of your drone services. Keep it to 2-3 sentences.
  6. 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.
  7. Defaults — Set your default payment terms, quote validity period, and deposit percentage. These auto-fill on new quotes and invoices.
You can skip the wizard and come back to it later from Settings. But completing it now means your first quote will have all your info filled in automatically.

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.

  1. Go to Settings in the sidebar.
  2. Scroll to the Payment Processing section.
  3. Click the Connect with Stripe button.
  4. 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
  5. After completing Stripe's onboarding, you're redirected back to PilotLedger.
  6. Your Stripe Status will show as "Connected" with a green indicator.
Stripe Connect is free to set up. You only pay processing fees when a client makes a payment. Standard Stripe fees apply (2.9% + 30 cents for cards, 0.8% for ACH) plus PilotLedger's platform fee (0.5% for cards, 0.7% for ACH).
If the onboarding process is interrupted, click "Connect with Stripe" again to resume where you left off.

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.

  1. Go to Settings in the sidebar.
  2. Scroll to the Email Configuration section.
  3. Enter your SMTP settings:
    • SMTP Host — Your email provider's SMTP server (e.g., smtp.gmail.com)
    • SMTP Port — Usually 587 for TLS or 465 for 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")
  4. Click Send Test Email to verify your settings work.
  5. Click Save.
If you use Gmail, you'll need to create an App Password. Go to your Google Account > Security > 2-Step Verification > App Passwords. Generate a password for "Mail" and use that instead of your regular password.

Common SMTP settings:

Uploading Your Company Logo

  1. Go to Settings in the sidebar.
  2. Find the Company Logo section.
  3. Click Upload Logo or drag and drop your logo file.
  4. Your logo preview appears. Click Save to confirm.

Logo requirements:

Your logo appears on every PDF quote, invoice, and your public directory profile. A clean, high-resolution logo makes a professional impression.

Setting Default Payment Terms

Default payment terms are automatically applied to new invoices. You can override them on any individual invoice.

  1. Go to Settings.
  2. Find Quote & Invoice Defaults.
  3. Set your Default Payment Terms: Due on Receipt, Net 15, Net 30, Net 45, or Net 60.
  4. Set your Quote Validity period (how many days a quote remains valid). Default is 30 days.
  5. Set your Default Deposit % (e.g., 50%). This is the upfront portion shown on quotes.
  6. Click Save.
Net 30 is the most common payment term for commercial drone work. It gives clients 30 days from the invoice date to pay.

Understanding Your Trial Period (14 Days Free)

Every new account gets a 14-day free trial with full access to all features, including:

No credit card is required to start. You'll see a trial countdown in the app showing how many days remain.

Make the most of your trial by setting up Stripe Connect and sending a real quote to a client. This way you'll see the full workflow before committing.

Choosing a Plan — Pro, Pro + Directory, or Team

Feature Pro ($39.99/mo) Pro + Directory ($59.99/mo) Team ($129.99/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.us
5 Team Members Included
Additional Seats ($10/member/mo)
Job Sheet Management
Quarterly Pricing $104.99/3mo $159.99/3mo $349.99/3mo
Annual Pricing $399.99/yr (save ~17%) $599.99/yr (save ~17%) $1,299.99/yr (save ~17%)
All plans include a 14-day free trial. Quarterly billing saves approximately 11% and annual billing saves approximately 17% compared to monthly. You can switch billing frequency at any time from the Billing page.

How Billing Works (Monthly/Quarterly/Annual)

After your trial ends, you choose a plan and billing frequency:

Billing is processed securely through Stripe. You'll receive an email receipt for each payment.

Updating Your Payment Method

  1. Click Billing in the sidebar.
  2. Under Payment Method, click Update.
  3. You'll be redirected to a secure Stripe page to enter your new card details.
  4. After updating, you're redirected back to PilotLedger.

Cancelling Your Subscription

  1. Go to Billing in the sidebar.
  2. Click Cancel Subscription.
  3. Confirm the cancellation.

Your access continues until the end of your current billing period. After that:

Your data is never deleted when you cancel. You can reactivate at any time and pick up where you left off.

What Happens When Your Trial Expires

When your 14-day trial ends without subscribing:

Subscribe to any plan to immediately restore full access. No data is lost.

What Happens When Your Subscription Lapses

If a payment fails (expired card, insufficient funds), PilotLedger will:

  1. Retry the charge automatically after 3 days.
  2. Send you an email notification about the failed payment.
  3. Retry again after 5 days if still failing.
  4. 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.

We never delete your data due to a lapsed subscription. Fix your payment method and everything is restored instantly.

"Not Authenticated" Error

"Not Authenticated" or "Session Expired"

Cause: Your login session has expired. Sessions last approximately 24 hours for security.

Fix:

  1. Click the Log In button or refresh the page.
  2. Enter your email and password.
  3. If you were in the middle of creating a quote, check Saved Quotes — auto-save may have preserved your work.
If this happens frequently, make sure your browser isn't set to clear cookies on close. PilotLedger needs cookies to maintain your session.

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:

  1. Double-check that you're using the correct email address.
  2. Make sure Caps Lock is off.
  3. Click Forgot Password? on the login screen.
  4. Enter your email address and click Send Reset Link.
  5. Check your email (including spam folder) for the reset link.
  6. 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:

  1. Make sure your company information is filled in (Settings > Company Info).
  2. Check that the quote/invoice has at least one line item with a description and amount.
  3. Ensure the client information is complete (name at minimum).
  4. Try clicking Generate again. If it still fails, save the quote as a draft and reload the page, then try again.
If you see a server error message, contact support with the error details. Include the quote or invoice number if possible.

Email Not Sending — SMTP Configuration

Emails fail to send or show an error

Cause: SMTP settings are incorrect or not configured.

Fix:

  1. Go to Settings > Email Configuration.
  2. Verify your SMTP host, port, username, and password are correct.
  3. Click Send Test Email to check if emails go through.
  4. If using Gmail, make sure you're using an App Password, not your regular password.
  5. Check that port 587 (TLS) or 465 (SSL) is not blocked by your network.

Client clicks payment link but gets an error

Cause: Stripe Connect is not set up or the connection has expired.

Fix:

  1. Go to Settings > Payment Processing.
  2. Check that your Stripe status shows "Connected" (green).
  3. If it shows "Not Connected" or "Pending", click Connect with Stripe to complete or redo the onboarding.
  4. 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:

  1. Check the quote status in your Saved Quotes list. If it's "Expired", the link is disabled.
  2. Make sure the quote hasn't been deleted.
  3. Resend the quote email to give the client a fresh link.
  4. 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:

  1. Check the file size. Maximum is 10 MB per receipt.
  2. Supported formats: JPG, JPEG, PNG, PDF.
  3. If using a phone camera, try reducing the photo quality setting or use the built-in compression (PilotLedger auto-compresses images over 2 MB).
  4. 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:

  1. Clear your browser cache: Settings > Privacy > Clear browsing data.
  2. Disable any ad blockers or content blockers for findadronepilot.us.
  3. Make sure JavaScript is enabled in your browser.
  4. 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:

  1. iPhone: You must use Safari. Chrome and other browsers on iOS don't support PWA install.
  2. Android: Use Chrome or Edge. Open the site, tap the three-dot menu, look for "Install app" or "Add to Home screen".
  3. Make sure you're on https://pilotledger.us (not http).
  4. 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:

  1. Clear your browser cache — this forces fresh files to download.
  2. Check your internet connection — try loading other websites to compare.
  3. Close unnecessary browser tabs. Each tab uses memory.
  4. If using the mobile app, try closing and reopening it.
  5. 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:

  1. Make sure your directory listing is active: Settings > Public Profile > Listed on Directory = Yes.
  2. Make sure you have services selected on your profile — if no services are selected, you cannot be matched with any RFPs.
  3. Make sure you have states selected — you will only receive RFPs for states you serve.
  4. Check that your subscription includes directory access (Pro + Directory or Team plan).
  5. Check your email spam folder — RFP notifications come from donotreply@pilotledger.us.
  6. If everything looks correct and you are still not receiving RFPs, contact support@pilotledger.us.

Part 107 Certificate Not Saving

Certificate number or image won't save

Cause: Invalid format or file too large.

What to check:

  1. Verify you've entered a valid certificate number (format: typically 7 digits).
  2. Check that the uploaded image is under 5 MB (JPG, PNG, or PDF).
  3. Certificate number is required for directory listing — without it, your profile won't appear in search results.
  4. 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:

  1. The toggle requires an active Stripe Connect account.
  2. Go to Settings > Payment Processing to check your Stripe status.
  3. If status shows "Pending," you need to complete the Stripe onboarding process.
  4. 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:

  1. Verify your Stripe Connect status is "Active" in Settings.
  2. Ensure the invoice has a payment link enabled (check the original quote had online payment toggled on).
  3. Have the client try a different browser or clear their cache.
  4. If using Payment Protection, the client must create an account first — share the Client Portal link.
  5. 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:

  1. You have 7 calendar days to respond from the date you receive the dispute notification email.
  2. Log in to your dashboard and review the invoice and delivered files.
  3. Gather evidence that your deliverables match the accepted quote specifications (screenshots, file listings, reports).
  4. Respond through PilotLedger with your evidence and explanation.
  5. PilotLedger will review both sides and make a binding decision.
Always deliver exactly what the quote specifies and document your deliveries. Learn more: How Payment Protection works

Two-Factor Authentication Not Working

2FA code is being rejected

Cause: Time sync issue, wrong account in authenticator app, or expired code.

Fix:

  1. 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.
  2. Make sure you're entering the code for "PilotLedger" in your authenticator app, not a code for another service.
  3. Codes refresh every 30 seconds. If a code is about to expire, wait for the next one.
  4. Try using a backup code instead. Enter one of the 10 backup codes you saved during 2FA setup.
  5. If nothing works, contact support@pilotledger.us 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:

  1. Wait 15 minutes and try again. The lockout expires automatically.
  2. Use Forgot Password on the login screen to reset your password. The reset link bypasses the lockout — you can log in immediately after resetting.
  3. If you believe someone else is trying to access your account, reset your password immediately and enable 2FA in Settings > Security.
The lockout is per email address. Your team members will not be affected by your lockout.

Frequently Asked Questions

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 support@pilotledger.us.

Currently, clients are added manually through the app. CSV import is on our roadmap. If you have a large client list to import, contact support@pilotledger.us 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 support@pilotledger.us 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 support@pilotledger.us. 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.us also covers all 50 states.

Check your spam or junk folder. The email comes from donotreply@pilotledger.us 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 support@pilotledger.us.

Verification links are valid for 24 hours. If yours has expired, go to pilotledger.us, 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.99/month, $349.99/quarter, or $1,299.99/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:

When contacting support, please include:

Need the day-to-day guide?

Check out the How-To Guide for step-by-step instructions on every feature.

View How-To Guide