Bookkeeper – AppFolio & QuickBooks Operator

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

TYPE OF WORK

Full Time

SALARY

$4 USD/Hour

HOURS PER WEEK

40

DATE UPDATED

Jul 10, 2026

JOB OVERVIEW

We are not looking for a general bookkeeper.

We are hiring someone who has already been the primary bookkeeper for a property management company managing multiple owners/clients (not just one property owner that self manages)—and can step in and run this function without training.

**Non-negotiables (do not apply if these don’t apply to you):**

* Direct, hands-on experience using AppFolio in a property management company
* Proven experience as the primary bookkeeper for a company managing properties for multiple clients (not just personal portfolios)
* Strong working knowledge of QuickBooks, including setting up and back-loading properties and financials from prior years
* Formal education in bookkeeping or accounting (degree required)

**What you bring to the table:**

* Deep understanding of property management fees, owner distributions, trust accounting, and multi-owner structures
* Ability to accurately transfer and reconcile AppFolio reporting into QuickBooks
* Confidence owning the entire bookkeeping function with minimal oversight

**What success looks like:**

* Clean, accurate books across multiple properties and owners
* Trust accounts handled correctly and confidently
* Seamless systems between AppFolio and QuickBooks
* You take ownership and elevate the role—we don’t manage you

**Important:**
This is not a training role. We are looking for an expert who can hit the ground running and show us how this function should operate.

HOW TO APPLY:
1. A 1-minute voice sample (Vocaroo is an option to submit this)
2. Your WPM score with the 3 Minute Test: ---------- /student/tests
3. Your experience using AppFolio in a property management company
4. How you’ve handled syncing/reconciling AppFolio with QuickBooks
5. Your experience setting up or back-loading properties and financials

*Applications missing any of the above will not be reviewed.
*Generic applications will not be considered.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0260
Total Execution Time  0.0274
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,489,712 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Bookkeeper-AppFolio-QuickBooks-Operator-1638815
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0188 seconds)  (Hide)
0.0009   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0009   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1638815
 LIMIT 1 
0.0009   SELECT *
FROM `employers`
WHERE `employer_id` = 921541
 LIMIT 1 
0.0054   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1638815
AND `misc`.`idIS NULL 
0.0011   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-07-14',ej.date_added) duration_daysDATEDIFF('2026-07-14',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-07-14',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1638815' 
0.0013   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1638815 
0.0012   UPDATE employer_jobs SET hit_counts '***May-04-2026=243***May-05-2026=98***May-06-2026=31***May-07-2026=12***May-08-2026=12***May-10-2026=3***May-11-2026=5***May-12-2026=13***May-13-2026=132***May-14-2026=96***May-15-2026=22***May-16-2026=6***May-17-2026=11***May-18-2026=14***May-19-2026=10***May-20-2026=11***May-21-2026=1***May-22-2026=383***May-23-2026=108***May-24-2026=41***May-25-2026=49***May-26-2026=37***May-27-2026=21***May-28-2026=12***May-29-2026=17***May-30-2026=5***May-31-2026=1***Jun-01-2026=17***Jun-02-2026=425***Jun-03-2026=91***Jun-04-2026=36***Jun-05-2026=23***Jun-06-2026=7***Jun-07-2026=7***Jun-08-2026=17***Jun-09-2026=164***Jun-10-2026=63***Jun-11-2026=17***Jun-12-2026=13***Jun-13-2026=7***Jun-14-2026=8***Jun-15-2026=10***Jun-16-2026=13***Jun-17-2026=6***Jun-18-2026=5***Jun-19-2026=4***Jun-20-2026=2***Jun-21-2026=4***Jun-22-2026=146***Jun-23-2026=105***Jun-24-2026=69***Jun-25-2026=17***Jun-26-2026=13***Jun-27-2026=6***Jun-28-2026=4***Jun-29-2026=17***Jun-30-2026=6***Jul-01-2026=7***Jul-02-2026=3***Jul-03-2026=1***Jul-04-2026=7***Jul-05-2026=4***Jul-06-2026=8***Jul-07-2026=6***Jul-08-2026=4***Jul-09-2026=5***Jul-10-2026=340***Jul-11-2026=102***Jul-14-2026=1' WHERE job_id'1638815'  
0.0011   UPDATE employer_jobs SET monthly_hits '***May-2026=1394***Jun-2026=1321***Jul-2026=488' WHERE job_id'1638815'  
0.0017   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1638815' AND status LIKE 'sent%' ORDER BY id DESC  
0.0009   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1638815 
0.0018   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '921541'
AND `date_added` >= '2022-06-08' 
0.0009   select from teasers 
0.0007   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)