カード決済処理はパートナーによって行われます。導入には、カード決済有効化前にパートナーとのKYBおよびコントラクトの許可リスト登録が必要です。Sequenceは決済処理の引受や運営は行いません。
対応プロセッサー:Transak および Forte。
主に主要なEVMチェーンをカバーしており、詳細はパートナーによります。パートナーの判断で新しいEVMチェーンの追加も検討されます。まずはSequenceにご連絡いただければ、適切なパートナーをご紹介します。
Checkout SDKを使うタイミング
- ERC-1155 / ERC-721アイテムを販売しており、暗号資産に加えてカード決済も提供したい場合。
- パートナーのKYBおよび許可リスト登録を完了できる場合。
- 支払い方法の選択や購入処理をまとめて行えるドロップインモーダルを利用したい場合。
インストール方法
pnpm add @0xsequence/checkout @0xsequence/connect
基本セットアップ
import { SequenceConnect } from '@0xsequence/connect'
import { SequenceCheckoutProvider } from '@0xsequence/checkout'
import { config } from './config'
export default function App() {
return (
<SequenceConnect config={config}>
<SequenceCheckoutProvider>
<YourRoutes />
</SequenceCheckoutProvider>
</SequenceConnect>
)
}
例:ERC-1155の一次販売
import { useAccount } from 'wagmi'
import { useERC1155SaleContractCheckout } from '@0xsequence/checkout'
export function BuyButton() {
const { address } = useAccount()
const { openCheckoutModal } = useERC1155SaleContractCheckout({
chain: 137, // destination chainId
contractAddress: '0xSaleContract', // primary sale contract
collectionAddress: '0xERC1155', // collection
wallet: address!, // recipient
items: [{ tokenId: '1', quantity: '1' }],
// Optional: restrict card providers if your integration requires it
// creditCardProviders: ['transak', 'forte'],
onSuccess: (txHash) => console.log('success', txHash),
onError: (err) => console.error(err),
})
return <button onClick={() => address && openCheckoutModal()}>Buy</button>
}
例:カスタムコントラクト呼び出し
import { useAccount } from 'wagmi'
import { useSelectPaymentModal, type SelectPaymentSettings } from '@0xsequence/checkout'
import { encodeFunctionData } from 'viem'
export function CustomBuy() {
const { address } = useAccount()
const { openSelectPaymentModal } = useSelectPaymentModal()
const onClick = () => {
if (!address) return
const chainId = 137
const salesContract = '0xSaleContract'
const currency = '0xUSDC'
const collection = '0xERC1155'
const price = '20000' // align with your contract's decimals
const erc1155MintAbi = [{ /* ...mint signature matching your contract... */ }]
const txData = encodeFunctionData({
abi: erc1155MintAbi,
functionName: 'mint',
args: [address, /* tokenIds[] */, /* amounts[] */, /* data */, currency, price, /* proof */]
})
const settings: SelectPaymentSettings = {
chain: chainId,
targetContractAddress: salesContract,
recipientAddress: address,
currencyAddress: currency,
collectionAddress: collection,
price,
collectibles: [{ tokenId: '1', quantity: '1' }],
// creditCardProviders: ['transak', 'forte'],
onSuccess: (txHash) => console.log('success', txHash),
onError: (err) => console.error(err),
txData,
}
openSelectPaymentModal(settings)
}
return <button onClick={onClick}>Buy (custom)</button>
}
パートナー設定(カード)
Sequenceに連絡
ご利用用途についてSequenceまでご相談ください。適切な場合はTransakまたはForteをご紹介します。
パートナーアカウント作成 & KYB
対応プロバイダー(例:TransakまたはForte)でアカウントを作成し、KYBを完了してください。
コントラクトの許可リスト登録
カード決済で利用する販売コントラクトをパートナーに許可リスト登録してもらってください。
プロバイダーの設定
利用するパートナーを限定したい場合は、creditCardProviders
で許可プロバイダーを指定します。
本番公開
パートナー要件に従い主要なEVMチェーンで有効化し、実際のカードで購入テストを行ってください。
暗号資産のみの購入や「任意のトークン/チェーン」からの支払いには、Trailsをご利用ください。Checkout SDKはNFT購入のカード決済に特化しており、Trailsやウォレット決済と併用できます。
参考情報