Fill a limit order
In order to fill an order, a SwappableOrder data is required as an input.
It can be retrieved from API web service or composed by maker.
Parameters
const orderWithSignature: SwappableOrder {
nonceAndMeta: '1461501637330902918203684832716283019655932542976',
expiry: 1665587100,
makerAsset: '0x6B175474E89094C44Da98b954EedeAC495271d0F',
takerAsset: '0x2b591e99afe9f32eaa6214f7b7629768c40eeb39',
maker: '0x2bb45fa7c25071ff37a49877A02b5b3986113A3A',
taker: '0x0000000000000000000000000000000000000000',
makerAmount: '1000000000000000000',
takerAmount: '2800000000',
signature: '0x97166e35e63ecab23a0c4e7ec4ec6863193b48ddcee4f9f8291ac95a05e9545c46037cdcf01445d7a2b5dd0fdce66bc9f8b49cac75be03a3ba07dc0d467387351c'
}This data can then be supplemented by additional required params and sent to ParaSwap web API to generate Augustus Swapper route for the fulfilment transaction:
const txData = await sdk.buildLimitOrderTx(
{
srcDecimals: 18,
destDecimals: 8,
userAddress: taker.address,
orders: [orderWithSignature],
})The returned transaction params can be used to send a transaction.
Example
Last updated