FurlPay Docs
Open App
  • Introduction
  • Quickstart
  • For AI Agents
  • Monorepo
  • API Routes
  • Authenticationnew
  • Webhook Eventsnew
  • Error Codesnew
  • Rate Limitsnew
  • Agentic Payments (x402)
  • Agent Trust & Mandates (TAP)
  • CCTP Cross-Chainnew
  • LI.FI Swapsnew
  • FurlPay Travels (Travel MCP)
  • Solana Actions & Blinks
  • Claude Connectornew
  • AI Assistants
  • Stripe Crypto
  • Persona KYC
  • MiCA Roadmap
  • Security Posturenew
  • MPC & WebAuthn
  • Help Centernew
  • Getting Started
  • KYC Verification
  • Passkeys & Biometrics
  • Privacy & Data Protection
  • Transaction Statuses
  • Gasless Transfers
  • Deposits & Withdrawals
  • Managing Virtual Cards
  • Freezing & Unfreezing Cards
  • Declined Transactions
  • SDK & API Support
  • x402 Monetization Basics
  • Booking Travel
  • Travel Refunds & Cancellations

Resources

  • Changelog
  • System Status
  • OpenAPI Spec
  • Community
  • GitHub
Docs/Payments/Solana Actions & Blinks

Payments

Solana Actions & Blinks

Turn any Furlpay checkout into a shareable link that unfurls into a signable payment widget — a Blink — on X, Discord, or any Blink-aware client. Built on the Solana Actions specification.

Endpoints

MethodPathDescription
GET/actions.jsonDiscovery rules mapping /pay/* → the Action API
GET/api/actions/pay/[orderId]Blink metadata: icon, title, pay buttons
POST/api/actions/pay/[orderId]?asset=USDC|SOLBase64 transfer transaction to sign
OPTIONS/api/actions/*CORS preflight for Blink clients

Spec-correct by construction

These are the details most implementations get wrong — and Furlpay handles them:

  • Dollar-denominated amounts — the SOL path converts via a live SOL/USD price rather than charging "25 SOL" for a $25 order.
  • Idempotent merchant ATA creation — the first payment to a fresh token account doesn't fail.
  • transferChecked — validates mint + decimals on-chain, not a bare transfer.
  • Full header set — ACTIONS_CORS_HEADERS plus X-Action-Version and X-Blockchain-Ids (sRFC 31), and an OPTIONS handler so Blinks render.

Try it

bash
# metadata a Blink client reads to render the widget
curl https://furlpay.com/api/actions/pay/order_9f21

# then paste that URL into https://dial.to to render the Blink

Starter template

A standalone Next.js starter is open-sourced at github.com/FurlPay/furlpay-solana-actions-template — clone it to ship spec-correct Blinks in minutes.
Did this page help?
Edit this page on GitHub

← Previous

FurlPay Travels (Travel MCP)

Next →

Claude Connector