Getting Started
API
- Transaction Monitoring
- Anti Monitoring Laundering
Submit Transaction (Webhook)
POST api/v1/transaction-monitoring
curl --request POST \
--url https://sigmaprod.sabipay.com/api/v1/transaction-monitoring \
--header 'Content-Type: application/json' \
--header 'apiKey: <api-key>' \
--header 'apiSecret: <api-key>' \
--data '{
"transactionData": {
"reference": "<string>",
"amount": 123,
"receiverAccount": "<string>",
"senderAccount": "<string>",
"isExternalPayment": true,
"balanceBefore": 123,
"type": "debit",
"channel": "card payment",
"transactionDate": "2023-11-07T05:31:56Z",
"vasReceiver": "<string>",
"currency": "<string>",
"isInternalAccount": true,
"isStaffAccount": true,
"sessionId": "<string>",
"isDormantAccount": true
},
"device": {
"deviceId": "<string>",
"manufacturer": "<string>",
"model": "<string>",
"osName": "<string>",
"osVersion": "<string>"
},
"anonymizedUserData": {
"uniqueId": "<string>",
"accountType": "individual",
"businessCategory": "<string>",
"isPhoneNumberVerified": true,
"isBanned": true,
"dateJoined": "2023-11-07T05:31:56Z",
"age": 123,
"isIdentityVerified": true,
"state": "<string>",
"city": "<string>",
"country": "<string>"
},
"location": {
"latitude": 123,
"longitude": 123,
"country": "<string>"
},
"thirdPartyUserData": {
"uniqueId": "<string>",
"cardPan": "<string>",
"email": "jsmith@example.com"
},
"limits": {
"dailyLimit": 123,
"overdraftLimit": 123
},
"screeningData": {
"senderName": "<string>",
"receiverName": "<string>"
},
"beneficiary": {
"isRegisteredBeneficiary": true,
"isNewBeneficiary": true
}
}'
{
"message": "Transaction submitted"
}
Body
Unique identifier for the transaction
Amount involved in the transaction
True if payment is made to an external institution or bank
Type of transaction
debit
, credit
Payment channel used for transaction
card payment
, web transfer
, bank transfer
, mobile transfer
, cash payment
, cash withdrawal
, airtime
, cable
, sports betting
, electricity
, internet
, data purchase
, atm
, pos
ISO 8601 formatted timestamp of the transaction
Currency code (ISO 4217 standard)
Receiver's account number
Sender's account number
Account balance before the transaction
Phone number of VAS recipient (for airtime/data)
True if account belongs to the institution
True if user is a staff member
Unique session identifier
True if account is inactive
user ID or reference from your database
User account type
individual
, corporate
Type of business, if applicable
Whether the user's phone number is verified
Indicates if user is banned
Date user joined the platform
User's age
Whether user's identity is verified
State where the user created their account
City where the user created their account
Country where the user created their account
Response
Message after transaction is submitted
"Transaction submitted"
curl --request POST \
--url https://sigmaprod.sabipay.com/api/v1/transaction-monitoring \
--header 'Content-Type: application/json' \
--header 'apiKey: <api-key>' \
--header 'apiSecret: <api-key>' \
--data '{
"transactionData": {
"reference": "<string>",
"amount": 123,
"receiverAccount": "<string>",
"senderAccount": "<string>",
"isExternalPayment": true,
"balanceBefore": 123,
"type": "debit",
"channel": "card payment",
"transactionDate": "2023-11-07T05:31:56Z",
"vasReceiver": "<string>",
"currency": "<string>",
"isInternalAccount": true,
"isStaffAccount": true,
"sessionId": "<string>",
"isDormantAccount": true
},
"device": {
"deviceId": "<string>",
"manufacturer": "<string>",
"model": "<string>",
"osName": "<string>",
"osVersion": "<string>"
},
"anonymizedUserData": {
"uniqueId": "<string>",
"accountType": "individual",
"businessCategory": "<string>",
"isPhoneNumberVerified": true,
"isBanned": true,
"dateJoined": "2023-11-07T05:31:56Z",
"age": 123,
"isIdentityVerified": true,
"state": "<string>",
"city": "<string>",
"country": "<string>"
},
"location": {
"latitude": 123,
"longitude": 123,
"country": "<string>"
},
"thirdPartyUserData": {
"uniqueId": "<string>",
"cardPan": "<string>",
"email": "jsmith@example.com"
},
"limits": {
"dailyLimit": 123,
"overdraftLimit": 123
},
"screeningData": {
"senderName": "<string>",
"receiverName": "<string>"
},
"beneficiary": {
"isRegisteredBeneficiary": true,
"isNewBeneficiary": true
}
}'
{
"message": "Transaction submitted"
}