Debit an Account
This endpoint allows you to debit a specified amount from a customer's account.
Method
- POST
URL
- /operations/debit
Input
The input data for this operation should be provided in the request body as a JSON object:
{
"amount": "Amount we want to debit",
"partnerReference": "Unique reference generated by API user",
"customer": {
"phone": "Customer's phone number preceded by the area code"
}
}
Example Request
Here's an example of how to debit an account:
{
"amount": 15000,
"partnerReference": "001",
"customer": {
"phone": "+22892685526"
}
}
Output
The API will return a JSON object with the details of the debit transaction, including:
-
Transaction Reference
-
Customer Details
-
Amount Debited
-
Transaction Status
-
Other relevant details.
HTTP Status Codes
- 200 OK: The request was successful, and the debit transaction details are returned.
Important Note:
After initiating a debit operation, a code is transmitted to the customer. You will need to confirm or cancel the debit operation based on this code.
Example Code
Here is an example of how to make a POST request to debit an account:
import axios from 'axios';
const apiKey = 'your-api-key';
const apiSecret = 'your-api-secret';
const requestData = {
amount: 15000,
partnerReference: "001",
customer: {
phone: "+22892685526"
}
};
axios.post('https://svc.test.bestcash.me/external/operations/debit', requestData, {
headers: {
'X-Auth-ApiKey': apiKey,
'X-Auth-ApiSecret': apiSecret,
'Content-Type': 'application/json'
}
})
.then(response => {
console.log('Debit Transaction Details:', response.data);
// You will need to handle the confirmation/cancellation process here
})
.catch(error => {
console.error('An error occurred:', error.message);
});
Summary
Use this endpoint to debit a specified amount from a customer's account. After initiating the transaction, remember to confirm or cancel the debit operation based on the code sent to the customer.