Skip to Content
Onboarding guideRoot account setup

Root account setup

The installer ends by printing a signup URL. Open it in a browser. A fresh installation redirects / to /signup; once the owner exists, /signup redirects to /login and the API refuses further root signups.

If the page shows “Cannot connect to your installation. Check that the API is running.”, the web app cannot reach the API. Run the installer with --status and check the API log before retrying with the “Retry connection” button.

1. Create the workspace (/signup)

The signup page is one form, titled “Set up your workspace”. There is no multi-step wizard.

FieldRules
Full nameRequired, up to 128 characters.
Project nameRequired, up to 128 characters. A project holds the currencies, branding, wallets, webhooks and team of one website or product. Rename it later under Projects.
Email addressRequired. This is the owner’s sign-in name and the address that receives payout approval codes.
PasswordAt least 10 characters, at most 256. The minimum is the auth.password.minLength setting; the default is 10.

Press “Create workspace”. The server creates the owner, the first project and a signed-in session in one transaction, then opens the dashboard at /dashboard. Passwords are hashed with scrypt; the plain password is never stored.

There is no email verification step and no second factor in this release. Sign-in is email and password only. The signup endpoint is rate limited per IP with the same limit as login (20 attempts per hour by default).

2. Sign in (/login)

The login page is titled “Welcome back” and asks for Email address and Password. Login is limited to 20 attempts per hour per email address and per IP address by default. After too many failures wait an hour.

Sessions use a short-lived access token (15 minutes) and a refresh token (30 days). The browser refreshes automatically. “Sign out” at the bottom of the sidebar revokes the session on the server.

An account that still has a temporary password is sent to /change-password instead of the dashboard and cannot open any other page until the password is changed.

3. Change a password (/change-password)

Reach it from My account in the sidebar, or automatically after signing in with a temporary password. The form asks for Current password, New password and Confirm new password; the new password follows the same length rules as at signup.

Changing a password signs the account out on every device, including the one you are using. Sign in again afterwards.

4. First installation settings

Open Installation in the sidebar (/settings). Two settings matter before you go further.

Site URL. The public origin used in payment links, for example https://pay.example.com. The installer sets it from what you entered at install time. If browsers reach the dashboard at a different address, correct it here; payment links cannot be created until the site URL is set. Only the owner can change it. It must be an origin only: scheme, host and optional port, without a path.

If you installed on a machine behind a home router or inside a virtual machine, the installer’s suggested site URL is the router’s public address. Your browser can’t reach the server there. Open the dashboard at an address that works, for example http://localhost for a Lima VM on your Mac, and set the site URL to that same address. The Site URL step of the setup guide on Setup shows when the two differ. See Quick setup.

Email delivery. SMTP settings for every email the installation sends, which in this release means payout approval codes and the test email. Fields: SMTP host, Port, “Use implicit TLS (typically port 465)”, Username, New SMTP password, From email, From name. A username requires TLS (implicit TLS when the checkbox is on, STARTTLS otherwise); a local relay without a username is also accepted. The password is write-only: leave it blank on later saves to keep it. After saving, use “Test email” to send a real message to an address you can read. Delivery attempts fail until SMTP is configured.

The same page holds USD pricing (a CoinGecko Demo API key and cache settings, used to price SOL and ETH; stablecoins are always 1 USD), the install-wide minimum withdrawal, and a WalletConnect project ID. The WalletConnect field is stored but the WalletConnect transport is not available in this release; leave it empty.

5. Invite a teammate

Teammates are created under Team in the sidebar (/settings/team), not during signup. Press “Invite member” and fill in:

FieldNotes
Full name, Email addressRequired.
RoleAdmin, Project lead, Project manager or Project operator. Only owners and admins can create admins; project leads can invite managers and operators into their own projects.
Temporary passwordAt least 10 characters. You choose it.
ProjectsCheckboxes; shown for every role except Admin, because admins see all projects.

Press “Create member”. The account exists immediately; no invitation email is sent. Share the temporary password with the person yourself. On their first sign-in they are taken to /change-password and can do nothing else until they set their own password.

Roles, in short: owner and admin see everything; project lead manages the assigned projects (registration, currencies, webhooks, API keys, payouts, invites); project manager is read-only plus export; project operator sees payments, customers and sweeps and can create payment links. From the same page owners and admins can edit roles and project assignments, deactivate, reactivate and remove members. Each of those changes signs the member out everywhere. See User management.

Next

Node configuration: tell the installation where the recv.fund program lives on each network.

Last updated on