cURL
curl --request POST \
--url https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant \
--header 'Content-Type: application/json' \
--header 'apiKey: <api-key>' \
--header 'apiSecret: <api-key>' \
--data '
{
"transactionData": {
"reference": "REP-TXN-2026-061101-456789",
"transactionDate": "2026-06-11T09:45:00.000Z",
"type": "debit",
"currency": "NGN",
"balanceBefore": 8200000,
"accountCurrency": "NGN",
"accountCurrencyBalanceBefore": 8200000,
"amount": 5750000,
"narration": "Vendor invoice payment for office equipment",
"transactionScheme": "NIP",
"isExternalPayment": true,
"sessionId": "SESS-9f4b2c7a-20260611",
"status": true,
"channel": "bank transfer",
"exchangeRate": 1,
"usdExchangeRate": 1500,
"senderAccount": "9876543210",
"receiverAccount": "0123456789",
"email": "amara.okafor@example.com",
"vasReceiver": "+2348012345678",
"vasProvider": "MTN",
"refund": false,
"isInternalAccount": false,
"isStaffAccount": false,
"isDormantAccount": false,
"isCheque": false,
"signatory": "Amara Okafor"
},
"anonymizedUserData": {
"uniqueId": "CUS-10001",
"identityNumber": 22334455667,
"phone": "+2348012345678",
"occupation": "Product Manager",
"country": "NG",
"state": "Lagos",
"city": "Ikeja",
"accountType": "individual",
"age": 34,
"gender": "f",
"dateJoined": "2024-01-15T10:00:00.000Z",
"isBanned": false,
"isIdentityVerified": true,
"businessCategory": "retail",
"isPhoneNumberVerified": true,
"bankCode": "044",
"bankName": "Access Bank Plc",
"name": "Amara Okafor",
"iban": "NG12ACCESS000123456789",
"userRisk": "medium",
"sortCode": "044150149",
"bankCountry": "NG",
"dob": "1990-04-15",
"email": "amara.okafor@example.com",
"pepStatus": false,
"sow": "salary"
},
"counterpartyData": {
"accountNumber": "0123456789",
"country": "NG",
"accountType": "corporate",
"bankCode": "058",
"name": "Pastel Office Supplies Ltd",
"identityNumber": 7429883,
"iban": "NG12GTBANK000123456789",
"sortCode": "058152036",
"bankCountry": "NG",
"bankName": "Guaranty Trust Bank",
"email": "finance@pastelofficesupplies.com"
},
"thirdPartyUserData": {
"uniqueId": "CARD-HOLDER-88421",
"cardPan": "539923******0421",
"email": "cardholder@example.com"
},
"device": {
"deviceId": "ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789",
"manufacturer": "Apple",
"name": "Amara iPhone 15 Pro",
"osName": "iOS",
"osVersion": "18.1.0"
},
"location": {
"latitude": "6.6018",
"longitude": "3.3515",
"country": "NG"
},
"screeningData": {
"senderName": "Amara Okafor",
"receiverName": "Pastel Office Supplies Ltd"
},
"limits": {
"dailyLimit": 10000000,
"overdraftLimit": 500000,
"individualTransactionLimit": 6000000
},
"beneficiary": {
"isRegisteredBeneficiary": true,
"isNewBeneficiary": false
},
"ipAddress": "102.89.45.12"
}
'import requests
url = "https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant"
payload = {
"transactionData": {
"reference": "REP-TXN-2026-061101-456789",
"transactionDate": "2026-06-11T09:45:00.000Z",
"type": "debit",
"currency": "NGN",
"balanceBefore": 8200000,
"accountCurrency": "NGN",
"accountCurrencyBalanceBefore": 8200000,
"amount": 5750000,
"narration": "Vendor invoice payment for office equipment",
"transactionScheme": "NIP",
"isExternalPayment": True,
"sessionId": "SESS-9f4b2c7a-20260611",
"status": True,
"channel": "bank transfer",
"exchangeRate": 1,
"usdExchangeRate": 1500,
"senderAccount": "9876543210",
"receiverAccount": "0123456789",
"email": "amara.okafor@example.com",
"vasReceiver": "+2348012345678",
"vasProvider": "MTN",
"refund": False,
"isInternalAccount": False,
"isStaffAccount": False,
"isDormantAccount": False,
"isCheque": False,
"signatory": "Amara Okafor"
},
"anonymizedUserData": {
"uniqueId": "CUS-10001",
"identityNumber": 22334455667,
"phone": "+2348012345678",
"occupation": "Product Manager",
"country": "NG",
"state": "Lagos",
"city": "Ikeja",
"accountType": "individual",
"age": 34,
"gender": "f",
"dateJoined": "2024-01-15T10:00:00.000Z",
"isBanned": False,
"isIdentityVerified": True,
"businessCategory": "retail",
"isPhoneNumberVerified": True,
"bankCode": "044",
"bankName": "Access Bank Plc",
"name": "Amara Okafor",
"iban": "NG12ACCESS000123456789",
"userRisk": "medium",
"sortCode": "044150149",
"bankCountry": "NG",
"dob": "1990-04-15",
"email": "amara.okafor@example.com",
"pepStatus": False,
"sow": "salary"
},
"counterpartyData": {
"accountNumber": "0123456789",
"country": "NG",
"accountType": "corporate",
"bankCode": "058",
"name": "Pastel Office Supplies Ltd",
"identityNumber": 7429883,
"iban": "NG12GTBANK000123456789",
"sortCode": "058152036",
"bankCountry": "NG",
"bankName": "Guaranty Trust Bank",
"email": "finance@pastelofficesupplies.com"
},
"thirdPartyUserData": {
"uniqueId": "CARD-HOLDER-88421",
"cardPan": "539923******0421",
"email": "cardholder@example.com"
},
"device": {
"deviceId": "ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789",
"manufacturer": "Apple",
"name": "Amara iPhone 15 Pro",
"osName": "iOS",
"osVersion": "18.1.0"
},
"location": {
"latitude": "6.6018",
"longitude": "3.3515",
"country": "NG"
},
"screeningData": {
"senderName": "Amara Okafor",
"receiverName": "Pastel Office Supplies Ltd"
},
"limits": {
"dailyLimit": 10000000,
"overdraftLimit": 500000,
"individualTransactionLimit": 6000000
},
"beneficiary": {
"isRegisteredBeneficiary": True,
"isNewBeneficiary": False
},
"ipAddress": "102.89.45.12"
}
headers = {
"apiKey": "<api-key>",
"apiSecret": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
apiKey: '<api-key>',
apiSecret: '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
transactionData: {
reference: 'REP-TXN-2026-061101-456789',
transactionDate: '2026-06-11T09:45:00.000Z',
type: 'debit',
currency: 'NGN',
balanceBefore: 8200000,
accountCurrency: 'NGN',
accountCurrencyBalanceBefore: 8200000,
amount: 5750000,
narration: 'Vendor invoice payment for office equipment',
transactionScheme: 'NIP',
isExternalPayment: true,
sessionId: 'SESS-9f4b2c7a-20260611',
status: true,
channel: 'bank transfer',
exchangeRate: 1,
usdExchangeRate: 1500,
senderAccount: '9876543210',
receiverAccount: '0123456789',
email: 'amara.okafor@example.com',
vasReceiver: '+2348012345678',
vasProvider: 'MTN',
refund: false,
isInternalAccount: false,
isStaffAccount: false,
isDormantAccount: false,
isCheque: false,
signatory: 'Amara Okafor'
},
anonymizedUserData: {
uniqueId: 'CUS-10001',
identityNumber: 22334455667,
phone: '+2348012345678',
occupation: 'Product Manager',
country: 'NG',
state: 'Lagos',
city: 'Ikeja',
accountType: 'individual',
age: 34,
gender: 'f',
dateJoined: '2024-01-15T10:00:00.000Z',
isBanned: false,
isIdentityVerified: true,
businessCategory: 'retail',
isPhoneNumberVerified: true,
bankCode: '044',
bankName: 'Access Bank Plc',
name: 'Amara Okafor',
iban: 'NG12ACCESS000123456789',
userRisk: 'medium',
sortCode: '044150149',
bankCountry: 'NG',
dob: '1990-04-15',
email: 'amara.okafor@example.com',
pepStatus: false,
sow: 'salary'
},
counterpartyData: {
accountNumber: '0123456789',
country: 'NG',
accountType: 'corporate',
bankCode: '058',
name: 'Pastel Office Supplies Ltd',
identityNumber: 7429883,
iban: 'NG12GTBANK000123456789',
sortCode: '058152036',
bankCountry: 'NG',
bankName: 'Guaranty Trust Bank',
email: 'finance@pastelofficesupplies.com'
},
thirdPartyUserData: {
uniqueId: 'CARD-HOLDER-88421',
cardPan: '539923******0421',
email: 'cardholder@example.com'
},
device: {
deviceId: 'ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789',
manufacturer: 'Apple',
name: 'Amara iPhone 15 Pro',
osName: 'iOS',
osVersion: '18.1.0'
},
location: {latitude: '6.6018', longitude: '3.3515', country: 'NG'},
screeningData: {senderName: 'Amara Okafor', receiverName: 'Pastel Office Supplies Ltd'},
limits: {
dailyLimit: 10000000,
overdraftLimit: 500000,
individualTransactionLimit: 6000000
},
beneficiary: {isRegisteredBeneficiary: true, isNewBeneficiary: false},
ipAddress: '102.89.45.12'
})
};
fetch('https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'transactionData' => [
'reference' => 'REP-TXN-2026-061101-456789',
'transactionDate' => '2026-06-11T09:45:00.000Z',
'type' => 'debit',
'currency' => 'NGN',
'balanceBefore' => 8200000,
'accountCurrency' => 'NGN',
'accountCurrencyBalanceBefore' => 8200000,
'amount' => 5750000,
'narration' => 'Vendor invoice payment for office equipment',
'transactionScheme' => 'NIP',
'isExternalPayment' => true,
'sessionId' => 'SESS-9f4b2c7a-20260611',
'status' => true,
'channel' => 'bank transfer',
'exchangeRate' => 1,
'usdExchangeRate' => 1500,
'senderAccount' => '9876543210',
'receiverAccount' => '0123456789',
'email' => 'amara.okafor@example.com',
'vasReceiver' => '+2348012345678',
'vasProvider' => 'MTN',
'refund' => false,
'isInternalAccount' => false,
'isStaffAccount' => false,
'isDormantAccount' => false,
'isCheque' => false,
'signatory' => 'Amara Okafor'
],
'anonymizedUserData' => [
'uniqueId' => 'CUS-10001',
'identityNumber' => 22334455667,
'phone' => '+2348012345678',
'occupation' => 'Product Manager',
'country' => 'NG',
'state' => 'Lagos',
'city' => 'Ikeja',
'accountType' => 'individual',
'age' => 34,
'gender' => 'f',
'dateJoined' => '2024-01-15T10:00:00.000Z',
'isBanned' => false,
'isIdentityVerified' => true,
'businessCategory' => 'retail',
'isPhoneNumberVerified' => true,
'bankCode' => '044',
'bankName' => 'Access Bank Plc',
'name' => 'Amara Okafor',
'iban' => 'NG12ACCESS000123456789',
'userRisk' => 'medium',
'sortCode' => '044150149',
'bankCountry' => 'NG',
'dob' => '1990-04-15',
'email' => 'amara.okafor@example.com',
'pepStatus' => false,
'sow' => 'salary'
],
'counterpartyData' => [
'accountNumber' => '0123456789',
'country' => 'NG',
'accountType' => 'corporate',
'bankCode' => '058',
'name' => 'Pastel Office Supplies Ltd',
'identityNumber' => 7429883,
'iban' => 'NG12GTBANK000123456789',
'sortCode' => '058152036',
'bankCountry' => 'NG',
'bankName' => 'Guaranty Trust Bank',
'email' => 'finance@pastelofficesupplies.com'
],
'thirdPartyUserData' => [
'uniqueId' => 'CARD-HOLDER-88421',
'cardPan' => '539923******0421',
'email' => 'cardholder@example.com'
],
'device' => [
'deviceId' => 'ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789',
'manufacturer' => 'Apple',
'name' => 'Amara iPhone 15 Pro',
'osName' => 'iOS',
'osVersion' => '18.1.0'
],
'location' => [
'latitude' => '6.6018',
'longitude' => '3.3515',
'country' => 'NG'
],
'screeningData' => [
'senderName' => 'Amara Okafor',
'receiverName' => 'Pastel Office Supplies Ltd'
],
'limits' => [
'dailyLimit' => 10000000,
'overdraftLimit' => 500000,
'individualTransactionLimit' => 6000000
],
'beneficiary' => [
'isRegisteredBeneficiary' => true,
'isNewBeneficiary' => false
],
'ipAddress' => '102.89.45.12'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"apiKey: <api-key>",
"apiSecret: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant"
payload := strings.NewReader("{\n \"transactionData\": {\n \"reference\": \"REP-TXN-2026-061101-456789\",\n \"transactionDate\": \"2026-06-11T09:45:00.000Z\",\n \"type\": \"debit\",\n \"currency\": \"NGN\",\n \"balanceBefore\": 8200000,\n \"accountCurrency\": \"NGN\",\n \"accountCurrencyBalanceBefore\": 8200000,\n \"amount\": 5750000,\n \"narration\": \"Vendor invoice payment for office equipment\",\n \"transactionScheme\": \"NIP\",\n \"isExternalPayment\": true,\n \"sessionId\": \"SESS-9f4b2c7a-20260611\",\n \"status\": true,\n \"channel\": \"bank transfer\",\n \"exchangeRate\": 1,\n \"usdExchangeRate\": 1500,\n \"senderAccount\": \"9876543210\",\n \"receiverAccount\": \"0123456789\",\n \"email\": \"amara.okafor@example.com\",\n \"vasReceiver\": \"+2348012345678\",\n \"vasProvider\": \"MTN\",\n \"refund\": false,\n \"isInternalAccount\": false,\n \"isStaffAccount\": false,\n \"isDormantAccount\": false,\n \"isCheque\": false,\n \"signatory\": \"Amara Okafor\"\n },\n \"anonymizedUserData\": {\n \"uniqueId\": \"CUS-10001\",\n \"identityNumber\": 22334455667,\n \"phone\": \"+2348012345678\",\n \"occupation\": \"Product Manager\",\n \"country\": \"NG\",\n \"state\": \"Lagos\",\n \"city\": \"Ikeja\",\n \"accountType\": \"individual\",\n \"age\": 34,\n \"gender\": \"f\",\n \"dateJoined\": \"2024-01-15T10:00:00.000Z\",\n \"isBanned\": false,\n \"isIdentityVerified\": true,\n \"businessCategory\": \"retail\",\n \"isPhoneNumberVerified\": true,\n \"bankCode\": \"044\",\n \"bankName\": \"Access Bank Plc\",\n \"name\": \"Amara Okafor\",\n \"iban\": \"NG12ACCESS000123456789\",\n \"userRisk\": \"medium\",\n \"sortCode\": \"044150149\",\n \"bankCountry\": \"NG\",\n \"dob\": \"1990-04-15\",\n \"email\": \"amara.okafor@example.com\",\n \"pepStatus\": false,\n \"sow\": \"salary\"\n },\n \"counterpartyData\": {\n \"accountNumber\": \"0123456789\",\n \"country\": \"NG\",\n \"accountType\": \"corporate\",\n \"bankCode\": \"058\",\n \"name\": \"Pastel Office Supplies Ltd\",\n \"identityNumber\": 7429883,\n \"iban\": \"NG12GTBANK000123456789\",\n \"sortCode\": \"058152036\",\n \"bankCountry\": \"NG\",\n \"bankName\": \"Guaranty Trust Bank\",\n \"email\": \"finance@pastelofficesupplies.com\"\n },\n \"thirdPartyUserData\": {\n \"uniqueId\": \"CARD-HOLDER-88421\",\n \"cardPan\": \"539923******0421\",\n \"email\": \"cardholder@example.com\"\n },\n \"device\": {\n \"deviceId\": \"ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789\",\n \"manufacturer\": \"Apple\",\n \"name\": \"Amara iPhone 15 Pro\",\n \"osName\": \"iOS\",\n \"osVersion\": \"18.1.0\"\n },\n \"location\": {\n \"latitude\": \"6.6018\",\n \"longitude\": \"3.3515\",\n \"country\": \"NG\"\n },\n \"screeningData\": {\n \"senderName\": \"Amara Okafor\",\n \"receiverName\": \"Pastel Office Supplies Ltd\"\n },\n \"limits\": {\n \"dailyLimit\": 10000000,\n \"overdraftLimit\": 500000,\n \"individualTransactionLimit\": 6000000\n },\n \"beneficiary\": {\n \"isRegisteredBeneficiary\": true,\n \"isNewBeneficiary\": false\n },\n \"ipAddress\": \"102.89.45.12\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("apiKey", "<api-key>")
req.Header.Add("apiSecret", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant")
.header("apiKey", "<api-key>")
.header("apiSecret", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"transactionData\": {\n \"reference\": \"REP-TXN-2026-061101-456789\",\n \"transactionDate\": \"2026-06-11T09:45:00.000Z\",\n \"type\": \"debit\",\n \"currency\": \"NGN\",\n \"balanceBefore\": 8200000,\n \"accountCurrency\": \"NGN\",\n \"accountCurrencyBalanceBefore\": 8200000,\n \"amount\": 5750000,\n \"narration\": \"Vendor invoice payment for office equipment\",\n \"transactionScheme\": \"NIP\",\n \"isExternalPayment\": true,\n \"sessionId\": \"SESS-9f4b2c7a-20260611\",\n \"status\": true,\n \"channel\": \"bank transfer\",\n \"exchangeRate\": 1,\n \"usdExchangeRate\": 1500,\n \"senderAccount\": \"9876543210\",\n \"receiverAccount\": \"0123456789\",\n \"email\": \"amara.okafor@example.com\",\n \"vasReceiver\": \"+2348012345678\",\n \"vasProvider\": \"MTN\",\n \"refund\": false,\n \"isInternalAccount\": false,\n \"isStaffAccount\": false,\n \"isDormantAccount\": false,\n \"isCheque\": false,\n \"signatory\": \"Amara Okafor\"\n },\n \"anonymizedUserData\": {\n \"uniqueId\": \"CUS-10001\",\n \"identityNumber\": 22334455667,\n \"phone\": \"+2348012345678\",\n \"occupation\": \"Product Manager\",\n \"country\": \"NG\",\n \"state\": \"Lagos\",\n \"city\": \"Ikeja\",\n \"accountType\": \"individual\",\n \"age\": 34,\n \"gender\": \"f\",\n \"dateJoined\": \"2024-01-15T10:00:00.000Z\",\n \"isBanned\": false,\n \"isIdentityVerified\": true,\n \"businessCategory\": \"retail\",\n \"isPhoneNumberVerified\": true,\n \"bankCode\": \"044\",\n \"bankName\": \"Access Bank Plc\",\n \"name\": \"Amara Okafor\",\n \"iban\": \"NG12ACCESS000123456789\",\n \"userRisk\": \"medium\",\n \"sortCode\": \"044150149\",\n \"bankCountry\": \"NG\",\n \"dob\": \"1990-04-15\",\n \"email\": \"amara.okafor@example.com\",\n \"pepStatus\": false,\n \"sow\": \"salary\"\n },\n \"counterpartyData\": {\n \"accountNumber\": \"0123456789\",\n \"country\": \"NG\",\n \"accountType\": \"corporate\",\n \"bankCode\": \"058\",\n \"name\": \"Pastel Office Supplies Ltd\",\n \"identityNumber\": 7429883,\n \"iban\": \"NG12GTBANK000123456789\",\n \"sortCode\": \"058152036\",\n \"bankCountry\": \"NG\",\n \"bankName\": \"Guaranty Trust Bank\",\n \"email\": \"finance@pastelofficesupplies.com\"\n },\n \"thirdPartyUserData\": {\n \"uniqueId\": \"CARD-HOLDER-88421\",\n \"cardPan\": \"539923******0421\",\n \"email\": \"cardholder@example.com\"\n },\n \"device\": {\n \"deviceId\": \"ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789\",\n \"manufacturer\": \"Apple\",\n \"name\": \"Amara iPhone 15 Pro\",\n \"osName\": \"iOS\",\n \"osVersion\": \"18.1.0\"\n },\n \"location\": {\n \"latitude\": \"6.6018\",\n \"longitude\": \"3.3515\",\n \"country\": \"NG\"\n },\n \"screeningData\": {\n \"senderName\": \"Amara Okafor\",\n \"receiverName\": \"Pastel Office Supplies Ltd\"\n },\n \"limits\": {\n \"dailyLimit\": 10000000,\n \"overdraftLimit\": 500000,\n \"individualTransactionLimit\": 6000000\n },\n \"beneficiary\": {\n \"isRegisteredBeneficiary\": true,\n \"isNewBeneficiary\": false\n },\n \"ipAddress\": \"102.89.45.12\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["apiKey"] = '<api-key>'
request["apiSecret"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"transactionData\": {\n \"reference\": \"REP-TXN-2026-061101-456789\",\n \"transactionDate\": \"2026-06-11T09:45:00.000Z\",\n \"type\": \"debit\",\n \"currency\": \"NGN\",\n \"balanceBefore\": 8200000,\n \"accountCurrency\": \"NGN\",\n \"accountCurrencyBalanceBefore\": 8200000,\n \"amount\": 5750000,\n \"narration\": \"Vendor invoice payment for office equipment\",\n \"transactionScheme\": \"NIP\",\n \"isExternalPayment\": true,\n \"sessionId\": \"SESS-9f4b2c7a-20260611\",\n \"status\": true,\n \"channel\": \"bank transfer\",\n \"exchangeRate\": 1,\n \"usdExchangeRate\": 1500,\n \"senderAccount\": \"9876543210\",\n \"receiverAccount\": \"0123456789\",\n \"email\": \"amara.okafor@example.com\",\n \"vasReceiver\": \"+2348012345678\",\n \"vasProvider\": \"MTN\",\n \"refund\": false,\n \"isInternalAccount\": false,\n \"isStaffAccount\": false,\n \"isDormantAccount\": false,\n \"isCheque\": false,\n \"signatory\": \"Amara Okafor\"\n },\n \"anonymizedUserData\": {\n \"uniqueId\": \"CUS-10001\",\n \"identityNumber\": 22334455667,\n \"phone\": \"+2348012345678\",\n \"occupation\": \"Product Manager\",\n \"country\": \"NG\",\n \"state\": \"Lagos\",\n \"city\": \"Ikeja\",\n \"accountType\": \"individual\",\n \"age\": 34,\n \"gender\": \"f\",\n \"dateJoined\": \"2024-01-15T10:00:00.000Z\",\n \"isBanned\": false,\n \"isIdentityVerified\": true,\n \"businessCategory\": \"retail\",\n \"isPhoneNumberVerified\": true,\n \"bankCode\": \"044\",\n \"bankName\": \"Access Bank Plc\",\n \"name\": \"Amara Okafor\",\n \"iban\": \"NG12ACCESS000123456789\",\n \"userRisk\": \"medium\",\n \"sortCode\": \"044150149\",\n \"bankCountry\": \"NG\",\n \"dob\": \"1990-04-15\",\n \"email\": \"amara.okafor@example.com\",\n \"pepStatus\": false,\n \"sow\": \"salary\"\n },\n \"counterpartyData\": {\n \"accountNumber\": \"0123456789\",\n \"country\": \"NG\",\n \"accountType\": \"corporate\",\n \"bankCode\": \"058\",\n \"name\": \"Pastel Office Supplies Ltd\",\n \"identityNumber\": 7429883,\n \"iban\": \"NG12GTBANK000123456789\",\n \"sortCode\": \"058152036\",\n \"bankCountry\": \"NG\",\n \"bankName\": \"Guaranty Trust Bank\",\n \"email\": \"finance@pastelofficesupplies.com\"\n },\n \"thirdPartyUserData\": {\n \"uniqueId\": \"CARD-HOLDER-88421\",\n \"cardPan\": \"539923******0421\",\n \"email\": \"cardholder@example.com\"\n },\n \"device\": {\n \"deviceId\": \"ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789\",\n \"manufacturer\": \"Apple\",\n \"name\": \"Amara iPhone 15 Pro\",\n \"osName\": \"iOS\",\n \"osVersion\": \"18.1.0\"\n },\n \"location\": {\n \"latitude\": \"6.6018\",\n \"longitude\": \"3.3515\",\n \"country\": \"NG\"\n },\n \"screeningData\": {\n \"senderName\": \"Amara Okafor\",\n \"receiverName\": \"Pastel Office Supplies Ltd\"\n },\n \"limits\": {\n \"dailyLimit\": 10000000,\n \"overdraftLimit\": 500000,\n \"individualTransactionLimit\": 6000000\n },\n \"beneficiary\": {\n \"isRegisteredBeneficiary\": true,\n \"isNewBeneficiary\": false\n },\n \"ipAddress\": \"102.89.45.12\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Transaction processed",
"data": {
"transactionId": "txn_67f96122c2a7d1f2b6ea1207",
"riskScore": "0.27",
"action": {
"result": "approved",
"code": 1
},
"ruleResult": "looks safe",
"reason": {
"code": "TM-LOW-RISK",
"message": "No high-risk behavior was detected for this transaction",
"severity": "low",
"rule": {
"id": "rule-velocity-001",
"name": "Velocity threshold check"
}
}
}
}{
"message": "transactionData.reference is required",
"code": "VALIDATION_ERROR"
}{
"message": "transactionData.reference is required",
"code": "VALIDATION_ERROR"
}Reporting
Submit Transaction
POST api/v1/transaction-monitoring/instant
cURL
curl --request POST \
--url https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant \
--header 'Content-Type: application/json' \
--header 'apiKey: <api-key>' \
--header 'apiSecret: <api-key>' \
--data '
{
"transactionData": {
"reference": "REP-TXN-2026-061101-456789",
"transactionDate": "2026-06-11T09:45:00.000Z",
"type": "debit",
"currency": "NGN",
"balanceBefore": 8200000,
"accountCurrency": "NGN",
"accountCurrencyBalanceBefore": 8200000,
"amount": 5750000,
"narration": "Vendor invoice payment for office equipment",
"transactionScheme": "NIP",
"isExternalPayment": true,
"sessionId": "SESS-9f4b2c7a-20260611",
"status": true,
"channel": "bank transfer",
"exchangeRate": 1,
"usdExchangeRate": 1500,
"senderAccount": "9876543210",
"receiverAccount": "0123456789",
"email": "amara.okafor@example.com",
"vasReceiver": "+2348012345678",
"vasProvider": "MTN",
"refund": false,
"isInternalAccount": false,
"isStaffAccount": false,
"isDormantAccount": false,
"isCheque": false,
"signatory": "Amara Okafor"
},
"anonymizedUserData": {
"uniqueId": "CUS-10001",
"identityNumber": 22334455667,
"phone": "+2348012345678",
"occupation": "Product Manager",
"country": "NG",
"state": "Lagos",
"city": "Ikeja",
"accountType": "individual",
"age": 34,
"gender": "f",
"dateJoined": "2024-01-15T10:00:00.000Z",
"isBanned": false,
"isIdentityVerified": true,
"businessCategory": "retail",
"isPhoneNumberVerified": true,
"bankCode": "044",
"bankName": "Access Bank Plc",
"name": "Amara Okafor",
"iban": "NG12ACCESS000123456789",
"userRisk": "medium",
"sortCode": "044150149",
"bankCountry": "NG",
"dob": "1990-04-15",
"email": "amara.okafor@example.com",
"pepStatus": false,
"sow": "salary"
},
"counterpartyData": {
"accountNumber": "0123456789",
"country": "NG",
"accountType": "corporate",
"bankCode": "058",
"name": "Pastel Office Supplies Ltd",
"identityNumber": 7429883,
"iban": "NG12GTBANK000123456789",
"sortCode": "058152036",
"bankCountry": "NG",
"bankName": "Guaranty Trust Bank",
"email": "finance@pastelofficesupplies.com"
},
"thirdPartyUserData": {
"uniqueId": "CARD-HOLDER-88421",
"cardPan": "539923******0421",
"email": "cardholder@example.com"
},
"device": {
"deviceId": "ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789",
"manufacturer": "Apple",
"name": "Amara iPhone 15 Pro",
"osName": "iOS",
"osVersion": "18.1.0"
},
"location": {
"latitude": "6.6018",
"longitude": "3.3515",
"country": "NG"
},
"screeningData": {
"senderName": "Amara Okafor",
"receiverName": "Pastel Office Supplies Ltd"
},
"limits": {
"dailyLimit": 10000000,
"overdraftLimit": 500000,
"individualTransactionLimit": 6000000
},
"beneficiary": {
"isRegisteredBeneficiary": true,
"isNewBeneficiary": false
},
"ipAddress": "102.89.45.12"
}
'import requests
url = "https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant"
payload = {
"transactionData": {
"reference": "REP-TXN-2026-061101-456789",
"transactionDate": "2026-06-11T09:45:00.000Z",
"type": "debit",
"currency": "NGN",
"balanceBefore": 8200000,
"accountCurrency": "NGN",
"accountCurrencyBalanceBefore": 8200000,
"amount": 5750000,
"narration": "Vendor invoice payment for office equipment",
"transactionScheme": "NIP",
"isExternalPayment": True,
"sessionId": "SESS-9f4b2c7a-20260611",
"status": True,
"channel": "bank transfer",
"exchangeRate": 1,
"usdExchangeRate": 1500,
"senderAccount": "9876543210",
"receiverAccount": "0123456789",
"email": "amara.okafor@example.com",
"vasReceiver": "+2348012345678",
"vasProvider": "MTN",
"refund": False,
"isInternalAccount": False,
"isStaffAccount": False,
"isDormantAccount": False,
"isCheque": False,
"signatory": "Amara Okafor"
},
"anonymizedUserData": {
"uniqueId": "CUS-10001",
"identityNumber": 22334455667,
"phone": "+2348012345678",
"occupation": "Product Manager",
"country": "NG",
"state": "Lagos",
"city": "Ikeja",
"accountType": "individual",
"age": 34,
"gender": "f",
"dateJoined": "2024-01-15T10:00:00.000Z",
"isBanned": False,
"isIdentityVerified": True,
"businessCategory": "retail",
"isPhoneNumberVerified": True,
"bankCode": "044",
"bankName": "Access Bank Plc",
"name": "Amara Okafor",
"iban": "NG12ACCESS000123456789",
"userRisk": "medium",
"sortCode": "044150149",
"bankCountry": "NG",
"dob": "1990-04-15",
"email": "amara.okafor@example.com",
"pepStatus": False,
"sow": "salary"
},
"counterpartyData": {
"accountNumber": "0123456789",
"country": "NG",
"accountType": "corporate",
"bankCode": "058",
"name": "Pastel Office Supplies Ltd",
"identityNumber": 7429883,
"iban": "NG12GTBANK000123456789",
"sortCode": "058152036",
"bankCountry": "NG",
"bankName": "Guaranty Trust Bank",
"email": "finance@pastelofficesupplies.com"
},
"thirdPartyUserData": {
"uniqueId": "CARD-HOLDER-88421",
"cardPan": "539923******0421",
"email": "cardholder@example.com"
},
"device": {
"deviceId": "ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789",
"manufacturer": "Apple",
"name": "Amara iPhone 15 Pro",
"osName": "iOS",
"osVersion": "18.1.0"
},
"location": {
"latitude": "6.6018",
"longitude": "3.3515",
"country": "NG"
},
"screeningData": {
"senderName": "Amara Okafor",
"receiverName": "Pastel Office Supplies Ltd"
},
"limits": {
"dailyLimit": 10000000,
"overdraftLimit": 500000,
"individualTransactionLimit": 6000000
},
"beneficiary": {
"isRegisteredBeneficiary": True,
"isNewBeneficiary": False
},
"ipAddress": "102.89.45.12"
}
headers = {
"apiKey": "<api-key>",
"apiSecret": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
apiKey: '<api-key>',
apiSecret: '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
transactionData: {
reference: 'REP-TXN-2026-061101-456789',
transactionDate: '2026-06-11T09:45:00.000Z',
type: 'debit',
currency: 'NGN',
balanceBefore: 8200000,
accountCurrency: 'NGN',
accountCurrencyBalanceBefore: 8200000,
amount: 5750000,
narration: 'Vendor invoice payment for office equipment',
transactionScheme: 'NIP',
isExternalPayment: true,
sessionId: 'SESS-9f4b2c7a-20260611',
status: true,
channel: 'bank transfer',
exchangeRate: 1,
usdExchangeRate: 1500,
senderAccount: '9876543210',
receiverAccount: '0123456789',
email: 'amara.okafor@example.com',
vasReceiver: '+2348012345678',
vasProvider: 'MTN',
refund: false,
isInternalAccount: false,
isStaffAccount: false,
isDormantAccount: false,
isCheque: false,
signatory: 'Amara Okafor'
},
anonymizedUserData: {
uniqueId: 'CUS-10001',
identityNumber: 22334455667,
phone: '+2348012345678',
occupation: 'Product Manager',
country: 'NG',
state: 'Lagos',
city: 'Ikeja',
accountType: 'individual',
age: 34,
gender: 'f',
dateJoined: '2024-01-15T10:00:00.000Z',
isBanned: false,
isIdentityVerified: true,
businessCategory: 'retail',
isPhoneNumberVerified: true,
bankCode: '044',
bankName: 'Access Bank Plc',
name: 'Amara Okafor',
iban: 'NG12ACCESS000123456789',
userRisk: 'medium',
sortCode: '044150149',
bankCountry: 'NG',
dob: '1990-04-15',
email: 'amara.okafor@example.com',
pepStatus: false,
sow: 'salary'
},
counterpartyData: {
accountNumber: '0123456789',
country: 'NG',
accountType: 'corporate',
bankCode: '058',
name: 'Pastel Office Supplies Ltd',
identityNumber: 7429883,
iban: 'NG12GTBANK000123456789',
sortCode: '058152036',
bankCountry: 'NG',
bankName: 'Guaranty Trust Bank',
email: 'finance@pastelofficesupplies.com'
},
thirdPartyUserData: {
uniqueId: 'CARD-HOLDER-88421',
cardPan: '539923******0421',
email: 'cardholder@example.com'
},
device: {
deviceId: 'ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789',
manufacturer: 'Apple',
name: 'Amara iPhone 15 Pro',
osName: 'iOS',
osVersion: '18.1.0'
},
location: {latitude: '6.6018', longitude: '3.3515', country: 'NG'},
screeningData: {senderName: 'Amara Okafor', receiverName: 'Pastel Office Supplies Ltd'},
limits: {
dailyLimit: 10000000,
overdraftLimit: 500000,
individualTransactionLimit: 6000000
},
beneficiary: {isRegisteredBeneficiary: true, isNewBeneficiary: false},
ipAddress: '102.89.45.12'
})
};
fetch('https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'transactionData' => [
'reference' => 'REP-TXN-2026-061101-456789',
'transactionDate' => '2026-06-11T09:45:00.000Z',
'type' => 'debit',
'currency' => 'NGN',
'balanceBefore' => 8200000,
'accountCurrency' => 'NGN',
'accountCurrencyBalanceBefore' => 8200000,
'amount' => 5750000,
'narration' => 'Vendor invoice payment for office equipment',
'transactionScheme' => 'NIP',
'isExternalPayment' => true,
'sessionId' => 'SESS-9f4b2c7a-20260611',
'status' => true,
'channel' => 'bank transfer',
'exchangeRate' => 1,
'usdExchangeRate' => 1500,
'senderAccount' => '9876543210',
'receiverAccount' => '0123456789',
'email' => 'amara.okafor@example.com',
'vasReceiver' => '+2348012345678',
'vasProvider' => 'MTN',
'refund' => false,
'isInternalAccount' => false,
'isStaffAccount' => false,
'isDormantAccount' => false,
'isCheque' => false,
'signatory' => 'Amara Okafor'
],
'anonymizedUserData' => [
'uniqueId' => 'CUS-10001',
'identityNumber' => 22334455667,
'phone' => '+2348012345678',
'occupation' => 'Product Manager',
'country' => 'NG',
'state' => 'Lagos',
'city' => 'Ikeja',
'accountType' => 'individual',
'age' => 34,
'gender' => 'f',
'dateJoined' => '2024-01-15T10:00:00.000Z',
'isBanned' => false,
'isIdentityVerified' => true,
'businessCategory' => 'retail',
'isPhoneNumberVerified' => true,
'bankCode' => '044',
'bankName' => 'Access Bank Plc',
'name' => 'Amara Okafor',
'iban' => 'NG12ACCESS000123456789',
'userRisk' => 'medium',
'sortCode' => '044150149',
'bankCountry' => 'NG',
'dob' => '1990-04-15',
'email' => 'amara.okafor@example.com',
'pepStatus' => false,
'sow' => 'salary'
],
'counterpartyData' => [
'accountNumber' => '0123456789',
'country' => 'NG',
'accountType' => 'corporate',
'bankCode' => '058',
'name' => 'Pastel Office Supplies Ltd',
'identityNumber' => 7429883,
'iban' => 'NG12GTBANK000123456789',
'sortCode' => '058152036',
'bankCountry' => 'NG',
'bankName' => 'Guaranty Trust Bank',
'email' => 'finance@pastelofficesupplies.com'
],
'thirdPartyUserData' => [
'uniqueId' => 'CARD-HOLDER-88421',
'cardPan' => '539923******0421',
'email' => 'cardholder@example.com'
],
'device' => [
'deviceId' => 'ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789',
'manufacturer' => 'Apple',
'name' => 'Amara iPhone 15 Pro',
'osName' => 'iOS',
'osVersion' => '18.1.0'
],
'location' => [
'latitude' => '6.6018',
'longitude' => '3.3515',
'country' => 'NG'
],
'screeningData' => [
'senderName' => 'Amara Okafor',
'receiverName' => 'Pastel Office Supplies Ltd'
],
'limits' => [
'dailyLimit' => 10000000,
'overdraftLimit' => 500000,
'individualTransactionLimit' => 6000000
],
'beneficiary' => [
'isRegisteredBeneficiary' => true,
'isNewBeneficiary' => false
],
'ipAddress' => '102.89.45.12'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"apiKey: <api-key>",
"apiSecret: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant"
payload := strings.NewReader("{\n \"transactionData\": {\n \"reference\": \"REP-TXN-2026-061101-456789\",\n \"transactionDate\": \"2026-06-11T09:45:00.000Z\",\n \"type\": \"debit\",\n \"currency\": \"NGN\",\n \"balanceBefore\": 8200000,\n \"accountCurrency\": \"NGN\",\n \"accountCurrencyBalanceBefore\": 8200000,\n \"amount\": 5750000,\n \"narration\": \"Vendor invoice payment for office equipment\",\n \"transactionScheme\": \"NIP\",\n \"isExternalPayment\": true,\n \"sessionId\": \"SESS-9f4b2c7a-20260611\",\n \"status\": true,\n \"channel\": \"bank transfer\",\n \"exchangeRate\": 1,\n \"usdExchangeRate\": 1500,\n \"senderAccount\": \"9876543210\",\n \"receiverAccount\": \"0123456789\",\n \"email\": \"amara.okafor@example.com\",\n \"vasReceiver\": \"+2348012345678\",\n \"vasProvider\": \"MTN\",\n \"refund\": false,\n \"isInternalAccount\": false,\n \"isStaffAccount\": false,\n \"isDormantAccount\": false,\n \"isCheque\": false,\n \"signatory\": \"Amara Okafor\"\n },\n \"anonymizedUserData\": {\n \"uniqueId\": \"CUS-10001\",\n \"identityNumber\": 22334455667,\n \"phone\": \"+2348012345678\",\n \"occupation\": \"Product Manager\",\n \"country\": \"NG\",\n \"state\": \"Lagos\",\n \"city\": \"Ikeja\",\n \"accountType\": \"individual\",\n \"age\": 34,\n \"gender\": \"f\",\n \"dateJoined\": \"2024-01-15T10:00:00.000Z\",\n \"isBanned\": false,\n \"isIdentityVerified\": true,\n \"businessCategory\": \"retail\",\n \"isPhoneNumberVerified\": true,\n \"bankCode\": \"044\",\n \"bankName\": \"Access Bank Plc\",\n \"name\": \"Amara Okafor\",\n \"iban\": \"NG12ACCESS000123456789\",\n \"userRisk\": \"medium\",\n \"sortCode\": \"044150149\",\n \"bankCountry\": \"NG\",\n \"dob\": \"1990-04-15\",\n \"email\": \"amara.okafor@example.com\",\n \"pepStatus\": false,\n \"sow\": \"salary\"\n },\n \"counterpartyData\": {\n \"accountNumber\": \"0123456789\",\n \"country\": \"NG\",\n \"accountType\": \"corporate\",\n \"bankCode\": \"058\",\n \"name\": \"Pastel Office Supplies Ltd\",\n \"identityNumber\": 7429883,\n \"iban\": \"NG12GTBANK000123456789\",\n \"sortCode\": \"058152036\",\n \"bankCountry\": \"NG\",\n \"bankName\": \"Guaranty Trust Bank\",\n \"email\": \"finance@pastelofficesupplies.com\"\n },\n \"thirdPartyUserData\": {\n \"uniqueId\": \"CARD-HOLDER-88421\",\n \"cardPan\": \"539923******0421\",\n \"email\": \"cardholder@example.com\"\n },\n \"device\": {\n \"deviceId\": \"ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789\",\n \"manufacturer\": \"Apple\",\n \"name\": \"Amara iPhone 15 Pro\",\n \"osName\": \"iOS\",\n \"osVersion\": \"18.1.0\"\n },\n \"location\": {\n \"latitude\": \"6.6018\",\n \"longitude\": \"3.3515\",\n \"country\": \"NG\"\n },\n \"screeningData\": {\n \"senderName\": \"Amara Okafor\",\n \"receiverName\": \"Pastel Office Supplies Ltd\"\n },\n \"limits\": {\n \"dailyLimit\": 10000000,\n \"overdraftLimit\": 500000,\n \"individualTransactionLimit\": 6000000\n },\n \"beneficiary\": {\n \"isRegisteredBeneficiary\": true,\n \"isNewBeneficiary\": false\n },\n \"ipAddress\": \"102.89.45.12\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("apiKey", "<api-key>")
req.Header.Add("apiSecret", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant")
.header("apiKey", "<api-key>")
.header("apiSecret", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"transactionData\": {\n \"reference\": \"REP-TXN-2026-061101-456789\",\n \"transactionDate\": \"2026-06-11T09:45:00.000Z\",\n \"type\": \"debit\",\n \"currency\": \"NGN\",\n \"balanceBefore\": 8200000,\n \"accountCurrency\": \"NGN\",\n \"accountCurrencyBalanceBefore\": 8200000,\n \"amount\": 5750000,\n \"narration\": \"Vendor invoice payment for office equipment\",\n \"transactionScheme\": \"NIP\",\n \"isExternalPayment\": true,\n \"sessionId\": \"SESS-9f4b2c7a-20260611\",\n \"status\": true,\n \"channel\": \"bank transfer\",\n \"exchangeRate\": 1,\n \"usdExchangeRate\": 1500,\n \"senderAccount\": \"9876543210\",\n \"receiverAccount\": \"0123456789\",\n \"email\": \"amara.okafor@example.com\",\n \"vasReceiver\": \"+2348012345678\",\n \"vasProvider\": \"MTN\",\n \"refund\": false,\n \"isInternalAccount\": false,\n \"isStaffAccount\": false,\n \"isDormantAccount\": false,\n \"isCheque\": false,\n \"signatory\": \"Amara Okafor\"\n },\n \"anonymizedUserData\": {\n \"uniqueId\": \"CUS-10001\",\n \"identityNumber\": 22334455667,\n \"phone\": \"+2348012345678\",\n \"occupation\": \"Product Manager\",\n \"country\": \"NG\",\n \"state\": \"Lagos\",\n \"city\": \"Ikeja\",\n \"accountType\": \"individual\",\n \"age\": 34,\n \"gender\": \"f\",\n \"dateJoined\": \"2024-01-15T10:00:00.000Z\",\n \"isBanned\": false,\n \"isIdentityVerified\": true,\n \"businessCategory\": \"retail\",\n \"isPhoneNumberVerified\": true,\n \"bankCode\": \"044\",\n \"bankName\": \"Access Bank Plc\",\n \"name\": \"Amara Okafor\",\n \"iban\": \"NG12ACCESS000123456789\",\n \"userRisk\": \"medium\",\n \"sortCode\": \"044150149\",\n \"bankCountry\": \"NG\",\n \"dob\": \"1990-04-15\",\n \"email\": \"amara.okafor@example.com\",\n \"pepStatus\": false,\n \"sow\": \"salary\"\n },\n \"counterpartyData\": {\n \"accountNumber\": \"0123456789\",\n \"country\": \"NG\",\n \"accountType\": \"corporate\",\n \"bankCode\": \"058\",\n \"name\": \"Pastel Office Supplies Ltd\",\n \"identityNumber\": 7429883,\n \"iban\": \"NG12GTBANK000123456789\",\n \"sortCode\": \"058152036\",\n \"bankCountry\": \"NG\",\n \"bankName\": \"Guaranty Trust Bank\",\n \"email\": \"finance@pastelofficesupplies.com\"\n },\n \"thirdPartyUserData\": {\n \"uniqueId\": \"CARD-HOLDER-88421\",\n \"cardPan\": \"539923******0421\",\n \"email\": \"cardholder@example.com\"\n },\n \"device\": {\n \"deviceId\": \"ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789\",\n \"manufacturer\": \"Apple\",\n \"name\": \"Amara iPhone 15 Pro\",\n \"osName\": \"iOS\",\n \"osVersion\": \"18.1.0\"\n },\n \"location\": {\n \"latitude\": \"6.6018\",\n \"longitude\": \"3.3515\",\n \"country\": \"NG\"\n },\n \"screeningData\": {\n \"senderName\": \"Amara Okafor\",\n \"receiverName\": \"Pastel Office Supplies Ltd\"\n },\n \"limits\": {\n \"dailyLimit\": 10000000,\n \"overdraftLimit\": 500000,\n \"individualTransactionLimit\": 6000000\n },\n \"beneficiary\": {\n \"isRegisteredBeneficiary\": true,\n \"isNewBeneficiary\": false\n },\n \"ipAddress\": \"102.89.45.12\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sigmaprod.sabipay.com/api/v1/transaction-monitoring/instant")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["apiKey"] = '<api-key>'
request["apiSecret"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"transactionData\": {\n \"reference\": \"REP-TXN-2026-061101-456789\",\n \"transactionDate\": \"2026-06-11T09:45:00.000Z\",\n \"type\": \"debit\",\n \"currency\": \"NGN\",\n \"balanceBefore\": 8200000,\n \"accountCurrency\": \"NGN\",\n \"accountCurrencyBalanceBefore\": 8200000,\n \"amount\": 5750000,\n \"narration\": \"Vendor invoice payment for office equipment\",\n \"transactionScheme\": \"NIP\",\n \"isExternalPayment\": true,\n \"sessionId\": \"SESS-9f4b2c7a-20260611\",\n \"status\": true,\n \"channel\": \"bank transfer\",\n \"exchangeRate\": 1,\n \"usdExchangeRate\": 1500,\n \"senderAccount\": \"9876543210\",\n \"receiverAccount\": \"0123456789\",\n \"email\": \"amara.okafor@example.com\",\n \"vasReceiver\": \"+2348012345678\",\n \"vasProvider\": \"MTN\",\n \"refund\": false,\n \"isInternalAccount\": false,\n \"isStaffAccount\": false,\n \"isDormantAccount\": false,\n \"isCheque\": false,\n \"signatory\": \"Amara Okafor\"\n },\n \"anonymizedUserData\": {\n \"uniqueId\": \"CUS-10001\",\n \"identityNumber\": 22334455667,\n \"phone\": \"+2348012345678\",\n \"occupation\": \"Product Manager\",\n \"country\": \"NG\",\n \"state\": \"Lagos\",\n \"city\": \"Ikeja\",\n \"accountType\": \"individual\",\n \"age\": 34,\n \"gender\": \"f\",\n \"dateJoined\": \"2024-01-15T10:00:00.000Z\",\n \"isBanned\": false,\n \"isIdentityVerified\": true,\n \"businessCategory\": \"retail\",\n \"isPhoneNumberVerified\": true,\n \"bankCode\": \"044\",\n \"bankName\": \"Access Bank Plc\",\n \"name\": \"Amara Okafor\",\n \"iban\": \"NG12ACCESS000123456789\",\n \"userRisk\": \"medium\",\n \"sortCode\": \"044150149\",\n \"bankCountry\": \"NG\",\n \"dob\": \"1990-04-15\",\n \"email\": \"amara.okafor@example.com\",\n \"pepStatus\": false,\n \"sow\": \"salary\"\n },\n \"counterpartyData\": {\n \"accountNumber\": \"0123456789\",\n \"country\": \"NG\",\n \"accountType\": \"corporate\",\n \"bankCode\": \"058\",\n \"name\": \"Pastel Office Supplies Ltd\",\n \"identityNumber\": 7429883,\n \"iban\": \"NG12GTBANK000123456789\",\n \"sortCode\": \"058152036\",\n \"bankCountry\": \"NG\",\n \"bankName\": \"Guaranty Trust Bank\",\n \"email\": \"finance@pastelofficesupplies.com\"\n },\n \"thirdPartyUserData\": {\n \"uniqueId\": \"CARD-HOLDER-88421\",\n \"cardPan\": \"539923******0421\",\n \"email\": \"cardholder@example.com\"\n },\n \"device\": {\n \"deviceId\": \"ios-7F3A9C2E-91B4-4A5E-9D8A-1F23C4B56789\",\n \"manufacturer\": \"Apple\",\n \"name\": \"Amara iPhone 15 Pro\",\n \"osName\": \"iOS\",\n \"osVersion\": \"18.1.0\"\n },\n \"location\": {\n \"latitude\": \"6.6018\",\n \"longitude\": \"3.3515\",\n \"country\": \"NG\"\n },\n \"screeningData\": {\n \"senderName\": \"Amara Okafor\",\n \"receiverName\": \"Pastel Office Supplies Ltd\"\n },\n \"limits\": {\n \"dailyLimit\": 10000000,\n \"overdraftLimit\": 500000,\n \"individualTransactionLimit\": 6000000\n },\n \"beneficiary\": {\n \"isRegisteredBeneficiary\": true,\n \"isNewBeneficiary\": false\n },\n \"ipAddress\": \"102.89.45.12\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Transaction processed",
"data": {
"transactionId": "txn_67f96122c2a7d1f2b6ea1207",
"riskScore": "0.27",
"action": {
"result": "approved",
"code": 1
},
"ruleResult": "looks safe",
"reason": {
"code": "TM-LOW-RISK",
"message": "No high-risk behavior was detected for this transaction",
"severity": "low",
"rule": {
"id": "rule-velocity-001",
"name": "Velocity threshold check"
}
}
}
}{
"message": "transactionData.reference is required",
"code": "VALIDATION_ERROR"
}{
"message": "transactionData.reference is required",
"code": "VALIDATION_ERROR"
}Body
application/json
Transaction payload for reporting
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
IP address associated with the transaction
Response
Transaction processed
Response returned by POST /transaction-monitoring/instant
Processing status message
Example:
"Transaction processed"
Transaction decision payload. Null when only reporting flow is active.
Show child attributes
Show child attributes
Example:
{
"transactionId": "txn_67f96122c2a7d1f2b6ea1207",
"riskScore": "0.27",
"action": { "result": "approved", "code": 1 },
"ruleResult": "looks safe",
"reason": {
"code": "TM-LOW-RISK",
"message": "No high-risk behavior was detected for this transaction",
"severity": "low",
"rule": {
"id": "rule-velocity-001",
"name": "Velocity threshold check"
}
}
}
⌘I