OxaPay Docs
v1
v1
  • Introduction
    • Welcome to OxaPay
    • Integrations
      • Payment Link
      • Donation Service
      • Merchant Service
      • Payout Service
      • Swap Service
      • Plugins
        • WooCommerce
        • WISECP
        • Clientexec
        • Blesta
        • WHMCS
        • PrestaShop
        • Easy Digital Downloads
        • Paid Memberships Pro
        • Gravity Forms
        • Restrict Content Pro
  • API Reference
    • Payment
      • Generate Invoice
      • Generate White Label
      • Generate Static Address
      • Revoking Static Address
      • Static Address List
      • Payment Information
      • Payment History
      • Accepted Currencies
      • Payment Status Table
    • Payout
      • Generate Payout
      • Payout Information
      • Payout History
      • Payout Status Table
    • Swap
      • Swap Request
      • Swap History
      • Swap Pairs
      • Swap Calculate
      • Swap Rate
    • Common
      • Account Balance
      • Prices
      • Supported Currencies
      • Supported Fiat Currencies
      • Supported Networks
      • System Status
    • Error
  • Webhook
  • Use Cases
Powered by GitBook
On this page
  • API Request Sample Codes
  • API Response Example
  1. API Reference
  2. Swap

Swap Request

PreviousSwapNextSwap History

Last updated 3 months ago

This endpoint allows you to swap your account assets. You can swap one cryptocurrency for another instantly at the current market rate. To see the supported swap options, refer to the endpoint. Whether you're swapping Bitcoin for Tether, Tether for Litecoin, or any other supported combination, this feature ensures secure and accurate asset swaps. Swaps are processed in real-time to provide you with the best available rates.

POST https://api.oxapay.com/v1/general/swap

Authentication

You must include the General API Key in the request header to authenticate your access to the API.

Name
Type
Description

general_api_key*

string

Your General API Key for authentication and authorization.

Request Body

Name
Type
Description

from_currency*

string

to_currency*

string

amount*

decimal

Specify the amount of currency you want to swap.

{
  "data": {
    "track_id": string, // Unique identifier for the transaction, typically represented as a string (e.g., transaction ID or session ID).
    "from_currency": string, // The currency being exchanged from, e.g., 'USDT' (Tether).
    "to_currency": string, // The currency being exchanged to, e.g., 'BTC' (Bitcoin).
    "from_amount": decimal, // The amount of the "from_currency" being swapped, represented with high precision (e.g., 10 USDT).
    "to_amount": decimal, // The amount of the "to_currency" received after the swap, represented with high precision (e.g., 0.0001054 BTC).
    "rate": decimal, // The exchange rate between the "from_currency" and "to_currency" at the time of the transaction (e.g., 1 USDT = 94876.66034156 BTC).
    "date": integer // Timestamp (UNIX epoch) representing when the swap occurred, typically in seconds (e.g., 1736508792 for the time the swap was executed).
  },
  "message": string, // A message containing additional information about the result of the request.
  "error": {
    "type": string,
    "key": string,
    "message": string
  } || {}, // An object that provides details about any errors that occurred.
  "status": integer, // The status of the request response. Typically provided as a numeric code (e.g., 200 for success or other codes for errors).
  "version": string // The version of the API being used.
}

API Request Sample Codes

curl -X POST https://api.oxapay.com/v1/general/swap \
  -H "general_api_key: YOUR_GENERAL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 0.5,
    "from_currency": "BTC",
    "to_currency": "USDT"
  }'
<?php

$url = 'https://api.oxapay.com/v1/general/swap';

$data = [
    "amount" => 0.5,
    "from_currency" => "BTC",
    "to_currency" => "USDT"
];

$headers = [
    'Content-Type: application/json',
    'general_api_key: YOUR_GENERAL_API_KEY'
];

$options = array(
    'http' => array(
        'header'  => implode("\r\n", $headers),
        'method'  => 'POST',
        'content' => json_encode($data),
    ),
);

$context  = stream_context_create($options);
$response = file_get_contents($url, false, $context);
if ($response === FALSE) {
    die('Error occurred');
}

$result = json_decode($response, true);
var_dump($result);

?>
const axios = require('axios');

const url = 'https://api.oxapay.com/v1/general/swap';

const data = {
  amount: 0.5,
  from_currency: "BTC",
  to_currency: "USDT",
};

const headers = {
  'general_api_key': `YOUR_GENERAL_API_KEY`,
  'Content-Type': 'application/json',
};

axios.post(url, data, { headers })
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.error(error);
  });
import requests
import json

url = 'https://api.oxapay.com/v1/general/swap'

data = {
    "amount": 0.5,
    "from_currency": "BTC",
    "to_currency": "USDT"
}

headers = {
    'general_api_key': 'YOUR_GENERAL_API_KEY',
    'Content-Type': 'application/json'
}

response = requests.post(url, data=json.dumps(data), headers=headers)
result = response.json()
print(result)

Please make sure to replace YOUR_GENERAL_API_KEY in the code snippets with your actual General API Key.

These example code snippets demonstrate how to request the "Swap Request" endpoint using different programming languages. You can customize the data parameters according to your specific requirements.

API Response Example

{
    "data": {
         "track_id": "393831199",
         "from_currency": "USDT",
         "to_currency": "BTC",
         "from_amount": 10.0000000000,
         "to_amount": 0.0001054000,
         "rate": 94876.66034156,
         "date": 1736508792
    },
    "message": "Operation completed successfully!",
    "error": {},
    "status": 200,
    "version": "1.0.0"
}

The response example above is provided to help you understand the format and structure of the response. If you have any further questions or need assistance, please feel free to contact to your account manager.

Specify the you want to swap from.

Specify the you want to swap to.

Please note that a successful request will return status 200. In case of any issues or validation problems, refer to the corresponding for further details.

swap pairs
error
currency symbol
currency symbol