Developer kits

A pay with skins button for any website

Add one script and your page can open the SkinsFlow checkout in a window, a popup or a redirect. Customers never feel like they left your site.

Load it from https://pay.skinsflow.com/js/v1.js

  • Any website
  • A server that creates payments
  • HTTPS

A redirect to another site at the last step is where some customers hesitate. The pay button keeps them on your page: the SkinsFlow checkout opens in an accessible window on top of it, and closes on its own when the payment is done.

Your server creates the payment as usual. Your page passes the checkout link to the button. The customer picks CS2, Dota 2 or Rust items and accepts one Steam trade inside the window, and your page hears how it went so it can show a thank-you message right away.

It is a single script with no dependencies that works under a strict Content Security Policy. Credit the order only when your server receives the signed notice; the browser message is for your page, not for your books.

Features

What you get with Pay button

Window, popup or redirect

A dialog over your page by default, a separate popup if you prefer, or a classic redirect.

Accessible

Keyboard friendly, closes with Esc, keeps focus inside and goes full screen on phones.

Your page stays in the loop

Callbacks and events tell your page when the payment succeeds, fails or the window closes.

No code for simple pages

Mark any button with one attribute and it opens the checkout.

Strict CSP friendly

No inline code, no dependencies. Allow one script and one frame source and you are done.

What customers pay with

Real items, priced live.

Items like these are what your customers trade. Each one is valued the moment their inventory loads.

On the market right now Live prices, refreshed every few minutes
  • AK-47 | Redline (Field-Tested) AK-47 | Redline Field-Tested $24.05
  • AWP | Asiimov (Field-Tested) AWP | Asiimov Field-Tested $99.27
  • Knife ★ Karambit | Marble Fade (Factory New) Karambit | Marble Fade Factory New $937.37
  • M4A1-S | Solitude (Factory New) M4A1-S | Solitude Factory New $9.54
  • Gloves ★ Sport Gloves | Vice (Field-Tested) Sport Gloves | Vice Field-Tested $353.46
  • Desert Eagle | Printstream (Field-Tested) Desert Eagle | Printstream Field-Tested $32.78
  • Knife ★ Butterfly Knife | Fade (Factory New) Butterfly Knife | Fade Factory New $1,927.73
  • USP-S | Printstream (Field-Tested) USP-S | Printstream Field-Tested $35.05
  • M4A4 | Falak (Battle-Scarred) M4A4 | Falak Battle-Scarred $13.74
  • Glock-18 | AXIA (Field-Tested) Glock-18 | AXIA Field-Tested $17.29
Install

Set up Pay button

  1. Create a project

    In the SkinsFlow dashboard, add your site under Projects & API keys.

  2. Create payments on your server

    Use an SDK or the API to create a payment for each order and get its checkout link.

  3. Add the script

    Load the pay button script from pay.skinsflow.com on the page with your checkout.

  4. Add the button

    Give your pay button the checkout link, or call the script from your own code to open the window.

  5. Confirm on your server

    Set the Webhook URL in your project settings and fulfil orders only when your server receives the signed notice.

  6. Test, then go live

    Create payments with your test secret and try every outcome in the window.

FAQ

Pay button and skins payments

What does the pay button cost?

Nothing. The script is free. SkinsFlow charges 2.5% of each payment credited to your balance, with no setup or monthly fee.

Does it work inside an iframe or a single-page app?

Yes. The script works on any page and in single-page apps; you can open and close the checkout from your own code.

What if the popup is blocked?

The script falls back to the window over your page, so the customer can always pay.

Can I trust the success callback?

Use it to update your page, not to deliver. Deliver when your server receives the signed notice and has read the payment again.

What happens with Steam Trade Protection?

Steam can hold traded items for up to 7 days and return them to the customer in that window. A protected payment is not counted as paid yet: the window reports a protected status, and your server waits before it delivers. When the hold ends the payment completes on its own, or you can release it early in your SkinsFlow dashboard if you trust the customer.

Can I test before going live?

Yes. Turn on test mode and use your project's test secret. The checkout then shows real items with real prices but no item and no money moves, and buttons let you play every outcome: paid, protected, returned, declined. The window shows a clear Test mode banner.

Related integrations

Other ways to take skins

PHP SDK

PHP 8.0+ · ext-curl and ext-json

Create payments and check notices from any PHP site or framework.

Industries

Who uses it

Start today

Pay button, now taking skins.

Open an account, add your site, install. Verification is free.

Get started