Practical overview
When it fits
Use it when building or operating a self-hosted worker to monitor zkSync Era withdrawals and submit the transactions needed to finalize them on Ethereum.
Who it is for
- Infrastructure teams operating zkSync Era withdrawal-finalization services.
- Developers adapting the service for token or custom-bridge configurations.
Documented uses
- Monitor withdrawal-related events across zkSync Era and Ethereum.
- Persist service state in PostgreSQL.
- Submit transactions to finalize L2-to-L1 withdrawals.
- Configure token monitoring and finalization behavior for supported custom-bridge scenarios.
Requirements & limits
The repository is public and provides Rust build instructions. It lists the project under Apache-2.0 or MIT licensing, at the user's option.
- Deployment requires Ethereum and zkSync Era RPC endpoints plus PostgreSQL.
- Database migrations must be run before deployment.
- The service requires a private key for the account that submits finalization transactions.
- Environment-variable settings cover contract addresses, gas limits, retry timing, and optional token-handling controls.
- The repository documents Dockerized deployment.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Prepare the service for deployment
Build the Rust project and prepare its PostgreSQL database and configuration prerequisites for deployment.
Before you start
- Rust and Cargo
- PostgreSQL instance
- sqlx-cli
- Ethereum and zkSync Era WebSocket RPC endpoints
Steps
Build the project with the command below.
cargo buildFrom the
storagedirectory, create the database usingDATABASE_URLandsqlx database create.Run database migrations with
DATABASE_URLandsqlx migrate run.Configure the documented environment variables or a
.envfile, then deploy a Dockerized image.
Expected outcome
The project is built, its database migrations are run, and the documented deployment prerequisites and configuration are prepared.
Guide limitations
- This guide covers documented build and deployment preparation, not a verified deployment or successful withdrawal.
- Deployment also requires contract addresses, gas settings, and the private key of the transaction-submitting account.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- matter-labs/zksync-withdrawal-finalizer · Official homepage title · retained in its source language

