Initialize transaction
Changed onCreates a pending transaction and returns a hosted checkout URL. A 201 means the request was accepted, not that the customer has paid: verify before releasing value.
Request
- Base URLhttps://api.kyshi.co
- AuthAPI key in header x-api-key
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Request body
Example request
{
"email": "dom@yopmail.com",
"firstName": "Dom",
"lastName": "Aba",
"phoneNumber": "2250734567890",
"localCurrency": "XOF",
"reference": "ORDER-100045",
"channels": [
"mobile_money"
],
"amount": 1000,
"amountCurrency": "local",
"metadata": {
"orderId": "ORDER-100045",
"source": "checkout"
},
"redirectUrl": "https://merchant.example.com/payments/return",
"feeBearer": "CUSTOMER",
"taxChargeable": "EXCLUSIVE",
"chargeType": "BANK_TRANSFER",
"expiresAt": "2026-09-30T23:59:59Z"
}Response
Success.
Example response
{
"status": true,
"message": "Success",
"code": 200,
"data": {}
}Changes
- breaking
added the new required request property
- breaking
added the new required request property
- breaking
the request property
became required - breaking
the request property
became required - breaking
the request property
became required - breaking
the request property
became required - breaking
the request property
became required - breaking
the request property
became required - breaking
the request property
became required - breaking
the request property
became required - breaking
the request property
became required - info
the endpoint scheme security
ApiKeyAuthwas added to the API - info
the
request property format was generalized fromemailto no format - info
added
subschema #2to the response bodyallOflist for the response status - info
removed from the response body
allOflist for the response status - info
added the non-success response with the status
- info
added the non-success response with the status
- info
added the non-success response with the status
- info
added the non-success response with the status
- info
added the non-success response with the status
- info
added the non-success response with the status
- breaking