Core
Core configuration of the paymaster infrastructure
Core properties
Prop | Type | Description |
---|---|---|
verbosity | "debug" | "info" | Log verbosity of the service |
rpc.port | number | Port on which the RPC service will listen |
forwarder | ContractAddress | Address of the forwarder contract |
supported_tokens | ContractAddress[] | Address of the gas tokens supported by the paymaster. Tokens listed here can be used to pay for transactions. ⚠️ The price of these tokens needs to be available using the configured price oracle |
max_fee_multiplier | number | Multiplier used to guarantee that the user has approved enough gas token to spend. This is a security margin and it's not used to compute the actual gas paid by the user. We propose to set this value to something between 2 and 3. |
provider_fee_overhead | number | Overhead added to the fee paid by the user. This overhead can be used to amortize discrepancies between the estimate off-chain and the actual cost on-chain. The final gas paid by the user is set as (1 + provider-fee-overhead) * fee_estimate. We suggest using a value between 0.01 and 0.1 corresponding to 1% and 10%. |
estimate_account.address | ContractAddress | Address of the account used to estimate transaction during the build process |
estimate_account.private_key | string(hex) | Private key of the estimate account |
gas_tanker.address | ContractAddress | Address of the account used to receive user tokens |
gas_tanker.private_key | string(hex) | Private key of the gas tanker |
Example
{
"verbosity": "info",
"rpc": {
"port": 12777
},
"forwarder": "0x5678",
"estimate_account": {
"address": "0x1234",
"private_key": "0x4321"
},
"gas_tanker": {
"address": "0x1234",
"private_key": "0x4321"
},
"max_fee_multiplier": 3.0,
"provider_fee_overhead": 0.1,
"supported_token": ["ETH_TOKEN_ADDRESS", "ANY_TOKEN_ADDRESS"]
}
Updated 23 days ago