+ Fast Approval+ No Enterprise Paperwork+ Developer Friendly

Accept Payments in 15 Minutes, Not 15 Days.

Built for solo builders and indie startups. Get a payment gateway account approved quickly and start accepting payments today.

15 min

Typical approval

QRIS

Payment method

API

First flow

Live payments
Rp24.850.000

All-time GMV

Rp248.5M

All-time Withdraw

Rp223.7M

Successful Payments

12.840

Withdraw Count

428

const payment = await seapay.createPayment({

amount: 24850000,

method: "qris",

customer: "founder"

});

The Problem

Traditional Payment Gateways Slow Builders Down

Long approval process
Wait days or weeks before you can launch.
Too much paperwork
Built for corporations, not solo founders.
Product ready, payments not
Your app is done, but customers still cannot pay.

The Shortcut

Launch Faster

SeaPay removes the enterprise friction from payment onboarding so Indonesian builders can charge customers while momentum is still fresh.

15 Minute Approval

Simple onboarding designed for builders.

QRIS Payments

Accept QRIS checkout with one clean payment flow.

Easy Integration

Simple APIs and developer-friendly documentation.

Simple Pricing

One transparent fee. Keep your revenue intact.

Every successful SeaPay transaction costs 1%. You can absorb the fee yourself or pass it to the buyer at checkout, so your business receives the full payment amount.

Transaction fee

1%

Only charged on successful payments.

Payment priceRp100.000
Buyer pays feeRp1.000
Buyer paysRp101.000
You receiveRp100.000

Pass-through ready

Show the fee clearly during checkout and let customers cover payment costs.

System Overview

Start with a token, then create payment links from your app.

SeaPay API access requires an authorization token before you can request payment links or receive webhook events. To get your token, contact support through the button below.

Request Token
POST/api/v1/payment-links
Request a payment link
Send the amount, buyer details, and callback URL. SeaPay returns a QRIS checkout link that you can redirect the buyer to or share directly.
curl -X POST https://api.seapay.id/v1/payment-links \
  -H "Authorization: Bearer $SEAPAY_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "external_id": "inv-1024",
    "amount": 24850000,
    "currency": "IDR",
    "description": "SeaPay Pro annual plan",
    "customer": {
      "name": "Tania Wijaya",
      "email": "tania@example.com",
      "phone": "+6281234567890"
    },
    "payment_method": "qris",
    "success_redirect_url": "https://app.example.com/success",
    "failure_redirect_url": "https://app.example.com/failed",
    "webhook_url": "https://app.example.com/api/seapay/webhook"
  }'
{
  "id": "plink_9s1k3m7",
  "external_id": "inv-1024",
  "status": "pending",
  "amount": 24850000,
  "currency": "IDR",
  "checkout_url": "https://pay.seapay.id/plink_9s1k3m7",
  "expires_at": "2026-06-11T15:49:39+07:00",
  "created_at": "2026-06-11T07:49:39+07:00"
}
WEBHOOK/webhooks/seapay
Receive finished transaction events
When the buyer completes payment, SeaPay calls your webhook so you can activate access, mark invoices as paid, or unlock a digital product.
POST https://merchant.example.com/webhooks/seapay
SeaPay-Signature: t=1781153379,v1=9f2...
Content-Type: application/json

{
  "event": "payment.succeeded",
  "transaction_id": "trx_71hg8p",
  "payment_link_id": "plink_9s1k3m7",
  "external_id": "inv-1024",
  "amount": 24850000,
  "fee": 248500,
  "net_amount": 24601500,
  "currency": "IDR",
  "paid_at": "2026-06-11T07:52:04+07:00",
  "payment_method": "qris"
}
{
  "received": true,
  "transaction_id": "trx_71hg8p",
  "message": "Payment marked as paid"
}

From idea to paid

You can start accepting payments today.

01

Register
Submit your information.

02

Get Approved
Fast verification process.

03

Integrate API
Copy, paste, and connect.

04

Start Receiving Payments
Accept payments immediately.

Perfect for

Built around real builder workflows.

SaaS foundersAI buildersIndie hackersVibe codersAgency ownersFreelancersDigital product sellersTelegram bot buildersOnline course sellers

For Devs

Built For Developers

Keep your checkout lean, your webhooks predictable, and your test environment ready before your first production payment.

REST APIWebhooksPayment linksDocumentationSandbox environment

const seapay = new SeaPayClient({

secret: "sk_live_...",

});


await seapay.paymentLinks.create({

amount: 100000,

buyer: "builder@example.com",

});

Social Proof

Builders launch revenue without waiting on enterprise sales.

"We shipped our AI writing tool on Friday morning and accepted our first IDR payment before lunch. No back-and-forth procurement drama."

RP

Raka Pratama

Solo founder, NotaAI

"The API felt familiar immediately. I wired checkout, webhook handling, and payment confirmation in one focused afternoon."

NK

Nadia Kusuma

AI builder, PromptDesk

"SeaPay matched how indie teams actually work: quick approval, sandbox first, then live payments without a corporate packet."

KW

Kevin Wijaya

SaaS developer, FormPilot

Revenue starts now

Stop Waiting. Start Charging.

Your next customer should not wait for your payment gateway approval.

Get Approved Today