THE GATEWAY
TO OPEN FINANCE

Axelar is a decentralized network and development platform securely connecting the world's blockchains and financial infrastructure.

>:( 0 )░

Trusted
by Leaders

DeFi

RWAs

Infrastructure

Wallets

Enterprise

And 150+ integrations across 9 verticals

[/#]

Programmable

Axelar supports smart contracts, making it unique among cross-chain networks – delivering true chain abstraction for both users and developers with minimal overhead.

[/#]

Scalable

Today, Axelar connects more blockchains than any other interoperability provider – and the gap is widening. Axelar is truly the shortest path to scale.

[/#]

Secure

Axelar runs battle-tested proof-of-stake verification. Risk is further mitigated via superior topology and application-layer policies like rate limits.

  $10B+
Transferred
2.5M+
Transactions
70+
Blockchains
  1.3M+
SDK Downloads
75
POS Validators

>:( 0 )░

Case Studies

Use case
Rebalancing
J.P.Morgan's Onyx can rebalance large portfolios of tokenized assets on any chain
Use case
Governance
Uniswap uses Axelar for critical upgrades and multichain expansion
Use case
Onboarding
dYdX V4 onboards users from anywhere in one click
Use case
Multichain DeFi
Sommelier vaults run complex logic on Cosmos for yield strategies on Arbitrum

>:( 0 )░

Build Once,
Run Everywhere

Axelar supports smart contracts at the cross-chain layer, giving blockchain developers super powers to scale their applications with ease.

DEFI

Send a token cross-chain to Uniswap with instructions to execute a trade.

RWA

Send a 'safeMintO function call to mint a real-world asset as an NFT on a connected chain.

GAMING

Users from various blockchains pick a number and place a bet in the token of their choice.

Solidity (Ethereum)
function triggerInterchainNftMint() {
    bytes memory mintNftPayload = abi.encodeWithSignature(
        "safeMint(address,uint256)",
        receivingAddr,
        _tokenId
    );
    gateway.callContract(_destChain, _destContractAddr, mintNftPayload);
}

//Receive safeMint() call on dest chain and send msg to NFT 
function _execute(string calldata, string calldata, bytes calldata _payload) {
    (bool success, bytes memory data) = address(nft).call(_payload);
    require(success, "safeMint call reverted")

}
Solidity (Ethereum)
function placeBet(uint256 _guess)  {
        gasService.payNativeGasForContractCallWithToken{value: msg.value}(
            address(this),
            _destChain,
            _destContractAddr,
            abi.encode(msg.sender, _guess),
            _symbol,
            _amount,
            msg.sender
        );
        gateway.callContractWithToken(
            _destChain,
            _destContractAddr,
            encodedBetPayload,
            _symbol,
            _amount
        );
    }
function _executeWithToken(bytes calldata _payload)  {
        (address player, uint256 guess) = abi.decode(_payload, (address, uint256));
        if (won) _payOutAllTokensToWinner(player);
    }
Solidity (Ethereum)
function interchainSwap() external payable {
        ISwapRouter.ExactInputSingleParams memory swapParams = ISwapRouter
            .ExactInputSingleParams({
                tokenIn: address(tokenIn),
                tokenOut: address(tokenOut),
                recipient: msg.sender,
                amountIn: amount,
            });
        gateway.callContract(
            destChain,
            destContractAddr,
            abi.encode(swapParams),
        );
    }
function _execute(bytes calldata _payload) internal override {
   ISwapRouter.ExactInputSingleParams memory decodedGmpMessage = abi
        .decode(_payload, (ISwapRouter.ExactInputSingleParams));
   swapRouter.exactInputSingle(decodedGmpMessage);
}