Plutope
API Reference

On/Off Ramp API

The Partner API for Plutope's Crypto OnRamp — manage orders, query transactions, and integrate the on/off ramp widget into your product.

Overview

The On/Off Ramp Partner API lets partners manage orders and transactions programmatically, and embed Plutope's branded on/off ramp widget. All API requests are authenticated with a partner API key.

Authentication

All requests are authenticated with an API key passed in the x-api-key header. Requests with a body must also send Content-Type: application/json.

http
x-api-key: YOUR_API_KEYContent-Type: application/json

Separate keys are issued for each environment — testApiKey for development and productionApiKey for live transactions. Keep API keys secure and never expose them client-side.

Base URL

text
https:"color:#6b7280;font-style:italic">//onramp.plutope.com

Environments

Test

Use the test API key. Widget loads with env=test.

Production

Use the production API key. Widget loads with env=production (default).

Endpoints

Get Partner Transactions

GET/transactions

Retrieve a paginated list of the partner's transactions.

Headers

NameDescriptionExample
x-api-keyrequiredYour partner API key.YOUR_API_KEY
Content-TypeRequest content type.application/json

Query parameters

NameDescriptionExample
pagePage number.1
limitResults per page.10
statusOptional status filter.COMPLETED
bash
curl "https:">//onramp.plutope.com/transactions?page=1&limit=10" \  -H "x-api-key: YOUR_API_KEY" \  -H "Content-Type: application/json"
json
"color:#6b7280;font-style:italic">// Example response — confirm exact schema

Get Partner Statistics

GET/stats

Retrieve aggregate statistics for the partner account.

Headers

NameDescriptionExample
x-api-keyrequiredYour partner API key.YOUR_API_KEY
bash
curl "https:">//onramp.plutope.com/stats" \  -H "x-api-key: YOUR_API_KEY"
json
"color:#6b7280;font-style:italic">// Example response — confirm exact schema

Complete Order by External ID

POST/orders/complete

Mark an order as completed from the partner's system, referencing the partner's own external order ID.

Headers

NameDescriptionExample
x-api-keyrequiredYour partner API key.YOUR_API_KEY
Content-TyperequiredMust be JSON.application/json

Body fields

NameDescriptionExample
externalIdThe partner's order identifier.YOUR_ORDER_ID
transactionHashThe on-chain transaction hash.0x1234abcd...
notesOptional free-text note.Completed from partner system

Request body

json
{  "externalId": "YOUR_ORDER_ID",  "transactionHash": "0x1234abcd...",  "notes": "Completed from partner system"}
bash
curl -X POST "https:">//onramp.plutope.com/orders/complete" \  -H "x-api-key: YOUR_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "externalId": "YOUR_ORDER_ID",    "transactionHash": "0x1234abcd...",    "notes": "Completed from partner system"  }'
json
"color:#6b7280;font-style:italic">// Example response — confirm exact schema

Health Check

GET/health

Check API availability.

Headers

NameDescriptionExample
x-api-keyrequiredYour partner API key.YOUR_API_KEY
bash
curl "https:">//onramp.plutope.com/health" \  -H "x-api-key: YOUR_API_KEY"
json
"color:#6b7280;font-style:italic">// Example response — confirm exact schema

Widget Integration

Embed the Plutope on/off ramp widget into your product. Two integration methods are supported.

Widget app
https://onramp.plutope.com/
Widget JS
https://onramp.plutope.com/plutope-widget.js

Method 1 — iframe embed

html
<iframe  src="https:">//onramp.plutope.com/app/widget?partner=YOUR_PARTNER_ID"  width="100%"  height="600px"  frameborder="0"  allow="payment"></iframe>

Query parameters

Widget URL parameters

NameDescriptionExample
partnerrequiredYour partner ID.YOUR_PARTNER_ID
themedark | light (default: dark).dark
tokenPre-select a token.USDT
amountPre-fill an amount.100
envtest | production (default: production).production
externalIdYour order tracking ID.ORDER_123

Example URL with parameters

text
https:"color:#6b7280;font-style:italic">//onramp.plutope.com/app/widget?partner=YOUR_PARTNER_ID&theme=dark&token=USDT&amount=100&env=production&externalId=ORDER_123

Method 2 — JavaScript SDK

html
<script src="https:">//onramp.plutope.com/plutope-widget.js"></script><script>  PlutopeWidget.init({    partnerId: 'YOUR_PARTNER_ID',    container: '#widget-container',    theme: 'dark',    onSuccess: (order) => {      console.log('Order completed:', order);    },    onError: (error) => {      console.error('Widget error:', error);    }  });</script>

Responsive embed

html
<div style="position: relative; padding-bottom: 100%; height: 0;">  <iframe    src="https:">//onramp.plutope.com/app/widget?partner=YOUR_PARTNER_ID"    style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"    frameborder="0"    allow="payment"  ></iframe></div>

Customization & notes

  • The widget automatically applies the partner's branding (colors, logo).
  • Test mode uses the test API key; production uses the production API key.
  • The widget height adjusts to content — recommended minimum height 600px.

Webhooks

Plutope sends webhook notifications for order events. Always validate webhook notifications from your backend before acting on them.

json
"color:#6b7280;font-style:italic">// Webhook payload schema — to be documented

Security

  • Keep API keys secure; never expose them in client-side code.
  • Use the test API key for development, the production API key for live transactions.
  • Validate all webhook notifications server-side.

Support