The majority of transactions costs on sparkswap have parallels to the transaction costs on typical custodial cryptocurrency exchanges. There are a few exceptions, but they are all enumerated here.
|Depositing Funds||On-chain transaction fee|
|Withdrawing Funds||On-chain transaction fee|
|Settlement Costs||1000 Satoshi + 0.0001%|
Depositing & Committing Funds
Making funds available for trading on sparkswap is a two-step process.
The first step is moving funds into your sparkswap wallet, which requires an on-chain transaction, just like depositing funds onto a typical custodial exchange. You will incur an on-chain transaction fee that will vary based on your sending wallet, current congestion, and the currency you are sending.
The second step is committing those funds to be available for trading. Under the hood, you are opening a Payment Channel Network channel, which requires an on-chain transaction. Again this will depend on current congestion and the currency that you are sending.
Releasing & Withdrawing Funds
Similar to the process of making funds available for trading, withdrawing them out of your sparkswap is again a two-step process.
The first step is releasing funds from trading. Under the hood this closes a Payment Channel, and requires an on-chain transaction with its corresponding fee.
The second step is sending them to another wallet, which again requires another on-chain transaction.
sparkswap does not (and is unable to) charge any fees to withdraw funds since it has no control over them - all the fees are on-chain fees.
For every order you place on sparkswap, the Relayer will charge a fee of 0.1% of the order size in the currency you are sending. For example, if you are placing a BID in BTC/LTC, your fee will be charged in LTC since that is the currency you are sending.
If you cancel the order (or it is cancelled due to disconnect) prior to the order being filled, the Relayer will refund the fee in its entirety.
For every order that you fill on sparkswap, the Relayer will charge a fee of 0.1% of the order size in the currency you are sending. For example, if you are filling a BID in BTC/LTC, your fee will be charged in BTC since that is the currency you are sending.
If your fill is rejected by the Relayer, either because the order has been cancelled or filled by another Broker, the Relayer will refund the fee in its entirety.
In order to economically disincentivize spoofing and reneging on orders that have been executed, the Relayer requires deposits from both the Maker and the Taker.
Deposits are collected at the same time as fees, and are collected from the same currency. The currency deposit rate is 0.1% of the order size, but it may vary based on market conditions to ensure that Brokers are appropriately incentivized to honor their executed orders.
Deposits are returned to Makers when they cancel orders prior to the order being filled, or when they prove that the order has been settled by sending the swap preimage to the Relayer.
Deposits are returned to Takers when their fill is rejected, or when the Maker proves that the order has been settled by sending the swap preimage to the Relayer.
Since trades are settled via Payment Channel Network swaps, they need to pay the fees associated with sending the payments through the Network.
The Taker is responsible for the Network routing fees on the first leg of the swap, and the Maker is responsible for the Network routing fees on the second leg of the swap.
In its current state, the routes go only through the Relayer, so the only fees are the Relayer's routing fees on each leg of the swap.
The Relayer currently charges 1000 Satoshi + 0.0001% for routing.