{
"investmentAmount": 100000,
"currency": "NGN",
"redirectUrl": "https://google.com",
"paymentMethod": "card",
"customer": {
"name": "Jude Dike",
"email": "dikejude49@gmail.com"
},
"meta": {
"orderId": "…"
}
}
{
"investmentAmount": 100000,
"currency": "NGN",
"paymentMethod": "bank_transfer",
"customer": {
"name": "Jude Dike",
"email": "dikejude49@gmail.com"
},
"meta": {
"orderId": "…"
}
}
{
"status": "success",
"message": "Payment initiated successfully. Complete payment to buy tokens.",
"data": {
"paymentLink": "https://checkout-v2.dev-flutterwave.com/v3/hosted/pay/926e0cc3e67ebbd9fb57",
"reference": "GETXN_FI_WFMSVRKW2X6CUJ",
"investmentAmount": 100000,
"currency": "NGN",
"token": {
"_id": "683ef69f70457700022e091b",
"symbol": "FDNE",
"name": "FCMB Debt Note",
"price": 10000
},
"tokensToCredit": 10,
"creditAmount": 100500,
"fees": {
"getequity": 500,
"getequityPercent": 0.5,
"flutterwave": 1407,
"total": 1907
},
"totalCharge": 101907
}
}
{
"status": "success",
"message": "Payment initiated successfully. Complete payment to buy tokens.",
"data": {
"paymentMethod": "bank_transfer",
"reference": "GETXN_FI_GRKXXJ40NUH39P_PMCKDU_1",
"email": "wilpat45677@yopmail.com",
"virtualAccount": {
"bankName": "Mock Bank",
"accountNumber": "0067100155",
"amount": "101907.00",
"note": "Mock note",
"expiresAt": "2026-07-21 11:56:16 PM"
},
"amountToPay": 101907,
"investmentAmount": 100000,
"currency": "NGN",
"token": {
"_id": "683ef69f70457700022e091b",
"symbol": "FDNE",
"name": "FCMB Debt Note",
"price": 10000
},
"tokensToCredit": 10,
"creditAmount": 100500,
"fees": {
"getequity": 500,
"getequityPercent": 0.5,
"flutterwave": 1407,
"total": 1907
},
"totalCharge": 101907
}
}
Trade
Fund and Buy
Initiates a fund-and-buy transaction for an api client. This creates a payment (card or bank transfer) that funds the wallet and buys a token in a single flow.
POST
api
/
token
/
{id}
/
fund-buy
{
"investmentAmount": 100000,
"currency": "NGN",
"redirectUrl": "https://google.com",
"paymentMethod": "card",
"customer": {
"name": "Jude Dike",
"email": "dikejude49@gmail.com"
},
"meta": {
"orderId": "…"
}
}
{
"investmentAmount": 100000,
"currency": "NGN",
"paymentMethod": "bank_transfer",
"customer": {
"name": "Jude Dike",
"email": "dikejude49@gmail.com"
},
"meta": {
"orderId": "…"
}
}
{
"status": "success",
"message": "Payment initiated successfully. Complete payment to buy tokens.",
"data": {
"paymentLink": "https://checkout-v2.dev-flutterwave.com/v3/hosted/pay/926e0cc3e67ebbd9fb57",
"reference": "GETXN_FI_WFMSVRKW2X6CUJ",
"investmentAmount": 100000,
"currency": "NGN",
"token": {
"_id": "683ef69f70457700022e091b",
"symbol": "FDNE",
"name": "FCMB Debt Note",
"price": 10000
},
"tokensToCredit": 10,
"creditAmount": 100500,
"fees": {
"getequity": 500,
"getequityPercent": 0.5,
"flutterwave": 1407,
"total": 1907
},
"totalCharge": 101907
}
}
{
"status": "success",
"message": "Payment initiated successfully. Complete payment to buy tokens.",
"data": {
"paymentMethod": "bank_transfer",
"reference": "GETXN_FI_GRKXXJ40NUH39P_PMCKDU_1",
"email": "wilpat45677@yopmail.com",
"virtualAccount": {
"bankName": "Mock Bank",
"accountNumber": "0067100155",
"amount": "101907.00",
"note": "Mock note",
"expiresAt": "2026-07-21 11:56:16 PM"
},
"amountToPay": 101907,
"investmentAmount": 100000,
"currency": "NGN",
"token": {
"_id": "683ef69f70457700022e091b",
"symbol": "FDNE",
"name": "FCMB Debt Note",
"price": 10000
},
"tokensToCredit": 10,
"creditAmount": 100500,
"fees": {
"getequity": 500,
"getequityPercent": 0.5,
"flutterwave": 1407,
"total": 1907
},
"totalCharge": 101907
}
}
The token ID to buy
The amount to invest
The currency code (e.g.,
NGN, USD)URL to redirect after payment completion. Required when
paymentMethod is card. Not needed for bank_transfer.Preferred payment method. Supported values:
card, bank_transfer. When bank_transfer is used, virtual account details are returned instead of a payment link.Object containing customer details (
name and email).Object containing additional information like
orderId.{
"investmentAmount": 100000,
"currency": "NGN",
"redirectUrl": "https://google.com",
"paymentMethod": "card",
"customer": {
"name": "Jude Dike",
"email": "dikejude49@gmail.com"
},
"meta": {
"orderId": "…"
}
}
{
"investmentAmount": 100000,
"currency": "NGN",
"paymentMethod": "bank_transfer",
"customer": {
"name": "Jude Dike",
"email": "dikejude49@gmail.com"
},
"meta": {
"orderId": "…"
}
}
{
"status": "success",
"message": "Payment initiated successfully. Complete payment to buy tokens.",
"data": {
"paymentLink": "https://checkout-v2.dev-flutterwave.com/v3/hosted/pay/926e0cc3e67ebbd9fb57",
"reference": "GETXN_FI_WFMSVRKW2X6CUJ",
"investmentAmount": 100000,
"currency": "NGN",
"token": {
"_id": "683ef69f70457700022e091b",
"symbol": "FDNE",
"name": "FCMB Debt Note",
"price": 10000
},
"tokensToCredit": 10,
"creditAmount": 100500,
"fees": {
"getequity": 500,
"getequityPercent": 0.5,
"flutterwave": 1407,
"total": 1907
},
"totalCharge": 101907
}
}
{
"status": "success",
"message": "Payment initiated successfully. Complete payment to buy tokens.",
"data": {
"paymentMethod": "bank_transfer",
"reference": "GETXN_FI_GRKXXJ40NUH39P_PMCKDU_1",
"email": "wilpat45677@yopmail.com",
"virtualAccount": {
"bankName": "Mock Bank",
"accountNumber": "0067100155",
"amount": "101907.00",
"note": "Mock note",
"expiresAt": "2026-07-21 11:56:16 PM"
},
"amountToPay": 101907,
"investmentAmount": 100000,
"currency": "NGN",
"token": {
"_id": "683ef69f70457700022e091b",
"symbol": "FDNE",
"name": "FCMB Debt Note",
"price": 10000
},
"tokensToCredit": 10,
"creditAmount": 100500,
"fees": {
"getequity": 500,
"getequityPercent": 0.5,
"flutterwave": 1407,
"total": 1907
},
"totalCharge": 101907
}
}
Error Codes
| Code | HTTP Status | Description |
|---|---|---|
| TOKEN_ACCESS_DENIED_ERROR | 403 | User doesn’t have access to this token |
| DEAL_ACCESS_DENIED_ERROR | 403 | User doesn’t have access to this deal |
| TOKEN_CLOSED_ERROR | 400 | Token is closed for investment |
| TOKEN_EXITED_ERROR | 400 | Token has exited |
| AMOUNT_TOO_LOW_ERROR | 400 | Investment amount is below minimum |
| BELOW_MIN_TRADE_ERROR | 400 | Amount below minimum trade limit |
| ABOVE_MAX_TRADE_ERROR | 400 | Amount above maximum trade limit |
| INVALID_AMOUNT_ERROR | 400 | Invalid investment amount |
| PAYMENT_INITIATION_ERROR | 502 | Failed to initiate payment with provider |
| TOKEN_NOT_FOUND_ERROR | 404 | Token not found |
Was this page helpful?
⌘I
