October 17, 2023

Streamlining Payroll Management: Navigating Complexities for Full-Time and Contract Workers

In our previous article, "Overcoming Payroll Integration Challenges" we delved into the intricate process of integrating a payroll third-party service from Check into our staffing application, GravyWork. We discussed innovative solutions to address unique challenges faced during onboarding and payroll processing for full-time workers. In this follow-up, we explore the next phase of our journey, tackling payroll intricacies for both full-time and contract workers while maintaining a seamless user experience.

Paying Your Workforce: A Complex Endeavor

Now that your workforce is fully onboarded and actively engaged in their roles, the logical next step is to compensate them for their contributions. Sounds straightforward, right? Not quite. Payroll management comes with its own set of complexities, especially when dealing with different types of workers and the various aspects of payroll processing.

Two Kinds of Workers: Full-Time and Contract

In the United States, two primary categories of workers exist: full-time and contract workers. Initially, GravyWork exclusively allowed full-time workers on its platform, and the Check integration was tailored to accommodate this group's payroll requirements.

Payroll Management and Admin Portal

Payroll management was a multifaceted aspect of our application, facilitated through a dedicated admin portal in conjunction with the mobile application. Admin tasks spanned a spectrum, including job creation, timesheet approval for workers, and reviewing/approving payroll.

The Weekly Payment Model

One of the first considerations was the frequency of payments. Clients often preferred weekly payouts to their workers. To align with this, we implemented a system that processed only approved timesheets for the week. Any pending approvals were addressed through an "off-cycle" payroll, manually triggered by admins through the web application. This approach ensured seamless weekly payouts, even accounting for timesheets pending approval.

The Orchestration: Lambda Functions and Payroll Cycle

Orchestrating the payroll process required a systematic approach. A Lambda function was enlisted to execute the payroll process, scheduled to run at designated times. This strategy accommodated diverse time zones and ensured precision in payroll processing.

The Payroll Cycle:

1. A worker is assigned a job.

2. The worker checks in via the mobile app, creating an open timesheet.

3. After the shift, the worker checks out, closing the timesheet and marking it for admin approval.

4. An admin reviews and approves/rejects the timesheet.

5. Approved timesheets are processed in the payroll cycle: calculations are made and details are sent to Check.

6. Check responds with a draft payroll for admin review and approval.

7. Upon approval, the payroll is sent via API to Check for final processing.

Webhooks: Real-time Status Handling

Webhooks played a pivotal role in managing payroll status changes. Whenever there was a status update, Check sent notifications to our endpoint. Our system processed these events, maintaining real-time awareness of payroll changes.

Introducing Contract Workers: A New Challenge

As GravyWork expanded to include contract workers, a new challenge emerged. The onboarding process and payroll integration for contract workers diverged significantly from that of full-time workers. For instance, contract workers didn't require tax withholdings for onboarding, and their payroll data structure in Check differed substantially.

Unified Approach: Agnostic Interfaces

Rather than creating separate structures for contract workers, we took a unified approach. Agnostic interfaces were designed for data representation. This approach allowed us to minimize frontend changes, as both contract and full-time workers received the same payroll structure in the admin portal. Backend handling ensured the seamless transformation of data, adapting to the unique structures of each worker type.

What’s Next

In the ever-evolving landscape of workforce management, there's a concept that's rapidly gaining popularity: Same Day Payment. This innovative approach to payroll processing is transforming the way staffing applications operate, offering numerous advantages for both workers and employers.

For staffing applications like GravyWork, offering Same Day Payment is a game-changer. It provides users with the financial freedom and security they crave. No longer do workers need to wait for the traditional pay period to access their hard-earned wages.

Life is unpredictable, and unexpected expenses can arise at any moment. Whether it's a sudden car repair, a medical bill, or any other unforeseen cost, Same Day Payment ensures that workers have the financial independence to tackle these challenges head-on.

From an employer's perspective, Same Day Payment puts you in a favorable position in the competitive labor market. When seeking to attract and retain top talent, it's not just about salaries or benefits; it's about the overall experience you offer.

By providing Same Day Payment, you demonstrate your commitment to making your employees' lives easier and more convenient. This level of dedication can significantly boost employee loyalty and job satisfaction, which in turn enhances your ability to attract and retain the best talent. It's not just about convenience; it's about providing financial stability and peace of mind. When workers know they can access their earnings when they need them most, their loyalty to the platform and the employers it connects with soars.


The journey of payroll management continues, marked by complexities inherent to diverse worker types. Through creative problem-solving, technical finesse, and a dedication to maintaining a user-friendly experience, GravyWork navigated these challenges. As we strive to keep payrolls accurate, consistent, and timely, our experience exemplifies the adaptability and innovation required to manage payroll in a modern workforce ecosystem.

Blogpost written by: Juan Sebastián Funicello

The path to create a digital product starts with your call
Get in touch with us and take the leap
Contact us
Check out all our projects