Skip to main content

Payment Methods (Solana, Dodo)

Solana

Pay with SOL from a Solana wallet. The app uses Reown AppKit with a Solana adapter; Phantom and other Solana wallets are supported. Details
AspectDetails
You needA Solana wallet (e.g. Phantom) with enough SOL (for the transfer and fees)
Networkdevnet for testing; mainnet for production. Wallet and app must use the same network.
RecipientTREASURY_WALLET (from /api/payment/config).
FlowConnect wallet (header) → Payment page → choose Solana → approve transaction → redirect to Execution

Dodo (Card / UPI)

Pay with Visa, Mastercard, UPI, or other cards via Dodo Payments. You are redirected to Dodo’s hosted checkout and back to Scriptonia. Details
AspectDetails
You needA card or UPI accepted by Dodo. No wallet required.
AmountSet in Dodo (often aligned with UNIFIED_PRICE_USD, e.g. ~$4 USD).
FlowChoose CardPay with Card → Dodo Checkout → complete payment → redirect to /payment/success → verification → Execution
Platform mapping
  • Selected platform (Website, Web Application, Android, iOS) maps to a Dodo product
  • Product and price are defined in the Dodo dashboard

Setting Up Phantom Wallet

Phantom is one of the supported Solana wallets. You connect via the wallet button in the header (Reown AppKit).

1. Install Phantom

  • Browser: https://phantom.app → Chrome, Brave, Edge, Firefox
  • Mobile: App Store or Google Play

2. Create or import a wallet

  • New: Create wallet and back up seed phrase
  • Import: Enter existing seed phrase

3. Get SOL

  • Devnet: Use a devnet faucet; switch Phantom to Devnet
  • Mainnet: Buy SOL and withdraw to Phantom;
  • Keep SOL for transaction fees

4. Connect on Scriptonia

  • Use the wallet button in the header
  • Choose Phantom (or another Solana wallet)
  • Approve connection
  • Wallet state appears in header
Note
  • Payment page does not connect the wallet
  • You must connect via the header before paying

Payment Process


Solana

  1. Idea → Intent → Platform
  2. Open Payment page (/payment?sessionId=...&platform=...)
  3. Ensure wallet is connected via header
  4. Select Solana
  5. Click Pay
  6. Sign transaction in wallet
  7. On confirmation → redirected to Execution

Dodo (Card)

  1. Idea → Intent → Platform
  2. Open Payment page
  3. Select Card
  4. Click Pay with Card
  5. Complete checkout on Dodo
  6. Redirect to /payment/success?sessionId=...&platform=...
  7. App verifies payment via /api/dodo/confirm-payment
  8. Redirect to Execution

After payment

  • Solana
    • /api/payment called
    • Workflow updated with transactionSig
    • paymentMethod: 'solana'
  • Dodo
    • /api/dodo/confirm-payment (and webhook)
    • Workflow updated with dodoPaymentId
    • paymentMethod: 'dodo'
Both lead to Execution.

Troubleshooting Payments


Solana

IssueWhat to check
Insufficient fundsEnough SOL + fees
Use header wallet buttonConnect wallet via header first
RPC error / timeoutCheck RPC or HELIUS_RPC_URL
Wrong networkWallet and app network must match
Wallet not signingUnlock Phantom; reconnect
Invalid agent addressTREASURY_WALLET missing or wrong
Tx succeeded but workflow failedContact support with sessionId and tx signature

Dodo

IssueWhat to check
Failed to create checkoutCheck DODO_API_KEY and product
Redirect failsBrowser blockers or URL issues
Stuck on “Verifying Payment”Check /api/dodo/confirm-payment and URL params
Verification failedContact support with sessionId and payment_id
Paid but Execution blockedWorkflow not updated; contact support

General

IssueWhat to check
No Active SessionStart from Home → Idea → Intent → Platform
Workflow context not foundSession lost; restart or contact support
Payment ok, Execution failsRetry with same sessionId; contact support