Skip to content
ArtaPay

ArtaPay

Any Stablecoin. Anywhere. Gasless.

Created on 10th January 2026

•

ArtaPay

ArtaPay

Any Stablecoin. Anywhere. Gasless.

The problem ArtaPay solves

ArtaPay: Gasless & Seamless Stablecoin Payments
Despite the growth of Web3, crypto payments remain too complex for real-world adoption. We identified and solved three critical barriers that prevent users from using crypto for daily transactions:
1. The Gas Fee Barrier (Solved via Account Abstraction)
Problem: New users are forced to hold native tokens (ETH or Lisk) just to send Stablecoins. If a user has 100 USDC but 0 ETH, they are stuck. This is a massive friction point for onboarding.
Solution: ArtaPay utilizes a Custom Paymaster (ERC-4337). Users pay gas fees directly using the stablecoin they are transferring (e.g., IDRX or USDC). No ETH is required in the user's wallet.

2. Currency Mismatch & Fragmented Liquidity
Problem: In cross-border scenarios, users often hold local currencies (e.g., IDRX/Rupiah), but merchants demand global currencies (e.g., USDC). Manual swapping on DEXs is slow, expensive, and confusing for non-technical users.
Solution: We built an Auto-Swap Engine powered by a custom StableSwap AMM. Users can pay with any supported token they hold, and the protocol automatically swaps it to the merchant's desired token in a single transaction.

3. High-Friction UX
Problem: The standard "Approve → Swap → Sign" flow is tedious and destroys the "scan-and-go" experience expected in digital payments.
Solution: By bundling transactions via Gelato Relay, ArtaPay offers a "One-Click Pay" experience. Users simply scan a QR code and sign once. The protocol handles gas payments, swapping, and transfers in the background.

Key Features:

  • Gasless Transactions: Native gas abstraction on Lisk Sepolia.
  • Multi-Currency Support: Unified support for 7 global stablecoins (USDC, USDT, IDRX, JPYC, EUROC, MXNT, CNHT).
  • Social Login: Seamless onboarding using Privy (Email/Socials), removing the need to manage seed phrases immediately.

ArtaPay brings a true "Cash-like" payment experience to the Lisk Network, enabling global payments with local settlement.

Smart Contract Addresses
Paymaster: 0xf6Dcf6713C4f6A87aCa8921523a093BD3C2bdd91
StableSwap: 0x0Bf527720806AAdB8688e41Dd91E954403e0B5D4
PaymentProcessor: 0x2Bb3C8754Bb503316F6bFC44F476afCc8EFFe606
StablecoinRegistry: 0x682C2619E044B7200F2e6198835C934AB3a7199C
SimpleAccountFactory: 0x91E60e0613810449d098b0b5Ec8b51A0FE8c8985

MockStableCoin (USDC): 0x2cf57816dF74172E64F812492a9B80ee96dDb1FE
MockStableCoin (USDT): 0xa3f3aA5B62237961AF222B211477e572149EBFAe
MockStableCoin (IDRX): 0xFC7E8c60315e779b1109B252fcdBFB8f3524F9B6
MockStableCoin (JPYC): 0xc1AD994F03A74f76e2A971e91C61e0E2A24D51a4
MockStableCoin (EURC): 0xF73E974a4bcbd80C70aD9BBDcf8850682F359BDB
MockStableCoin (MXNT): 0x58A811937A9bd10B3F1DFDA5771bC00D078CFe33
MockStableCoin (CNHT): 0x5f64Eb0fd7cb20539BEbDE75Ba4dEe17Ba3b7535

Challenges we ran into

1. The "Custom Paymaster vs. Bundler" Battle

  • The Problem: We decided to build a Custom Paymaster from scratch (instead of using a standard preset) to handle stablecoin payments. However, connecting it to the ERC-4337 Bundler was a nightmare. We kept getting opaque error codes (like "AA33" or "AA23") because the Bundler rejected our custom logic for validating userOp.
  • The Solution: We had to deeply debug the paymasterAndData encoding. We iteratively refined our validatePaymasterUserOp function to ensure it returned the correct context and validationData exactly as the EntryPoint expected, finally getting the Bundler to accept our transactions.

2. Gas Price Volatility & The 5% Safety Guard

  • The Problem: We charge users in Stablecoins (e.g., IDRX), but the network charges us in ETH. Since gas prices on Lisk can spike in seconds, there was a risk: we might collect 500 IDRX from the user, but end up paying 600 IDRX worth of ETH for gas—losing money on the transaction.
  • The Solution: We couldn't just use a static fee. We implemented a 5% Gas Slippage Guard (Markup) in our calculation logic. This buffer covers sudden gas price spikes between the moment the user signs and the moment the transaction is mined, ensuring the protocol stays solvent.

3. Securing the "Free Gas" from Abuse

  • The Problem: Since we sponsor gas, malicious actors could bypass our frontend and call our Paymaster contract directly to drain our ETH balance for their own transactions. Simple on-chain whitelisting was too rigid and expensive to update.
  • The Solution: We moved the security check off-chain. We implemented a Backend (BE) Verifier. The Paymaster contract now requires a cryptographic signature generated by our backend. The backend only issues this signature after verifying the user's identity and request validity, effectively blocking any direct contract abuse.

Tracks Applied (1)

Winner Classification

ArtaPay fits perfectly into the "Stablecoins & Localized Payments" theme. The hackathon challenges builders to create a...Read More

Discussion

Builders also viewed

See more projects on Devfolio