Expenses at Oyster
Overview
Oyster reimburses team members for eligible business expenses through the monthly payroll cycle. This guide explains how expenses work end-to-end — from submission through to reimbursement — and what partners and customers building on the Oyster platform should understand about the expense lifecycle.
What is an expense?
An expense is a business-related cost incurred by a team member on behalf of their employer that Oyster processes for reimbursement. Common categories include:
- Travel
- Equipment
- Home Office
- Learning & Development
- Office Supplies
- Food
- Car
- Benefits
- Rent
- Other
Each expense must include a receipt and is subject to approval before it is eligible for reimbursement.
How expenses are submitted
Team members submit expenses individually through the Oyster platform or via the Expenses API. Each submission requires:
- Name – a short label for the expense
- Description – details about the business purpose
- Date incurred – the date the cost was actually incurred
- Category – the type of expense (see the full list above)
- Receipt – an uploaded receipt confirming the amount paid
- Amount – the receipt amount and currency
Once submitted, the expense moves to a pending state and awaits manager or administrator approval.
Approval workflow
Expenses are reviewed and approved (or declined) by a manager or administrator with the appropriate permissions.
- Approved expenses are queued for reimbursement in the next eligible payroll cycle.
- Declined expenses are not reimbursed and the team member is notified.
On-cycle reimbursement
Oyster processes expenses through its standard monthly payroll cycle. This is fully supported on-platform with no manual intervention required. This flow applies to EOR and GP team members.
Monthly cut-off
Each month has a payroll cut-off date. An approved expense must be submitted and approved before the cut-off date to be included in that month's payroll run.
| Scenario | Outcome |
|---|---|
| Approved before the monthly cut-off | Reimbursed in the current month's payroll cycle |
| Approved after the monthly cut-off | Rolls over and is reimbursed in the following month's cycle |
Settlement invoice
This section applies to EOR (employment) team members only. GP team members are billed via a separate Global Payroll Fees invoice.
For EOR team members, approved expenses that are reimbursed through payroll appear as a line item in the customer's monthly settlement invoice. All payroll cycles — monthly, semi-monthly, and biweekly — are billed on a monthly basis. There is no separate expense invoice.
Off-cycle expense payouts are also captured in the monthly settlement invoice — there is no separate invoice. Billing is monthly across all payroll cycles (monthly, semi-monthly, biweekly, and off-cycle).
Off-cycle expenses
Oyster does not currently offer a self-serve off-cycle expense flow. If a team member misses the monthly cut-off and requires urgent reimbursement before the next scheduled cycle, this is handled as an exception by Oyster's Operations team and processed manually off-platform.
This mirrors how off-cycle payroll changes work at Oyster. The Expenses API does not expose an off-cycle concept — all API operations follow the standard on-cycle flow.
Taxability and payslip visibility
Whether a reimbursed expense appears on a team member's payslip depends on their engagement type, not their country.
- EOR (employment) and Global Payroll (GP) team members: all approved expenses are processed through payroll as a payroll component. They always appear on the payslip. Taxability affects how the expense is taxed, not whether it shows up.
- Contractors: expenses are not processed through payroll. They are reimbursed via a separate contractor expense reimbursement invoice and do not appear on a payslip.
For questions about how a specific expense is taxed, contact Oyster Support.
Summary
| Topic | Detail |
|---|---|
| Submission | On-platform or via API; individual, with receipt |
| Approval | Required before reimbursement |
| Cut-off | Monthly; missing it rolls to the next cycle |
| Reimbursement | On-cycle only (self-serve); off-cycle is a manual exception |
| Invoice | EOR: monthly settlement invoice. GP: Global Payroll Fees invoice. Contractors: separate expense invoice |
| Payslip | EOR and GP team members: always included via payroll. Contractors: not on a payslip (separate invoice) |
| Off-cycle API | Not supported — on-cycle flow only |
For more information about how to use the Expenses API, see Managing Expenses via API.
Updated 42 minutes ago
