PCI Compliance
Individuel (KYC) [Bêta]
Webhooks
Intégrations
Webhooks
Overview
Lorsque des événements se produisent sur nos systèmes, vous serez notifiés sur vos urls ipn.
Webhook List
Il est nécessaire de vérifier que les événements proviennent bien de ALAL afin d’éviter de créer des transactions dues à un événement frauduleux.
Pour vérifier les événements, validez l’en-tête x-alal-signature envoyé avec l’événement. La signature HMAC SHA512 est la charge utile payload
de l’événement signée avec votre clé secrète ALAL_API_KEY
.
Copy
const crypto = require('crypto');
const webhookSecret = process.env.ALAL_API_KEY;
// Using Express
app.post("/webhook_url", function(req, res) {
//validate event
const hash = crypto.createHmac('sha512', webhookSecret).update(JSON.stringify(req.body)).digest('hex');
if (hash == req.headers['x-alal-signature']) {
// Retrieve the request's body
const event = req.body;
// Do something with event
}
res.send(200);
});
Card Users Events
CardUser Verification Successful
Copy
{
"event": "card_user_verification.successful",
"data": {
"reference": "88c2f29c-2fba-40f1-a303-b33008e42fe9",
"first_name": "Testeur",
"last_name": "glock",
"address": "Pikine Texaco 11",
"id_no": "17521999133211635",
"phone": "221776854872",
"email": "testingboy@gmail.com",
"status": "passed"
}
}
CardUser Verification Failed
Copy
{
"event": "card_user_verification.failed",
"data": {
"reference": "88c2f29c-2fba-40f1-a303-b33008e42fe9",
"first_name": "Testeur",
"last_name": "glock",
"address": "Pikine Texaco 11",
"id_no": "17521999133211635",
"phone": "221776854872",
"email": "testingboy@gmail.com",
"status": "failed"
}
}
Cards Events
Card Creation Successful
Copy
{
"event": "card_creation.successful",
"data": {
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_number": "4634716555196705",
"card_brand": "Visa",
"card_type": "virtual",
"cvv2": "363",
"expiry": "2027-06",
"balance": "0",
"status": "issued"
}
}
Card Creation Failed
Copy
{
"event": "card_creation.failed",
"data": {
"identifier": "02584796325414",
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_user_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_brand": "mastercard",
"card_type": "virtual",
"last_four": "XXXX",
"balance": "0",
"status": "unissued",
"created_at": "2024-01-25"
}
}
Card Link Successful
Copy
{
"event": "card_link.successful",
"data": {
"identifier": "02584796325414",
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_user_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_brand": "mastercard",
"card_type": "physical",
"last_four": "XXXX",
"balance": "0",
"status": "issued",
"created_at": "2024-01-25"
}
}
Card Link Failed
Copy
{
"event": "card_link.failed",
"data": {
"identifier": "02584796325414",
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_user_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_brand": "mastercard",
"card_type": "physical",
"last_four": "XXXX",
"balance": "0",
"status": "issued",
"created_at": "2024-01-25"
}
}
Card Freeze Successful
Copy
{
"event": "card_freeze.successful",
"data": {
"identifier": "02584796325414",
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_user_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_brand": "mastercard",
"card_type": "physical",
"last_four": "XXXX",
"balance": "0",
"status": "issued",
"created_at": "2024-01-25"
}
}
Card Freeze Failed
Copy
{
"event": "card_freeze.failed",
"data": {
"identifier": "02584796325414",
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_user_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_brand": "mastercard",
"card_type": "physical",
"last_four": "XXXX",
"balance": "0",
"status": "issued",
"created_at": "2024-01-25"
}
}
Card Unfreeze Successful
Copy
{
"event": "card_unfreeze.successful",
"data": {
"identifier": "02584796325414",
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_user_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_brand": "mastercard",
"card_type": "physical",
"last_four": "XXXX",
"balance": "0",
"status": "issued",
"created_at": "2024-01-25"
}
}
Card Unfreeze Failed
Copy
{
"event": "card_unfreeze.failed",
"data": {
"identifier": "02584796325414",
"reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_user_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"card_brand": "mastercard",
"card_type": "physical",
"last_four": "XXXX",
"balance": "0",
"status": "issued",
"created_at": "2024-01-25"
}
}
Card Transaction Events
Recharge Successful
Copy
{
"event": "card_recharge.successful",
"data": {
"reference": "b60f55b1-922a-406a-8417-g54atb0849ttb22c",
"card_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"status": "success",
"kind": "recharge",
"merchant": "",
"amount": 2000,
"created_at": "2023-06-22T10:40:17.000000Z"
}
}
Recharge Failed
Copy
{
"event": "card_recharge.failed",
"data": {
"reference": "b60f55b1-922a-406a-8417-g54atb0849ttb22c",
"card_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"status": "failed",
"kind": "recharge",
"merchant": "",
"amount": 2000,
"created_at": "2023-06-22T10:40:17.000000Z"
}
}
Withdraw Successful
Copy
{
"event": "card_withdraw.successful",
"data": {
"reference": "b60f55b1-922a-406a-8417-g54atb0849ttb22c",
"card_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"status": "success",
"kind": "withdraw",
"merchant": "Netflix SA",
"amount": 2000,
"created_at": "2023-06-22T10:40:17.000000Z"
}
}
Withdraw Failed
Copy
{
"event": "card_withdraw.failed",
"data": {
"reference": "b60f55b1-922a-406a-8417-g54atb0849ttb22c",
"card_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"status": "failed",
"kind": "withdraw",
"merchant": "Netflix SA",
"amount": 2000,
"created_at": "2023-06-22T10:40:17.000000Z"
}
}
Reverse Successful
Copy
{
"event": "card_reverse.successful",
"data": {
"reference": "b60f55b1-922a-406a-8417-g54atb0849ttb22c",
"card_reference": "9c54515e-7890-44f9-8cc2-a85b80322b98",
"status": "success",
"kind": "reversed",
"merchant": "Netflix SA",
"amount": 2000,
"created_at": "2023-06-22T10:40:17.000000Z"
}
}
Card Sale Successful
Copy
{
"event": "card_sale.successful",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "success",
"kind": "card-sale",
"merchant": "Alal",
"amount": 4000,
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Card To Bank Successful
Copy
{
"event": "card_to_bank.successful",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "success",
"kind": "card_to_bank",
"merchant": "Alal",
"amount": 4000,
"card_balance": 8000,
"meta": null,
"bank_name": "YOUR_BANK_NAME",
"bank_id": "YOUR_BANK_IDENTIFIER",
"bank_account_name": "YOUR_BANK_ACCOUNT_NAME",
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Card To Bank Failed
Copy
{
"event": "card_to_bank.failed",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "failed",
"kind": "card_to_bank",
"merchant": "Alal",
"amount": 4000,
"card_balance": 8000,
"meta": null,
"bank_name": "YOUR_BANK_NAME",
"bank_id": "YOUR_BANK_IDENTIFIER",
"bank_account_name": "YOUR_BANK_ACCOUNT_NAME",
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Card To Wallet Successful
Copy
{
"event": "card_to_wallet.successful",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "success",
"kind": "card_to_wallet",
"merchant": "Alal",
"amount": 4000,
"card_balance": 8000,
"meta": null,
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Card To Wallet Failed
Copy
{
"event": "card_to_wallet.failed",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "failed",
"kind": "card_to_wallet",
"merchant": "Alal",
"amount": 4000,
"card_balance": 8000,
"meta": null,
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Wallet to Card Successful
Copy
{
"event": "wallet_to_card.successful",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "success",
"kind": "wallet_to_card",
"merchant": "Alal",
"amount": 4000,
"card_balance": 8000,
"meta": null,
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Wallet to Card Failed
Copy
{
"event": "wallet_to_card.failed",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "failed",
"kind": "wallet_to_card",
"merchant": "Alal",
"amount": 4000,
"card_balance": 8000,
"meta": null,
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Card Transaction Cancelled
Copy
{
"event": "card_transaction.cancelled",
"data": {
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"card_reference": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"status": "cancelled",
"kind": "wallet_to_card",
"merchant": "Alal",
"amount": 4000,
"card_balance": 8000,
"meta": null,
"created_at": "2023-10-10T13:29:45.000000Z"
}
}
Business Transactions Events
Disburse Successful
Copy
{
"event": "disburse.successful",
"data": {
"business": "YOUR_BUSINESS_NAME",
"customer": {
"full_name": "capone bege",
"email": "capone@bege.com",
"phone": "XXXXXXXX"
},
"slug": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"kind": "disburse",
"network": "orange-money-sn",
"amount": 5000,
"status": "success",
"expired_at" : null,
"meta": null
}
}
Disburse Failed
Copy
{
"event": "disburse.failed",
"data": {
"business": "YOUR_BUSINESS_NAME",
"customer": {
"full_name": "capone bege",
"email": "capone@bege.com",
"phone": "XXXXXXXX"
},
"slug": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"kind": "disburse",
"network": "orange-money-sn",
"amount": 5000,
"status": "failed",
"expired_at" : null,
"meta": null
}
}
Payment Successful
Copy
{
"event": "payment.successful",
"data": {
"business": "YOUR_BUSINESS_NAME",
"customer": {
"full_name": "capone bege",
"email": "capone@bege.com",
"phone": "XXXXXXXX"
},
"slug": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"kind": "payment",
"network": "orange-money-sn",
"amount": 5000,
"status": "success",
"expired_at" : null,
"meta": null
}
}
Payment Failed
Copy
{
"event": "payment.failed",
"data": {
"business": "YOUR_BUSINESS_NAME",
"customer": {
"full_name": "capone bege",
"email": "capone@bege.com",
"phone": "XXXXXXXX"
},
"slug": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"kind": "payment",
"network": "orange-money-sn",
"amount": 5000,
"status": "failed",
"expired_at" : null,
"meta": null
}
}
Payment Expired
Copy
{
"event": "payment.expired",
"data": {
"business": "YOUR_BUSINESS_NAME",
"customer": {
"full_name": "capone bege",
"email": "capone@bege.com",
"phone": "XXXXXXXX"
},
"slug": "a7517090-79b9-4af5-8c56-861ae221ae8c",
"reference": "222d9c54-1aa4-4a14-a099-7d6e4d80063f",
"kind": "payment",
"network": "orange-money-sn",
"amount": 5000,
"status": "expired",
"expired_at" : "2023-10-10T13:29:45.000000Z",
"meta": null
}
}
On this page
- Webhook List
- Card Users Events
- CardUser Verification Successful
- CardUser Verification Failed
- Cards Events
- Card Creation Successful
- Card Creation Failed
- Card Link Successful
- Card Link Failed
- Card Freeze Successful
- Card Freeze Failed
- Card Unfreeze Successful
- Card Unfreeze Failed
- Card Transaction Events
- Recharge Successful
- Recharge Failed
- Withdraw Successful
- Withdraw Failed
- Reverse Successful
- Card Sale Successful
- Card To Bank Successful
- Card To Bank Failed
- Card To Wallet Successful
- Card To Wallet Failed
- Wallet to Card Successful
- Wallet to Card Failed
- Card Transaction Cancelled
- Business Transactions Events
- Disburse Successful
- Disburse Failed
- Payment Successful
- Payment Failed
- Payment Expired
Assistant
Responses are generated using AI and may contain mistakes.