Accounting & Payroll Specialist — US Trucking Company (Full-Time, Long-Term)

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

TYPE OF WORK

Full Time

WAGE / SALARY

$200/week

HOURS PER WEEK

40

DATE UPDATED

Jun 3, 2026

JOB OVERVIEW

Hours: 40 hrs/week, Monday–Friday, 8:00 AM – 5:00 PM Eastern Time (US)
Salary: $200/week to start, with raises based on performance
Job Type: Full-time, long-term

About Us
ECG Freight is a US-based trucking company. We move freight across the country and we run a tight, numbers-driven operation. We are looking for a sharp, dependable accounting VA to take over from a teammate who is moving on. This is a long-term seat, not a short-term gig.

What You'll Own
- Daily and weekly accounting entries (revenue, fuel, maintenance, settlements)
- Driver payroll — calculating pay, deductions, advances, and reimbursements accurately and on time
- Reconciling bank, fuel card, and vendor statements
- Maintaining clean, organized records in QuickBooks and Google Sheets
- Pulling and calculating weekly numbers for the CEO scorecard (revenue per truck, cost per mile, margin)
- Light data analysis — spotting trends, flagging variances, and explaining what the numbers mean (not just reporting them)

Required Skills
- Strong accounting fundamentals (debits/credits, AR/AP, reconciliations)
- Payroll experience — must be confident calculating gross-to-net and handling deductions
- Excellent with numbers — fast, accurate, and never sloppy
- Advanced Google Sheets / Excel (formulas, pivot tables, basic data analysis)
- QuickBooks Online experience (preferred, not required)
- Fluent written English
- Reliable internet, quiet workspace, and a working backup plan for power/internet outages

Nice to Have
- Prior experience with US trucking, logistics, or freight company accounting
- Familiarity with TMS systems, fuel card portals (TCS, EFS), or factoring

Who You Are
- Detail-obsessed — a $1.00 mistake bothers you until you find it
- Independent — you don't need to be told twice
- Honest — you flag problems instead of hiding them
- Curious — you want to understand WHY a number is what it is, not just record it

How to Apply
- Send a short message telling me (a) your accounting background, (b) any payroll experience, (c) whether you've worked with US companies before
- Attach a resume
- In the first line of your message, write the word "FREIGHT" — this is how I know you actually read the post
- Include any sample reports, dashboards, or spreadsheets you've built (optional but a big plus)

Looking to hire fast. Serious applicants only.

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0862
Total Execution Time  0.0876
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,511,896 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Accounting-Payroll-Specialist-US-Trucking-Company-Full-Time-Long-Term-1638574
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0806 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1638574
 LIMIT 1 
0.0008   SELECT *
FROM `employers`
WHERE `employer_id` = 898895
 LIMIT 1 
0.0698   SELECT COUNT(DISTINCT t.id) as cnt
FROM 
`t_thread` `t`
INNER JOIN `t_message` `mON `t`.`id` = `m`.`thread_id`
INNER JOIN `t_message_employer` `eON `m`.`id` = `e`.`message_id`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1638574
AND `misc`.`idIS NULL 
0.0006   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-22',ej.date_added) duration_daysDATEDIFF('2026-06-22',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-06-22',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1638574' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1638574 
0.0020   UPDATE employer_jobs SET hit_counts '***May-04-2026=359***May-05-2026=83***May-06-2026=51***May-07-2026=24***May-08-2026=20***May-09-2026=11***May-10-2026=13***May-11-2026=14***May-12-2026=2***May-13-2026=6***May-16-2026=1***May-20-2026=1***May-22-2026=2***Jun-01-2026=1***Jun-02-2026=1***Jun-03-2026=404***Jun-04-2026=244***Jun-05-2026=58***Jun-06-2026=30***Jun-07-2026=19***Jun-08-2026=20***Jun-09-2026=32***Jun-10-2026=15***Jun-11-2026=21***Jun-12-2026=23***Jun-13-2026=11***Jun-14-2026=13***Jun-15-2026=39***Jun-16-2026=16***Jun-17-2026=19***Jun-18-2026=18***Jun-19-2026=10***Jun-20-2026=4***Jun-22-2026=1' WHERE job_id'1638574'  
0.0007   UPDATE employer_jobs SET monthly_hits '***May-2026=586***Jun-2026=999' WHERE job_id'1638574'  
0.0016   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1638574' 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` = 1638574 
0.0028   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '898895'
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)