Skip to main content

Overview

Shakesco Checkout provides a hosted payment page for accepting recurring subscriptions. Users complete payment requests in a secure, pre-built interface. Two integration options:
  • Redirect users to checkout URL
  • Embed checkout in iframe
Checkout interface

How It Works

1

Create checkout session

Call /start_session API endpoint with payment details
2

Receive checkout URL

API returns URL valid for 5 minutes
3

User completes checkout

Redirect or embed the checkout page
4

User approves in app

User accepts request in Shakesco app
5

Verify payment

Check payment status via /has_paid endpoint

Quick Start

1. Create session: See Start Session API for full documentation. 2. Redirect user:
const response = await fetch("https://autopay.shakesco.com/start_session", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    auto_address: YOUR_AUTO_ADDRESS,
    network: "137",
    period: "2592000",
    currency_code: "USD",
    amount: "20",
    redirect_url: "https://yoursite.com/success",
    // ... other params
  }),
});

const { url } = await response.json();
window.location.href = url; // Redirect to checkout
3. Handle redirect: User returns to your redirect_url after checkout. Verify payment:
const hasPaid = await checkPaymentStatus(userAddress);
if (hasPaid) {
  // Grant service access
}

Configuration Options

Payment Types

  • Recurring subscriptions - Set period > 0
  • One-time payments - Set period: "0"
  • Split payments - Enable should_split: true

Token Support

Accept multiple tokens by passing array:
token_address: ["Polygon", "USDC", "DAI"];
See supported tokens.

Split Payments

Allow multiple users to share costs:
should_split: true,
number: "2" // Allows 2 splitters + group leader

Session Expiration

Checkout URLs expire after 5 minutes. Generate a new session if needed.

API Reference