Currency Swaps

Trade between Bitcoin, Ethereum, Crypto and Euros

Make a swap at market rate from one currency to another. You can fetch the latest market rate using the "rates" endpoint.

The following pairs are enabled implicitly and explicitly for exchange on the Striga platform. The Ticker column references the symbol to use when interacting with exchange functions on the platform. Only the tickers listed below can be used for trading.

PairTicker
USDC/EURUSDCEUR
USDT/EURUSDTEUR
USDC/USDTUSDCUSDT
BTC/USDTBTCUSDT
BTC/USDCBTCUSDC
BTC/EURBTCEUR
ETH/EURETHEUR
MATIC/EURMATICEUR
BNB/EURBNBEUR

Please note that the amount sent in any transaction is denominated in the lowest divisible unit of the currency being sent (Eg: cents, satoshis or wei).

📘

Minimum Trade Values

Please note that all orders will not go through unless they meet the minimum order size provided by our liquidity partners, which is usually on the order of 20 EUR equivalent.

Minimum trade values are applied on the value of the order, i.e. the amount of currency that is received as the result of a swap.

Minimum order sizes typically are on the range of 10-20 EUR equivalent, following the typical minimums larger exchanges such as Kraken use. Trade minimums are not strictly checked on production and follow the trade minimums of Kraken currently.

The minimum order size goes by base currency. The base currency is the left currency in each pair. For example, BTC is the base currency in the pair BTC/EUR.

The API returns a property order which contains id, credit, debit and price with sub fields respectively. The order.id field is only present when there is a multi-currency transaction, i.e. a swap from one currency to another. In this case, the direction and ticker values are also present. The amountFloat value under credit and debit depict the value in whole currencies (EUR, BTC etc.). The amount value depicts the value in the smallest divisible unit.

An example response is shown below -

{
    "id": "1c721c03-e34a-4073-a7ec-eab99e017f7d",
    "sourceAccountId": "0148ae0856b1457ff3b59f2ac965b58e",
    "destinationAccountId": "ec7d87e7109dcc0ab6d04650762fb72f",
    "memo": "implement web-enabled synergies",
    "status": "COMMITTED",
    "txType": "CURRENCY_EXCHANGE",
    "order": {
        "id": "e165a7e2-3dee-46bc-9025-5e5c8c389eea",
        "price": "24104.93",
        "type": "buy",
        "ticker": "BTCEUR",
        "debit": {
            "currency": "EUR",
            "amountFloat": "7264.32",
            "amount": "726432"
        },
        "credit": {
            "currency": "BTC",
            "amountFloat": "0.30136241",
            "amount": "30136241"
        }
    },
    "datetime": "2023-08-23T11:35:06.057Z",
    "balanceBefore": {
        "balance": "726432",
        "currency": "cents"
    },
    "balanceAfter": {
        "balance": "0",
        "currency": "cents"
    },
    "sourceSyncedOwnerId": "b2ccf978-2da7-4ac9-9db7-5398c4c6b212",
    "destinationSyncedOwnerId": "b2ccf978-2da7-4ac9-9db7-5398c4c6b212",
    "feeEstimate": {
        "totalFee": "7389",
        "networkFee": "0",
        "ourFee": "0",
        "theirFee": "7389",
        "feeCurrency": "EUR",
        "fixedFeeDetails": {
            "amount": "50",
            "exchangeRate": "1"
        },
        "percentageFeeDetails": {
            "amount": "7339"
        }
    }
}

Ticker interpretation

JSON TradeMap -

The following trademap can be used on your application to cleanly calculate prices on buying/selling crypto currencies according to Striga's ticker structure.

toCurrency: {
    BTC: {
      fromCurrency: {
        EUR: {
          direction: 'buy',
          ticker: 'BTCEUR,
        },
        USDT: {
          direction: 'buy',
          ticker: 'BTCUSDT,
        },
        USDC: {
          direction: 'buy',
          ticker: 'BTCUSDC,
        },
      },
    },
    EUR: {
      fromCurrency: {
        USDT: {
          direction: 'sell',
          ticker: 'USDTEUR,
        },
        USDC: {
          direction: 'sell',
          ticker: 'USDCEUR,
        },
        BTC: {
          direction: 'sell',
          ticker: 'BTCEUR,
        },
        ETH: {
          direction: 'sell',
          ticker: 'ETHEUR,
        },
        BNB: {
          direction: 'sell',
          ticker: 'BNBEUR',
        },
        MATIC_POLYGON: {
          direction: 'sell',
          ticker: 'MATICEUR',
        },
      },
    },
    USDT: {
      fromCurrency: {
        EUR: {
          direction: 'buy',
          ticker: 'USDTEUR,
        },
        USDC: {
          direction: 'sell',
          ticker: 'USDCUSDT,
        },
        BTC: {
          direction: 'sell',
          ticker: 'BTCUSDT,
        },
      },
    },
    USDC: {
      fromCurrency: {
        USDT: {
          direction: 'buy',
          ticker: 'USDCUSDT,
        },
        EUR: {
          direction: 'buy',
          ticker: 'USDCEUR,
        },
        BTC: {
          direction: 'sell',
          ticker: 'BTCUSDC,
        },
      },
    },
    ETH: {
      fromCurrency: {
        EUR: {
          direction: 'buy',
          ticker: 'ETHEUR,
        },
      },
    },
    BNB: {
      fromCurrency: {
        EUR: {
          direction: 'buy',
          ticker: 'BNBEUR',
        },
      },
    },
    MATIC_POLYGON: {
      fromCurrency: {
        EUR: {
          direction: 'buy',
          ticker: 'MATICEUR',
        },
      },
    },