What you see
The screen centers on one table, with search, sort, and filter controls above it and a running count of selected rows when you bulk-select.Search, sort, and filter
Search
Match by name, email, or address as you type to find a person in a large list.
Sort
Order the table by any column, such as name, status, pay rate, added date, or last paid.
Filter
Narrow to a single status or a saved group, for example only Ready contractors before a run.
Bulk select and row actions
Select multiple rows with the header checkbox or per-row checkboxes to act on many contractors at once, such as adding them all to a run or deactivating a group. Each row also has its own actions.Pay now
Start a run pre-scoped to this contractor.
Edit
Change name, email, address, pay rate, or notes.
View
Open the contractor detail view.
Resend invite
Send the registration link again to an Invited contractor.
Deactivate
Move a contractor to Inactive and exclude them from new runs.
Reactivate
Return an Inactive contractor to their prior status.
Contractor statuses
The status tells you where each person is in setup and whether you can pay them. Only Ready contractors are payable, because a confidential payout is encrypted to the recipient’s public viewing key, which exists only after they register.Add one contractor (manual)
Open Add contractor
Fill in name, email, and either a Stellar address or an invite by email so they connect a wallet later. Add a pay rate with its currency and any notes.
Confiroll validates as you type
Live validation confirms a valid Stellar strkey address (a G-address or a C-address), a valid email, no duplicate of an existing contractor, and a pay rate greater than zero.
Save
If the address you entered is already registered on-chain, the contractor is marked Ready and payable right away. Otherwise they are saved as Invited and receive a registration link.
Adding a contractor does not make them payable on its own. They become Ready only after they connect a wallet and self-register their confidential account. Think of registration as collecting a payout method before the first paycheck.
Add many contractors (CSV)
Upload your CSV
Start from the downloadable template or upload your own spreadsheet. The template has columns for name, email, address, pay rate, and currency.
Map columns
Match your spreadsheet columns to name, email, address, and amount. Confiroll remembers your mapping so repeat imports are one step.
Review the preview
A preview table validates every row: valid strkey address, valid email, amount greater than zero, and duplicate detection against your existing directory. Invalid rows are flagged inline with the exact reason.
Fix or skip, then import
Correct the flagged rows in place or skip them, then import the valid rows. Each imported contractor lands as Ready if their address is already registered, or Invited otherwise, and invites go out automatically.
Download the CSV template from the upload dialog to get the exact column headers and a sample row. Starting from the template keeps the mapping step to a single confirmation.
Contractor detail view
Selecting a row or the View action opens a full profile for one contractor.Profile
Name, email, notes, added date, and current status in one header.
Address and viewing key
Their Stellar address with copy, plus their public viewing key, which is the key your browser encrypts each payout to. Both are public data.
Onboarding status
Where they are in registration, from Invited through Ready, with the next action for each state.
Payout history
Every settled payout to this person, each with its date, its amount from your private ledger, and an explorer link.
Pay settings
The saved pay rate and currency used to prefill a run, editable in place.
Invite management
Resend the registration link, copy the invite URL, or update the email an invite goes to.
FAQ
Why do contractors have to register first?
Why do contractors have to register first?
A confidential payout encrypts the amount to the recipient’s public viewing key. That key exists only after the contractor connects a wallet and self-registers their confidential account on-chain. Until then there is no key to encrypt to, so they stay in Invited or Onboarding and are not selectable in a run.
What happens if I enter a wrong or unregistered address?
What happens if I enter a wrong or unregistered address?
Live validation rejects anything that is not a valid Stellar strkey, so a malformed address never saves. A well-formed address with no registration on-chain saves the contractor as Invited rather than Ready, and they receive a registration link. Once they register, their status flips to Ready and they become payable.
Can I reactivate someone I deactivated?
Can I reactivate someone I deactivated?
Yes. An Inactive contractor keeps their profile, address, and payout history. Use Reactivate from the row actions or the detail view to return them to their prior status, and they rejoin future runs.
How do I resend an invite?
How do I resend an invite?
Use Resend invite from the row actions or Invite management in the detail view to send the registration link again. You can also update the destination email first if the original bounced or changed.