A payroll is a treasury-specific funding mechanism that can stream funds into a claiming bucket at a customizable rate. Funds can be added to a payroll by anyone, and treasuries can have multiple payrolls running simultaneously. Claims from a payroll can be targeted to an individual recipient or a specific group of users.
All treasuries are granted the worker
payroll by default, which can be used to pay workers for performing valuable platform optimization. Think of the worker payroll as a community fund to pay for treasury-wide housekeeping.
Any user can submit funds to any payroll. To do so, simply call the addfunds()
action on the telos.decide
contract.
Parameter Name | Parameter Type | Example |
from | name | craig.tcd |
treasury_symbol | symbol | 4,VOTE |
quantity | asset | 100.0000 TLOS |
A treasury manager can adjust the pay rate and pay periods for any payroll within their treasury. Fine tuning these settings allows payrolls to predictably incentivize labor for the given purpose of the payroll.
Parameter Name | Parameter Type | Example |
treasury_symbol | symbol | 4,VOTE |
period_length | uint32_t | 86400 |
per_period | asset | 50.0000 TLOS |
Table: payrolls
Scope: treasury_symbol
Field Name | Field Type | Description |
payroll_name | name | ​ |
payroll_funds | asset | ​ |
period_length | uint32_t | Length of a pay period in seconds. |
per_period | asset | Funds released into claimable_pay per period. |
last_claim_time | time_point_sec | Last time funds were claimed. |
claimable_pay | asset | Funds currently claimable. |
payee | name | Account name or Group eligible to claim funds. |