JPYC
JPYC Pay
Polygon Network · ERC-20
Polygon Live
注文内容
商品A(プレミアムプラン)
¥9,700
消費税(10%)
¥970
JPYC 支払い合計
10,670 JPYC
送金先の内訳
ショップ (97%)
10,349.9 JPYC
手数料 A (1%)
106.7 JPYC
手数料 B (1%)
106.7 JPYC
手数料 C (1%)
106.7 JPYC
ウォレットを選択
⛽ ガス代はお客様負担 · Polygon使用でガス代は数円程度(約0.01 MATIC)です
network:
“polygon"
token: “JPYC (0x431D5…)"
transfers: [
{ to: 0xShop…, amount: 10349.9 },
{ to: 0xFeeA…, amount: 106.7 },
{ to: 0xFeeB…, amount: 106.7 },
{ to: 0xFeeC…, amount: 106.7 }
]
token: “JPYC (0x431D5…)"
transfers: [
{ to: 0xShop…, amount: 10349.9 },
{ to: 0xFeeA…, amount: 106.7 },
{ to: 0xFeeB…, amount: 106.7 },
{ to: 0xFeeC…, amount: 106.7 }
]
JPYC Pay 管理画面
ウォレットアドレスと手数料配分の設定
① ウォレットアドレス設定
🏪
ショップ受取ウォレット
97%
EC運営者の売上受取アドレス
🅐
手数料受取 A
1%
手数料受取先 A のアドレス
🅑
手数料受取 B
1%
手数料受取先 B のアドレス
🅒
手数料受取 C
1%
手数料受取先 C のアドレス
⛽
スマートウォレット用 Polygon ガス代ウォレット
スマートウォレット利用時のガス代負担用 Polygon (MATIC) アドレス。通常ウォレットでは不要です。
② 手数料率の設定
💡 合計が 100% になるよう自動調整されます。A・B・Cの手数料を変更すると、残りがショップ受取率に反映されます。
🅐 手数料 A
変更可能範囲:0〜5%
🅑 手数料 B
変更可能範囲:0〜5%
🅒 手数料 C
変更可能範囲:0〜5%
97%
ショップ
1%
手数料 A
1%
手数料 B
1%
手数料 C
100%
合計
実装ガイド
ECサイトへの組み込み方法とスマートコントラクト設計
スマートコントラクト設計(Solidity概略)
// JPYC Payment Splitter — Polygon (ERC-20)
contract JPYCPaymentGateway {
address public shopWallet; // 97%
address public feeWalletA; // 1%
address public feeWalletB; // 1%
address public feeWalletC; // 1%
IERC20 public jpycToken; // JPYC contract
function pay(uint256 amount) external {
uint256 feeA = amount / 100; // 1%
uint256 feeB = amount / 100;
uint256 feeC = amount / 100;
uint256 shop = amount – feeA – feeB – feeC;
jpycToken.transferFrom(msg.sender, shopWallet, shop);
jpycToken.transferFrom(msg.sender, feeWalletA, feeA);
jpycToken.transferFrom(msg.sender, feeWalletB, feeB);
jpycToken.transferFrom(msg.sender, feeWalletC, feeC);
}
}
contract JPYCPaymentGateway {
address public shopWallet; // 97%
address public feeWalletA; // 1%
address public feeWalletB; // 1%
address public feeWalletC; // 1%
IERC20 public jpycToken; // JPYC contract
function pay(uint256 amount) external {
uint256 feeA = amount / 100; // 1%
uint256 feeB = amount / 100;
uint256 feeC = amount / 100;
uint256 shop = amount – feeA – feeB – feeC;
jpycToken.transferFrom(msg.sender, shopWallet, shop);
jpycToken.transferFrom(msg.sender, feeWalletA, feeA);
jpycToken.transferFrom(msg.sender, feeWalletB, feeB);
jpycToken.transferFrom(msg.sender, feeWalletC, feeC);
}
}
フロー概要
🔑 通常ウォレット (MetaMask等)
1. 購入者がJPYCを保有
2. approve()でコントラクトを承認
3. pay()を呼び出し
4. 4アドレスへ同時送金
5. ガス代 = 購入者負担 (MATIC)
2. approve()でコントラクトを承認
3. pay()を呼び出し
4. 4アドレスへ同時送金
5. ガス代 = 購入者負担 (MATIC)
🤖 スマートウォレット (AA)
1. Biconomy/ZeroDev等を利用
2. Paymaster がガス代を代行
3. ガス代用ウォレットから MATIC
4. 購入者はJPYCのみ保有でOK
5. UX大幅向上
2. Paymaster がガス代を代行
3. ガス代用ウォレットから MATIC
4. 購入者はJPYCのみ保有でOK
5. UX大幅向上
JPYC コントラクト情報 (Polygon)
Token Name:
JPY Coin
Symbol: JPYC
Polygon Address: 0x431D5dfF03120AFA4bDf332c61A6e1766eF37BF6
Decimals: 18
Network: Polygon Mainnet (Chain ID: 137)
Gas Token: MATIC (very low fee ~0.01 MATIC/tx)
Symbol: JPYC
Polygon Address: 0x431D5dfF03120AFA4bDf332c61A6e1766eF37BF6
Decimals: 18
Network: Polygon Mainnet (Chain ID: 137)
Gas Token: MATIC (very low fee ~0.01 MATIC/tx)
✓ 設定を保存しました