Circle Developers

Desenvolva aplicativos de última geração

Desenvolva o próximo aplicativo revolucionário com tecnologia de moeda digital e carteiras Web3 seguras.

Crie

Dimensione com o USDC e ferramentas da Web3 sem complicações

Comece a usar o USDC

O USDC é um dólar digital de código aberto que transcende fronteiras e contas bancárias e está disponível nativamente nas principais blockchains. Os desenvolvedores usam o USDC para transferir, validar e armazenar moedas digitais de forma programática com mais rapidez e economia do que os sistemas de pagamento tradicionais.

Documentação da stablecoin

*A Circle também é a única emissora do EURC, uma stablecoin com lastro em euro onde os desenvolvedores podem criar agora mesmo.

Amplie seu aplicativo com o CCTP

Alcance mais usuários habilitando pagamentos, swaps e depósitos com o Cross-Chain Transfer Protocol (CCTP), uma funcionalidade permissionless on-chain que facilita transferências de USDC entre as blockchains compatíveis por meio da queima e emissão nativas.

Documentação do CCTP

Acesse ferramentas para desenvolver na Web3

Descubra uma maneira mais fácil e mais rápida de criar aplicativos da Web3 prontos para produção. Integre e faça transações com carteiras MPC usando APIs REST e SDKs. Implante e interaja com contratos inteligentes para oferecer suporte às interações das suas carteiras na blockchain. Com ferramentas robustas e infraestrutura de nó integrada, você pode criar aplicativos da Web3 seguros com rapidez, tudo isso enquanto elimina a complexidade para os usuários finais.

Documentação de serviços da Web3

async function main() {
    const decimals = await contract.methods.decimals().call();
    const balance = await
    contract.methods.balanceOf(fromAddress).call();
    console.log('USDC balance:', balance / (10 ** decimals));
    let value = amount * (10 ** decimals);
    let data = contract.methods.transfer(toAddress, value).encodeABI();
    const transaction = {
      'to': tokenAddress,
      'gas': Web3.utils.toHex(100000),
      'data': data
    };
    const signedTx = await
    web3.eth.accounts.signTransaction(transaction, privatekey);
    return web3.eth.sendSignedTransaction(signedTx.rawTransaction,
    function (error, hash) {
      if (!error) {
        console.log("Tx Hash: ", hash);
      } else {
        console.log("Error sending Tx:", error)
      }
    });
  }

  main().then(receipt => console.log("Tx Receipt:", receipt));
// Facilitate a burn of the specified amount of USDC on the source chain
const burnTx = await ethTokenMessengerContract.methods.depositForBurn(amount, AVAX_DESTINATION_DOMAIN, destinationAddressInBytes32,
USDC_ETH_CONTRACT_ADDRESS).send();

// Hashes burn event transaction log
const transactionReceipt = await
web3.eth.getTransactionReceipt(burnTx.transactionHash);
const eventTopic = web3.utils.keccak256('MessageSent(bytes)');
const log = transactionReceipt.logs.find((l) => l.topics[0] === eventTopic);
const messageBytes = web3.eth.abi.decodeParameters(['bytes'], log.data)[0];
const messageHash = web3.utils.keccak256(messageBytes);

// Request the attestation of the burn event from Circle
let attestationResponse = { status: 'pending' };
while (attestationResponse.status !== 'complete') {
  const response = await
fetch(`https://iris-api-sandbox.circle.com/attestations/${messageHash}`);
  attestationResponse = await response.json();
  await new Promise(r => setTimeout(r, 2000));
}

// Enable USDC to be minted on the destination chain
const receiveTx = await
avaxMessageTransmitterContract.receiveMessage(receivingMessageBytes, signature);
import axios from 'axios';

const options = {
  method: 'POST',
  url: 'https://api.circle.com/v1/w3s/developer/transactions/contractExecution',
  headers: {
    Authorization: 'Bearer ${API_KEY}',
    accept: 'application/json',
    'content-type': 'application/json'
  },
  data: {
    abiFunctionSignature: 'transfer(address,uint256)',
    idempotencyKey: '23c4e3d8-62b1-4dca-a08a-b3f28f4a81bf',
    contractAddress: '',
    feeLevel: 'MEDIUM',
    walletId: '${WALLET_ID}',
    entitySecretCiphertext: '${ENTITY_SECRET_CIPHERTEXT}'
  }
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}

Comece a usar o USDC

O USDC é um dólar digital de código aberto que transcende fronteiras e contas bancárias e está disponível nativamente nas principais blockchains. Os desenvolvedores usam o USDC para transferir, validar e armazenar moedas digitais de forma programática com mais rapidez e economia do que os sistemas de pagamento tradicionais.

Documentação da stablecoin

*A Circle também é a única emissora do EURC, uma stablecoin com lastro em euro onde os desenvolvedores podem criar agora mesmo.

async function main() {
    const decimals = await contract.methods.decimals().call();
    const balance = await
    contract.methods.balanceOf(fromAddress).call();
    console.log('USDC balance:', balance / (10 ** decimals));
    let value = amount * (10 ** decimals);
    let data = contract.methods.transfer(toAddress, value).encodeABI();
    const transaction = {
      'to': tokenAddress,
      'gas': Web3.utils.toHex(100000),
      'data': data
    };
    const signedTx = await
    web3.eth.accounts.signTransaction(transaction, privatekey);
    return web3.eth.sendSignedTransaction(signedTx.rawTransaction,
    function (error, hash) {
      if (!error) {
        console.log("Tx Hash: ", hash);
      } else {
        console.log("Error sending Tx:", error)
      }
    });
  }

  main().then(receipt => console.log("Tx Receipt:", receipt));

