Swap Order
Initiate Swap Order
Last updated
Initiate Swap Order
Last updated
This endpoint is called when a customer wants to make either a fiat-fiat or crypto-crypto swap for currencies.
It is an POST
endpoint that takes your secretKey
as a required parameter in the Header which verifies the integrity of your third-party application.
Your request should contain properties like the customer's email, phone number, customer deposit, and receipt methods, etc. See the example below;
POST
https://canary.xendbridge.com/api/peertopeerorder/swap/initiate
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Parameter | Type | Definitions |
---|---|---|
Parameter | Type | Definitions |
---|---|---|
secretKey*
string
{your_secretKey}
email*
string
annadoe@gmail.com
phoneNumber
string
07012345678
userName
string
annadoe
payInCurrencyCode*
string
BUSD
payInCurrencyNetwork*
string
BEP20
receieveInCurrencyCode*
string
USDT
receieveInCurrencyNetwork*
string
POLYGON
orderAmount*
decimal
50
consumerDepositMethod
object
paymentMethod*
string
Crypto
paymentData
object
consumerReceiptMethod
object
paymentMethod*
string
Crypto
paymentData
object
walletAddress*
String
0x52434Ac4BE04393e020c9b16C327d04d4367Cbcd
network*
string
POLYGON
walletAddress
string
0x52434Ac4BE04393e020c9b16C327d04d4367Cbcd
network
string
BEP-20
emailAddress
string
Required
This is the consumer's email address.
phoneNumber
string
Required
This is the consumer's phone number.
userName
string
Required
This is the consumer's username
payInCurrencyCode
enum
Required
This is the currency code to pay with. Must be BUSD
for sell order.
receiveInCurrencyCode
enum
Required
This is the currency code to receive the currency in. Must be NGN
for buy order.
orderAmount
decimal
Required
The order amount by the consumer.
consumerDepositMethod
object
Required
This holds the properties of the deposit method of the consumer.
paymentMethod
enum
Required
The payment method by which transactions are made. It should be CRYPTO
for sell order.
paymentData
object
Required
This holds the properties of the wallet details of the consumer.
walletAddress
string
Required
The crypto wallet address of the consumer.
network
enum
Required
This is the network on which the address is on. It could be BEP20
, ERC20
or POLYGON
.
consumerReceiptMethod
object
Required
This holds the properties of the consumer receiving method. The paymentMethod
prop must be Bank
.
paymentData
object
Required
This holds the properties of the consumer receiving bank account details.
accountName
string
Required
This is the account name of the consumer.
accountNumber
string
Required
The local bank account number of the consumer
bankName
string
Required
This is the bank name of the consumer.
orderReference
string
This the reference to a particular order.
receiveInCurrencyCode
enum
This is the currency code to receive the currency in.
payInCurrencyCode
enum
This is the currency code to pay with.
receivableAmount
decimal
This the receivable amount of the currency.
payableAmount
decimal
This is the payable amount of the currency.
providerName
string
This the provider's name.
providerFirstName
string
This is the provider's first name.
providerLastName
string
This is the provider's last name.
providerEmail
string
This is the provider's email address.
initiatedAt
DateTime
The date time the order was made.
orderExpiryDate
DateTime
The expiry date time of the order.
initiatedAtTimestamp
long
The time in milliseconds an order was made
orderExpiryTimestamp
long
The time in milliseconds of when thee order will expire.
fundedProviderAtTimeStamp
long
The time of when a customer indicates payment for an order in milliseconds.
fundedCustomerAtTimeStamp
long
The time of when a provider indicates payment of order to the customer in milliseconds
orderCompletedAtTimeStamp
long
The time in milliseconds an order was completed.
p2POrderStatus
enum
The status of the order at the curent time. It could be Submitted
, Cancelled
, Acknowledged
, FundedProvider
, FundReceivedFromUser
, FundedUser
, Completed
, OrderTimedOut
disputeStatus
enum
The status of the dispute on an order. It could either be NoDispute
, DisputeRaisedByCustomer
, DisputeRaisedByProvider
, DisputeRaisedByBothParties
, DisputeResolved
or CouldNotBeResolved
.
orderType
enum
This is the status of the order, whether it's a Buy
or Sell
.
providerContact
object
This is holds props of a provider's contact information.
phoneNumber
string
The phone number of either the provider or customer.
whatsappNumber
string
The whatsapp number of either the provider or customer.
customerContact
object
This holds the props of the contact information.
string
This is an email address of the customer.
name
string
This is the name of the customer.
phoneNumber
string
The phone number of the customer
providerPaymentMethods
object
This holds the props of the payment methods of the provider.
paymentMethod
enum
This is the method of payment. It could be Bank
or Crypto
paymentType
enum
This is the type of payment. It could be Bank
, Crypto
, UserName
or MobileMoney
.
paymentData
object
This holds the props of the payment method.
bankName
string
The bank name of the the provider or customer.
accountNumber
string
The bank account number of the provider or customer.
accountName
string
The bank account name of the provider or customer.
currency
enum
The currency in which the order was made. It could be BUSD
or NGN
.
orderPaymentMethod
object
This holds props of the payment method in which the order is to be made to.
consumerDepositMethod
object
This holds the props of the consumer deposit details.
consumerrReceiptMethod
object
This holds the props of the consumer receiving method details.
walletAddress
string
This is the crypto wallet address of the consumer.
network
enum
This is the network currently supported in the system which the wallet address is based on.
providerTransactionMetadata
o
This holds the props of the transaction metadata of an order.