sample
{
# version of the configuration file
tezpay_config_version: 0
# baker's public key hash
baker: ""
# payout configuration
payouts: {
# wallet mode to use for signing transactions, can be 'local-private-key' or 'remote-signer'
wallet_mode: local-private-key
# payout mode to use, can be 'actual' or 'ideal'
payout_mode: ideal
# balance check mode to use, can be 'protocol' or 'tzkt'
balance_check_mode: protocol
# fee to charge delegators for the payout (portion of the reward as decimal, e.g. 0.075 for 7.5%)
fee: 0.075
# if true, baker pays the transaction fee
baker_pays_transaction_fee: true
# if true, baker pays the allocation transaction fee
baker_pays_allocation_fee: true
# minimum amount to pay out to delegators, if the amount is less, the payout will be ignored
minimum_payout_amount: 10.5
# buffer for transaction gas limit
transaction_gas_limit_buffer: 200
# buffer for transaction deserialization gas
transaction_deserialization_gas_buffer: 5
# buffer for transaction fee
transaction_fee_buffer: 10
# buffer for KT transaction fee
kt_transaction_fee_buffer: 50
# minimum delay in blocks before the payout is executed
minimum_delay_blocks: 10
# maximum delay in blocks before the payout is executed
maximum_delay_blocks: 250
}
# delegators configuration
delegators: {
# Requirements delegators have to meet
requirements: {
# Minimum balance of tez a delegator has to have to be considered for payout
minimum_balance: 0.5
# Reward destination for delegators with balance below the minimum balance (possible values: 'none', 'everyone')
below_minimum_reward_destination: everyone
}
# List of only delegator addresses to consider, if empty all delegators are considered
prefilter: [
tz1P6WKJu2rcbxKiKRZHKQKmKrpC9TfW1AwM
tz1hZvgjekGo7DmQjWh7XnY5eLQD8wNYPczE
]
# List of delegator addresses to ignore - wont be included in reward set, rewards will be redistributed
ignore: [
tz1Ke2h7sDdakHJQh8WX4Z372du1KChsksyU
tz1burnburnburnburnburnburnburjAYjjX
]
# Overrides for specific delegators
overrides: {
tz1P6WKJu2rcbxKiKRZHKQKmKrpC9TfW1AwM: {
# Redirects payout to the recipient 'address'
recipient: ""
# Overrides the fee for the delegator
fee: 0
# Overrides the minimum balance requirement for the delegator
minimum_balance: 2.5
}
tz1hZvgjekGo7DmQjWh7XnY5eLQD8wNYPczE: {
# Redirects payout to the recipient 'address'
recipient: ""
# The maximum balance for the delegator (for overdelegation situation you can limit how much of a delegator balance is taken into account)
maximum_balance: 1000
}
}
# Shortcuts for overriding fees for specific delegators
fee_overrides: {
.5: [
""
]
1: [
tz1Ke2h7sDdakHJQh8WX4Z372du1KChsksyU
tz1burnburnburnburnburnburnburjAYjjX
]
}
}
# income recipients configuration
income_recipients: {
# list of addresses and their share of the bonds
bonds: {
tz1P6WKJu2rcbxKiKRZHKQKmKrpC9TfW1AwM: 0.455
tz1X7U9XxVz6NDxL4DSZhijME61PW45bYUJE: 0.545
}
# list of addresses and their share of the fees
fees: {
tz1P6WKJu2rcbxKiKRZHKQKmKrpC9TfW1AwM: 0.455
tz1X7U9XxVz6NDxL4DSZhijME61PW45bYUJE: 0.545
}
# share of the rewards to donate
donate: 0.025
# share of the fees to donate (if not set, 'donate' is used)
donate_fees: 0.05
# share of the bonds to donate (if not set, 'donate' is used)
donate_bonds: 0.03
# list of addresses and their share of the donations
donations: {
tz1P6WKJu2rcbxKiKRZHKQKmKrpC9TfW1AwM: 0.1
tz1UGkfyrT9yBt6U5PV7Qeui3pt3a8jffoWv: 0.9
}
}
# tezos network configuration
network: {
# Url to rpc endpoint
rpc_url: https://rpc.tzkt.io/mainnet
# List of RPC nodes to use. Order is important, the first one is the primary node, unless rpc_url is set.
rpc_pool: [
https://eu.rpc.tez.capital/
https://us.rpc.tez.capital/
]
# Url to tzkt endpoint
tzkt_url: https://api.tzkt.io/
# Url to protocol rewards endpoint
protocol_rewards_url: https://protocol-rewards.tez.capital/
# Url to block explorer
explorer: https://tzstats.com/
# if true, smart contracts will not be paid out (used for testing)
ignore_kt: true
}
# overdelegation protection configuration
overdelegation: {
protect: true
}
# notification configurations
notifications: [
{
type: discord
webhook_url: https://my-discord-webhook.com/
message_template: my awesome message
}
{
type: discord
webhook_url: https://my-admin-discord-webhook.com/
message_template: my awesome message
admin: true
}
{
type: discord
webhook_id: webhook id
webhook_token: webhook token
message_template: my awesome message
}
{
type: twitter
access_token: your access token
access_token_secret: your access token secret
consumer_key: your consumer key
consumer_secret: your consumer secret
message_template: my awesome message
}
{
type: telegram
api_token: your api token
receivers: [
list of chat numbers without quotes
-1234567890
]
message_template: my awesome message
}
{
type: email
sender: my@email.is
smtp_server: smtp.gmail.com:443
smtp_identity: ""
smtp_username: my@email.is
smtp_password: password123
recipients: [
my-follower1@email.is
my-follower2@email.is
]
message_template: my awesome message
}
{
type: external
path: path to external notificator binary
args: [
--kind
<kind>
<data>
]
}
]
# extensions (for custom functionality)
extensions: [
{
name: log-extension
command: python3
args: [
/path/to/my/extension.py
]
kind: stdio
configuration: {
LOG_FILE: path/to/my/extension.log
}
hooks: [
{
id: all
mode: ro
}
]
}
{
name: fee-extension
command: /path/to/my/extension.bin
args: [
--config
/path/to/my/extension.config
]
kind: stdio
configuration: {
FEE: 0
TOKEN: "1"
CONTRACT: KT1Hkg6qgV3VykjgUXKbWcU3h6oJ1qVxUxZV
}
hooks: [
{
id: after_candidates_generated
mode: rw
}
]
}
]
# disables analytics, please consider leaving it enabled🙏
disable_analytics: true
}