Amplie seu aplicativo com o CCTP

Alcance mais usuários habilitando pagamentos, swaps e depósitos com o Cross-Chain Transfer Protocol (CCTP), uma funcionalidade permissionless on-chain que facilita transferências de USDC entre as blockchains compatíveis por meio da queima e emissão nativas.

Documentação do CCTP

// Facilitate a burn of the specified amount of USDC on the source chain
const burnTx = await ethTokenMessengerContract.methods.depositForBurn(amount, AVAX_DESTINATION_DOMAIN, destinationAddressInBytes32,
USDC_ETH_CONTRACT_ADDRESS).send();

// Hashes burn event transaction log
const transactionReceipt = await
web3.eth.getTransactionReceipt(burnTx.transactionHash);
const eventTopic = web3.utils.keccak256('MessageSent(bytes)');
const log = transactionReceipt.logs.find((l) => l.topics[0] === eventTopic);
const messageBytes = web3.eth.abi.decodeParameters(['bytes'], log.data)[0];
const messageHash = web3.utils.keccak256(messageBytes);

// Request the attestation of the burn event from Circle
let attestationResponse = { status: 'pending' };
while (attestationResponse.status !== 'complete') {
  const response = await
fetch(`https://iris-api-sandbox.circle.com/attestations/${messageHash}`);
  attestationResponse = await response.json();
  await new Promise(r => setTimeout(r, 2000));
}

// Enable USDC to be minted on the destination chain
const receiveTx = await
avaxMessageTransmitterContract.receiveMessage(receivingMessageBytes, signature);

Acesse ferramentas para desenvolver na Web3

Descubra uma maneira mais fácil e mais rápida de criar aplicativos da Web3 prontos para produção. Integre e faça transações com carteiras MPC usando APIs REST e SDKs. Implante e interaja com contratos inteligentes para oferecer suporte às interações das suas carteiras na blockchain. Com ferramentas robustas e infraestrutura de nó integrada, você pode criar aplicativos da Web3 seguros com rapidez, tudo isso enquanto elimina a complexidade para os usuários finais.

Documentação de serviços da Web3

import axios from 'axios';

const options = {
  method: 'POST',
  url: 'https://api.circle.com/v1/w3s/developer/transactions/contractExecution',
  headers: {
    Authorization: 'Bearer ${API_KEY}',
    accept: 'application/json',
    'content-type': 'application/json'
  },
  data: {
    abiFunctionSignature: 'transfer(address,uint256)',
    idempotencyKey: '23c4e3d8-62b1-4dca-a08a-b3f28f4a81bf',
    contractAddress: '',
    feeLevel: 'MEDIUM',
    walletId: '${WALLET_ID}',
    entitySecretCiphertext: '${ENTITY_SECRET_CIPHERTEXT}'
  }
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
Acesse USDC diretamente

Emissão e depósito de USDC em grande escala

Os desenvolvedores corporativos qualificados podem aproveitar o Circle Mint e as APIs correspondentes para emitir e resgatar USDC em grande escala, a qualquer hora, diretamente da sua conta bancária comercial. A Circle também fornece APIs para fazer depósitos e pagamentos em criptomoedas de e para sua conta do Circle Mint, incluindo o USDC nas blockchains compatíveis.

  • Emita e resgate via API ou UI da Web
  • Notificações de webhook para ser notificado automaticamente quando uma transação ocorre
  • SDKs para colocar sua base de código em funcionamento rapidamente
  • APIs para transações programáveis on-chain
Conecte-se

Participe da comunidade de desenvolvedores da Circle

Encontre-nos em eventos do setor e converse conosco no Discord 24 horas por dia, de segunda a sexta-feira. Nossa equipe dedicada está à disposição para responder a perguntas, ouvir seus comentários sobre os produtos e fornecer meios para você interagir com outros desenvolvedores de blockchain.

Eventos para desenvolvedores

Jul
05
2024

Solana Hacker House London

London, UK
Jul
08
2024

EthCC

Brussels, Belgium
Jul
12
2024

ETHGlobal Brussels

Brussels, Belgium
Jul
24
2024

EDCON 2024

Tokyo, Japan
Jul
26
2024

Solana Hacker House Bengaluru

Bengaluru, India
Set
19
2024

Solana Breakpoint

Singapore
Set
20
2024

ETHGlobal Singapore

Singapore
Out
18
2024

ETHGlobal San Francisco

San Francisco, CA
Nov
15
2024

ETHGlobal Bangkok

Bangkok, Thailand
1
2
3
4
5
6
7

Junte-se ao ecossistema em expansão dos desenvolvedores que constroem com o USDC.

Os serviços são fornecidos pela Circle Technology Services, LLC ("CTS"). Os serviços não incluem consultoria financeira, de investimentos, tributária, jurídica, regulatória, contábil, comercial nem de outra natureza. A CTS é apenas fornecedora do software e da tecnologia relacionada e não participa de nenhuma atividade de transmissão de dinheiro regulamentada em conexão com os serviços que presta. Para obter mais detalhes, visite https://console.circle.com/legal/developer-terms para ver os Termos de serviço para desenvolvedores da Circle