Documentation
  • 🌅Getting Started
    • Introduction
    • Motivation
    • Official Links
  • 🌐VIA Omnichain Network
    • Technology Overview
    • Contract Configuration
    • Gateway Contracts
    • Validation Cloud
    • Fees
    • Examples
    • Add Your Blockchain
  • 🔋Supported Protocols
    • Bridged USDC Standard Onboarding
      • Contracts We Deploy
      • Blockchain Responsibilities
    • Proto-USD
      • Background FAQs
      • Key Features
      • Build With Proto-USD
      • Proto Gateway Addresses
      • Fee Management
      • Gas Reimbursement Mechanism
  • 💻Security
    • Network Validator Intro
    • Layered Security
    • Become a Network Validator
  • 📸Marketing
    • Branding Assets
    • Co-Promotion
  • 🎬Presentations
    • Overview
  • 🏪Additional Products
    • TokenWorx
  • 💡Additional Information
    • Contact us
    • VIA Token
    • Audits
    • Disclaimer
    • Legacy
      • Legacy Contracts
      • PAPER
Powered by GitBook
On this page
  • Overview
  • Types of Fees
  • Message Fee
  • Gas Fees
  • Automatic Fee Handling
  • Setting Fee Limits:
  1. VIA Omnichain Network

Fees

PreviousValidation CloudNextExamples

Last updated 8 months ago

Overview

Managing fees in cross-chain messaging involves handling two main types of fees: message fees and gas fees.

Types of Fees

Message Fee

  • Where: Paid on source blockchain

  • What: A static fee in the most stable stablecoin on the origin blockchain. Listed as FEE_TOKEN in the developer documentation. Often this is Circle's USDC. If USDC is unavailable, the fee token is typically USDT or an equivalent.

  • Responsibility: The contract sending the message must have enough stablecoins; otherwise, the message cannot be sent.

  • Example: If sending a message from Polygon, your contract on Polygon needs enough USDC to cover the static fee.

Gas Fees

  • Where: Paid on destination blockchain

  • What: A dynamic fee charged by the blockchain's themselves. Paid in the wrapped native gas coin (e.g., WETH on Ethereum, WAVAX on Avalanche, etc.).

  • Responsibility: The receiving contract must have enough of the gas token to cover transaction costs. The gas is automatically pulled / sent to the relayer contract as a "gas reimbursement".

  • Example: If sending a message to Ethereum, your deployed contract on Ethereum needs enough WETH to cover the gas fee.

Automatic Fee Handling

The system automatically checks and deducts these fees during transactions. Fees are pulled directly from the your deployed smart contracts. The integrating party can choose to pay this themselves or pass the cost to the user.

Setting Fee Limits:

Developers can set limits on fees to prevent unexpected high costs using setMaxgas and setMaxfee functions.

🌐