Skip to main content
Base Account를 사용하면 단일 트랜잭션에서 여러 온체인 콜을 전송할 수 있습니다. 이를 통해 여러 단계의 상호작용을 단 한 번의 클릭으로 줄여 UX를 향상시킵니다. 배치 트랜잭션을 활용하고 싶은 일반적인 예는 ERC-20 approve 이후 스왑입니다. EIP-5792에 정의된 wallet_sendCalls RPC 메서드를 사용하여 배치 트랜잭션을 제출할 수 있습니다.
동영상 콘텐츠를 선호하시나요?이 페이지의 마지막 섹션에 구현을 자세히 다루는 동영상 가이드가 있습니다.

설치

Base Account SDK를 설치합니다:

설정

SDK 초기화

Base Account SDK 인스턴스를 가져오고 생성합니다:
batchTransactions.tsx

기본 배치 트랜잭션

간단한 다중 전송

단일 트랜잭션에서 여러 ETH 전송을 보냅니다:
batchTransactions.tsx

컨트랙트 상호작용

ERC-20 승인 및 NFT(ERC-721) 민팅

일반적인 패턴은 NFT 컨트랙트가 ERC-20을 이동하도록 승인한 다음 NFT(ERC-721)를 민팅하는 것입니다:
batchTransactions.tsx

고급 기능

지갑 기능 확인

배치 트랜잭션을 보내기 전에 지갑이 원자적 배치를 지원하는지 확인할 수 있습니다:
batchTransactions.tsx

비원자적 배치

일부 실패해도 콜을 순차적으로 실행하고 싶을 때:
batchTransactions.tsx

배치 트랜잭션 결과 가져오기

wallet_getCallsStatus는 이전에 wallet_sendCalls로 제출한 배치의 실행 상태를 반환합니다. wallet_sendCalls가 반환한 callsId를 캡처한 다음 배치가 확인되거나 실패할 때까지 상태를 폴링합니다.
batchTransactions.tsx
wallet_getCallsStatus는 제출한 배치 호출의 상태를 조회할 때 사용합니다.
가스에 대한 더 많은 제어가 필요하신가요?gasLimitOverride 기능을 사용하여 배치의 개별 콜에 대한 가스 한도를 재정의할 수 있습니다. 이는 스왑과 같이 비결정적 가스 소비가 있는 콜에 유용합니다. 지원되는 기능은 사용 중인 지갑 및 프로바이더 설정과 함께 확인하세요.

동영상 가이드