Split expenses with friends using voice commands through your Omi device. Create expenses, split costs, and manage shared finances - all hands-free!
- Split Expenses - Create and split expenses with friends using natural voice
- Smart Friend Matching - Fuzzy matches friend names so you don't need to be exact
- Flexible Dates - Use "today", "yesterday", or specific dates
- Group Support - Add expenses to Splitwise groups by name
- Secure OAuth - Industry-standard OAuth 2.0 authentication
- Install the Splitwise app from the Omi App Store
- Click "Connect with Splitwise" to authenticate
- Start using voice commands!
| Command | Description |
|---|---|
| "Split $25 for lunch with John" | Split equally with one person |
| "Split 50 dollars for dinner with Alice and Bob" | Split among multiple people |
| "Add expense of $100 for groceries yesterday" | Specify a date |
| "Split $30 for food in group Roommates with Sarah" | Add to a specific group |
| Field | Value |
|---|---|
| App Name | Splitwise |
| Category | Finance & Utilities |
| Description | Split expenses with friends using voice commands. Create expenses, split costs with fuzzy friend matching, and manage shared finances - all hands-free through Omi. |
| Author | Omi Community |
| Version | 1.0.0 |
- External Integration (required for chat tools)
- Chat (for voice command responses)
| URL Type | URL |
|---|---|
| App Home URL | https://your-app.up.railway.app/ |
| Setup Completed URL | https://your-app.up.railway.app/setup/splitwise |
| Chat Tools Manifest URL | https://your-app.up.railway.app/.well-known/omi-tools.json |
Note: Omi automatically appends
?uid=USER_IDto these URLs.
Add this redirect URI to your Splitwise app at https://secure.splitwise.com/apps:
https://your-app.up.railway.app/auth/splitwise/callback
For local development:
http://localhost:8080/auth/splitwise/callback
This app exposes a manifest endpoint at /.well-known/omi-tools.json that Omi automatically fetches when the app is created or updated.
| Tool | Description |
|---|---|
create_expense |
Create a Splitwise expense split among friends |
- Python 3.8+
- Splitwise Developer Account
# Navigate to the plugin directory
cd plugins/splitwise
# Create virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Copy environment file and configure
cp .env.example .env
# Edit .env with your Splitwise credentials
# Run the server
python -m uvicorn main:app --reload --port 8080SPLITWISE_CONSUMER_KEY=your_consumer_key
SPLITWISE_CONSUMER_SECRET=your_consumer_secret
SPLITWISE_REDIRECT_URI=http://localhost:8080/auth/splitwise/callback
PORT=8080
REDIS_URL= # Optional: for production use- Go to Railway and sign in
- Click "New Project" → "Deploy from GitHub repo"
- Select your repository and choose the
plugins/splitwisefolder
- In your Railway project, click "+ New" → "Database" → "Add Redis"
- Railway automatically creates and connects the Redis instance
- The
REDIS_URLenvironment variable is set automatically
Go to your service's Variables tab and add:
| Variable | Value |
|---|---|
SPLITWISE_CONSUMER_KEY |
Your consumer key from Splitwise |
SPLITWISE_CONSUMER_SECRET |
Your consumer secret from Splitwise |
SPLITWISE_REDIRECT_URI |
https://YOUR-APP.up.railway.app/auth/splitwise/callback |
Add your Railway URL as a redirect URI at https://secure.splitwise.com/apps:
https://YOUR-APP.up.railway.app/auth/splitwise/callback
Update your app URLs in the Omi App Store:
| URL Type | Value |
|---|---|
| App Home URL | https://YOUR-APP.up.railway.app/ |
| Setup Completed URL | https://YOUR-APP.up.railway.app/setup/splitwise |
| Chat Tools Manifest URL | https://YOUR-APP.up.railway.app/.well-known/omi-tools.json |
| Endpoint | Method | Description |
|---|---|---|
/ |
GET | Home page / App settings |
/health |
GET | Health check |
/auth/splitwise |
GET | Start OAuth flow |
/auth/splitwise/callback |
GET | OAuth callback |
/setup/splitwise |
GET | Check setup status |
/disconnect |
GET | Disconnect account |
/.well-known/omi-tools.json |
GET | Chat tools manifest |
/tools/create_expense |
POST | Chat tool: Create expense |
- Complete the Splitwise OAuth flow by clicking "Connect with Splitwise" in app settings
- Check spelling of friend's name
- The app uses fuzzy matching, but very different names won't match
- Make sure the person is in your Splitwise friends list
- Make sure the redirect URI in Splitwise app settings matches exactly
MIT License - feel free to modify and distribute.
For issues or feature requests, please open an issue on GitHub or contact the Omi community.
Made with love for Omi