In addition to facilitating direct HYDRO transfers between users, Snowflake facilitates indirect payments which undergo arbitrary logic prior to completion in the form of via contracts. Via contracts route a HYDRO token transfer through a smart contract before executing a function at an end destination. As with direct payments, this can occur between EINs, addresses, and Resolvers. Resolver-initiated Via functions can only be performed with Allowances set by an EIN for a Resolver.
Custom via contracts can be written using the Building a Via Contract section of this documentation.