~5 minutes. Hosted entirely in your own Railway account — we have zero access. ~5 Minuten. Läuft komplett in deinem eigenen Railway-Account — wir haben null Zugriff.
Railway hosts your service + Postgres database. Sign in with GitHub (30 seconds) and add a payment method — the Hobby tier ($5/mo) covers this stack with room to spare. Railway hostet deinen Service + die Postgres-Datenbank. Mit GitHub einloggen (30 Sekunden) und eine Zahlungsmethode hinterlegen — der Hobby-Tarif (~5 $/Monat) deckt diesen Stack locker ab.
Click the button. Railway provisions the finances service + Postgres + a 1 GB volume — all linked. Railway will ask you for one thing: API_TOKEN. We pre-generated one for you below — copy it, paste into Railway's prompt, then click Deploy. ~2 minutes total. Klick den Button. Railway provisioniert den finances-Service + Postgres + ein 1-GB-Volume — alles verbunden. Railway fragt dich nach einer Sache: API_TOKEN. Wir haben unten einen für dich vorgeneriert — kopieren, in Railways Prompt einfügen, dann auf Deploy klicken. ~2 Minuten.
…
ghcr.io/timwernerdxb/finances:stable
/app/dataAPI_TOKEN (from above) + DATABASE_URL (value below)${{Postgres.DATABASE_URL}}
Railway services have no public URL by default. You need to generate one — takes 5 seconds: Railway-Services haben standardmäßig keine öffentliche URL. Du musst eine generieren — dauert 5 Sekunden:
*.up.railway.app URL.Unter Public Networking auf "Generate Domain" klicken (der Blitz-Button). Railway gibt dir eine kostenlose *.up.railway.app-URL.
Custom domain instead? Click "Custom Domain" in the same Networking section, point your DNS at Railway, then paste your custom URL below. Don't forget to also set WEBAUTHN_RP_ID=your.domain.com in env vars before enrolling passkeys.
Eigene Domain stattdessen? Auf "Custom Domain" in derselben Networking-Sektion klicken, DNS auf Railway zeigen lassen, dann deine eigene URL unten einfügen. Vor der Passkey-Enrollment WEBAUTHN_RP_ID=deine.domain.com in den Env-Vars setzen nicht vergessen.
Your tenant's first-boot wizard lives at your-project.up.railway.app/setup. Pick an email + password, hit Create, and you're inside.
Der First-Boot-Wizard deiner Instanz liegt unter dein-projekt.up.railway.app/setup. E-Mail + Passwort wählen, "Anlegen" klicken — du bist drin.
Skip this and the app works fine — overdue payments still appear in the dashboard. Set it up if you want emails delivered: payment reminders, daily briefings, monthly reports. Überspringen ist okay — überfällige Zahlungen bleiben im Dashboard sichtbar. Einrichten, falls du E-Mails möchtest: Zahlungserinnerungen, tägliche Briefings, Monatsberichte.
Why your own account? Emails go from your domain (better deliverability + branding), and we never see who you're emailing or what about. Resend's free tier is 100 emails/day — plenty for personal use. Warum dein eigener Account? E-Mails gehen von deiner Domain (bessere Zustellung + Branding), und wir sehen weder Empfänger noch Inhalte. Resends Free-Tier reicht mit 100 E-Mails/Tag locker für privaten Gebrauch.
*.resend.dev for testing)Domain verifizieren (oder Resends Default *.resend.dev zum Testen nutzen)RESEND_API_KEY + RESEND_FROM (your verified from-address)In Railway → finances-Service → Variables → RESEND_API_KEY + RESEND_FROM (deine verifizierte Absender-Adresse) hinzufügen
Prefer SMTP or your own Outlook? Set SMTP_HOST + SMTP_USER + SMTP_PASS instead — same fallback chain.
Lieber SMTP oder dein eigenes Outlook? Stattdessen SMTP_HOST + SMTP_USER + SMTP_PASS setzen — gleiche Fallback-Kette.
All bank-feed integrations are optional and configurable from the Connections page. Pick the providers that match where your accounts live: Alle Bank-Anbindungen sind optional und über die Connections-Seite konfigurierbar. Wähle die Anbieter, die zu deinen Konten passen:
Each provider gives you their own API keys; you paste them into your Railway env vars. We've never seen them — they go from the provider straight to your tenant. Jeder Anbieter gibt dir eigene API-Keys; du fügst sie in deine Railway-Env-Vars ein. Wir bekommen sie nie zu sehen — sie gehen direkt vom Anbieter zu deiner Instanz.