Philippine labor law provides strong protections for regular employees. Termination requires just cause and due process. For BPO operations where client needs fluctuate, this creates operational challenges.
This document describes a legal structure—Individual Service Agreements per person—that aligns employment arrangements with the project-based nature of BPO work while remaining compliant with Philippine labor regulations.
The Operational Challenge
Consider this scenario: Client A has 10 Filipino staff provided through ShoreAgents. Due to business conditions, Client A needs to reduce to 7 staff.
Under traditional employment structures: - The 3 staff are regular employees of ShoreAgents - "Client reduced headcount" is not a valid termination ground under Philippine law - Options are limited: continue paying without billing (benching), negotiate separation packages, or risk labor complaints
This creates unpredictable costs and operational constraints.
The Legal Framework
Philippine labor law recognizes project-based employment as a legitimate employment category. Key characteristics:
- 1.Employment is tied to a specific project with defined scope
- 2.Duration is determinable at engagement
- 3.The project is separate from the employer's regular business
- 4.The employee is informed of the project nature from the start
Relevant jurisprudence:
Alcatel Philippines v. Relos (2017): > "Project employees are those whose employment has been fixed for a specific project or undertaking, the completion or termination of which has been determined at the time of engagement."
GMA Network v. Pabriga (2012): > "The principal test is whether the project employee was assigned to carry out a specific project or undertaking, the duration and scope of which were specified at the time they were engaged."
The Structure
One Service Agreement = One Person = One Project
Each staff member's assignment is structured as an independent project:
Service Agreement (SA-2026-001) - Client: ABC Company - Worker: Maria Santos - Role: Accountant - Project Scope: Financial operations support for ABC Company - Duration: Co-terminus with Service Agreement
The corresponding employment contract explicitly states:
Employment Contract - Employment Type: Project-Based - Project: Service Agreement SA-2026-001 - Duration: Co-terminus with Service Agreement - Termination Condition: Employment ends upon termination of SA-2026-001
Why This Works
- 1.Each assignment is genuinely a distinct project — Maria's work for Client A is separate from Juan's work for Client B
- 2.Project scope is defined — "Financial operations support" is specific
- 3.Duration is determinable — Co-terminus with the service agreement
- 4.Employee is informed — The project nature is explicit in the employment contract
When Client A terminates their service agreement, the associated project ends. The employment naturally concludes—this is project completion, not termination.
Document Structure
Three interlocking documents create the complete framework:
1. Service Agreement (Client-ShoreAgents)
`
SERVICE AGREEMENT SA-2026-001
Section 1: Services ShoreAgents shall provide one (1) Accountant to perform financial operations support exclusively for the Client.
Section 2: Term This Agreement begins on the Effective Date and continues until terminated per Section 7.
Section 7: Termination
Either party may terminate with thirty (30) days written notice.
Upon termination:
- All services cease on the effective date
- Final invoice issued within 15 days
- Security deposit applied to outstanding balance
`
2. Employment Contract (ShoreAgents-Worker)
`
EMPLOYMENT CONTRACT - PROJECT BASED
Pursuant to Article 295 of the Labor Code of the Philippines, this employment is project-based.
PROJECT DETAILS - Project Name: Client Accountant Services (SA-2026-001) - Duration: Co-terminus with Service Agreement SA-2026-001 - Start Date: February 1, 2026 - End Date: Upon termination of SA-2026-001
SEPARATION
This employment automatically ends upon project completion
(termination of SA-2026-001). Separation pay shall consist of:
- Final compensation for services rendered
- Pro-rated 13th month pay
- Unused leave conversion (if applicable)
`
3. Assignment Acknowledgment
`
ASSIGNMENT ACKNOWLEDGMENT
I, Maria Santos, acknowledge and confirm:
- 1.My employment with ShoreAgents Inc. is project-based
- 2.The project is defined as Service Agreement SA-2026-001
- 3.When SA-2026-001 terminates, my employment terminates
- 4.This is not regular employment with indefinite tenure
- 5.I was informed of these conditions before accepting employment
Signed: _______________ Date: _______________
Witness: _______________ Date: _______________
`
Database Model
The structure requires tracking relationships between service agreements and employment:
`sql
-- Service Agreements
CREATE TABLE service_agreements (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
sa_number TEXT UNIQUE NOT NULL,
client_id UUID REFERENCES clients(id),
staff_id UUID REFERENCES staff(id),
role TEXT NOT NULL,
monthly_rate DECIMAL(10,2),
start_date DATE NOT NULL,
end_date DATE,
status TEXT DEFAULT 'active',
termination_date DATE,
termination_reason TEXT,
created_at TIMESTAMPTZ DEFAULT NOW()
);
-- Employment contracts linked to SAs CREATE TABLE employment_contracts ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), staff_id UUID REFERENCES staff(id), sa_id UUID REFERENCES service_agreements(id), employment_type TEXT DEFAULT 'project', start_date DATE NOT NULL, end_date DATE, status TEXT DEFAULT 'active', created_at TIMESTAMPTZ DEFAULT NOW() );
-- Termination records
CREATE TABLE sa_terminations (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
sa_id UUID REFERENCES service_agreements(id),
requested_by TEXT,
request_date DATE,
effective_date DATE,
notice_period_days INTEGER DEFAULT 30,
final_settlement JSONB,
processed_at TIMESTAMPTZ,
created_at TIMESTAMPTZ DEFAULT NOW()
);
`
Termination Process
When a client terminates service agreements:
Step 1: Receive Request
Client provides written notice specifying which SAs to terminate.
Step 2: Process Each SA
`typescript
async function processSATermination(
saId: string,
requestDate: Date
): Promise`
Step 3: Execute Separation
On the effective date: - Employment contract status changes to 'ended' - Final pay is processed - System access is revoked - Exit procedures are initiated
Step 4: Financial Settlement
`typescript
function calculateSettlement(
sa: ServiceAgreement,
terminationDate: Date
): Settlement {
const { monthlyRate, securityDeposit } = sa;
// Pro-rate current month
const daysInMonth = getDaysInMonth(terminationDate);
const daysWorked = terminationDate.getDate();
const proRatedAmount = (monthlyRate / daysInMonth) * daysWorked;
// Calculate notice period compensation if applicable
const noticeShortfall = calculateNoticeShortfall(sa);
const noticeCompensation = (monthlyRate / 30) * noticeShortfall;
const totalOwed = proRatedAmount + noticeCompensation;
const depositApplied = Math.min(securityDeposit, totalOwed);
return {
proRatedAmount,
noticeCompensation,
totalOwed,
depositApplied,
balanceDue: totalOwed - depositApplied,
depositRefund: securityDeposit - depositApplied
};
}
`
Payment Terms
The financial structure reinforces clean separations:
Invoice Schedule: - Generated: 1st or 21st for the following month - Due: 7th of service month - Grace period: Until 15th - Default: SA terminates if unpaid by 15th
Security Deposit: - Recommended: 2 months - Purpose: Covers final month and any notice period shortfall - Application: Applied to final invoice upon termination
Risk Mitigation
Documentation Requirements
The legal defensibility depends on proper documentation:
- 1.Employment contracts must state project nature explicitly
- 2.Assignment acknowledgments must be signed before work begins
- 3.SA numbers must be referenced consistently across documents
- 4.Termination notices must follow contractual procedures
Red Flags to Avoid
Continuous re-hiring: Terminating an SA and immediately creating a new one for the same worker and client undermines the project-based nature.
Identical scope: If every SA has the same generic scope, courts may find the arrangement is disguised regular employment.
Missing acknowledgments: Without signed acknowledgments, workers can claim they weren't informed of the project nature.
FAQ
Is this arrangement legal in the Philippines?
Yes. Project-based employment is explicitly recognized in the Labor Code. The critical factors are genuine project nature, defined scope, determinable duration, and proper disclosure to the worker.
What prevents abuse of this structure?
Several factors: the requirement for genuine project scope, the documentation burden, and the scrutiny applied if disputes reach DOLE or labor courts. The structure works when the project nature is real; it fails when it's a disguise for regular employment.
How does this affect worker benefits?
Project employees receive the same statutory benefits as regular employees: SSS, PhilHealth, Pag-IBIG, 13th month pay. The difference is tenure expectation, not benefit entitlement.
What if a worker has multiple consecutive SAs?
Gaps between SAs help establish independence. ShoreAgents maintains a minimum 2-week gap between SAs for the same worker. Additionally, each new SA should have genuinely different scope.
Can workers challenge this arrangement?
Yes, through DOLE or labor courts. The defense relies on documentation: signed acknowledgments, distinct SA numbers, clear scope definitions. Proper documentation has successfully defended similar arrangements in Philippine jurisprudence.
Legal structures should reflect operational reality. When BPO work is genuinely project-based, employment arrangements should acknowledge that nature while protecting both business flexibility and worker rights.
