Full-Time Bookkeeper

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Full Time

SALARY

800

HOURS PER WEEK

40

DATE UPDATED

Aug 5, 2026

JOB OVERVIEW

Senior Bookkeeper
Company: Speak Your Way To Cash® (and affiliated entities)
Reports to: [Director of Operations]
Type: Contractor
Compensation: $800
Start date: ASAP


Have you managed books for a company doing $10 Million USD or more? Have you reconciled hundreds or thousands of transactions a month? Are you savvy with financial reports? Do you know how manage a large chart of accounts?

ABOUT US

Speak Your Way To Cash® is a three-time Inc. 5000 sales training company. We teach credentialed experts, licensed professionals, and service-based business owners how to land corporate contracts and sell from the stage. The team is 17 people and fully remote. The business runs on a launch model with one to two launches per month, plus live events, masterminds, and international retreats, so transaction volume is uneven by design — quiet weeks followed by heavy ones.

There are several related entities under the same ownership, including a law firm and a holding company. Books are kept separate and clean across all of them.
The Role
We need a senior bookkeeper who owns the numbers day to day. That means reconciling transactions daily, closing out and reporting weekly, and running a full month-end close that leaves nothing for our CPA to untangle at tax time.

This is a maintenance and accuracy role, not a strategy role. The person who does well here is the one who notices that a deposit doesn't match, chases it down the same day, and tells us before we ask.
What You'll Do
Daily

Reconcile all bank, credit card, and payment processor transactions daily
Code expenses correctly to the right entity, class, and category
Flag anything that looks off — duplicate charges, missing receipts, unusual vendor activity, deposits that don't tie to a known launch or invoice

Weekly

Follow-up on any unpaid invoices or failed payments across stripe, paypal, and fanbasis
Deliver a written financial report covering cash position, revenue by offer, outstanding AP and AR, and any open items you need answered
Reconcile revenue across payment processors and our sales platform so what the platform reports matches what actually hit the bank
Track contractor payments and outstanding invoices

Monthly

Run a full close: reconciliations complete, accruals recorded, journal entries posted, books locked
Produce P&L, balance sheet, and cash flow statements with a short written summary of what changed and why
Reconcile event and travel spend against budget

Ongoing

Maintain clean, current books across multiple entities without commingling
Manage 1099 tracking and year-end contractor reporting
Prepare and hand off documentation for our CPA at tax time
Keep receipt and documentation systems organized enough that any transaction can be traced in under five minutes
What You Need
Five or more years of bookkeeping experience, including at least two years at the senior level
Experience working inside a firm — an accounting or CPA firm, or a law firm. You should know what it looks like when books are held to a professional standard and reviewed by someone else.
Advanced QuickBooks skills. You should be comfortable with bank rules, class and location tracking, journal entries, undeposited funds, and cleaning up someone else's mess in QuickBooks without starting over.
Experience managing books for more than one entity at a time
Experience reconciling high-volume transactions from payment processors, not just a single business checking account
Full ownership of month-end close in a prior role, start to finish
Strong written communication. Much of this job is telling us what you found in writing, clearly, without being asked twice.
Ability to work independently on a remote team and hit recurring deadlines without reminders
Nice to Have
Law firm trust accounting or IOLTA experience
QuickBooks ProAdvisor certification
Experience with online course, coaching, or event-based businesses where revenue comes in launches
Familiarity with Stripe, GoHighLevel, Dubsado, or Gusto
Experience supporting a business through fast revenue growth
Who This Is Not For
Anyone who needs daily direction to know what to work on
Anyone whose experience is limited to one small business with low transaction volume
Anyone who has never closed a month or handed off books to a CPA
Anyone who would rather do tax strategy than reconcile accounts

HOW TO APPLY


Email
---------- and copy ---------- with the subject line SENIOR BOOKKEEPER.

Include:

A loom video detailing your bookkeeping experiece
Your resume
A short note (under 300 words) describing the most disorganized set of books you have taken over and what you did to clean them up
The number of entities you currently manage books for, and the approximate monthly transaction volume across them
Your QuickBooks certifications, if any


Finalists will complete a paid reconciliation exercise using sample data before any offer is made.

Applications without the subject line will not be reviewed.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0009
Controller Execution Time ( Jobseekers / Job )  0.0256
Total Execution Time  0.0271
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,512,680 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Full-Time-Bookkeeper-1703524
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0202 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1703524
 LIMIT 1 
0.0013   SELECT *
FROM `employers`
WHERE `employer_id` = 575146
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1703524
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-15',ej.date_added) duration_daysDATEDIFF('2026-08-15',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-08-15',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1703524' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1703524 
0.0010   UPDATE employer_jobs SET hit_counts '***Aug-05-2026=647***Aug-06-2026=565***Aug-07-2026=169***Aug-08-2026=88***Aug-09-2026=2***Aug-13-2026=1***Aug-15-2026=1' WHERE job_id'1703524'  
0.0005   UPDATE employer_jobs SET monthly_hits '***Aug-2026=1473' WHERE job_id'1703524'  
0.0011   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1703524' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1703524 
0.0133   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '575146'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)