Cancel an payroll file before it is processed by the bank
Stop Payroll API enables you to stop a payroll payment request that has already been submitted to the bank but has not yet been processed. This service helps organizations prevent the execution of an incorrect or unintended payroll file by sending a cancellation request using the original payroll reference.
Cancellation requests are subject to bank processing rules and the current status of the payment. Successfully submitting a cancellation request does not guarantee that the payment will be stopped if it has already been processed by the bank.
Domain details
Environment
Domain
Rate/Limit
Sandbox
3 Calls per Minute
Production/LIVE
To be provided upon onboarding
Based on contract
Endpoint URL | Method | Authentication requirements |
|---|---|---|
| POST |
|
curl --location 'https://sandboxapi.onesingleview.com/api/v2/cancel/payroll' \
--header 'SVReferenceID: 29214008782670' \
--header 'CompanyId: SVUATAPIDASHBOARD' \
--header 'Device: web' \
--header 'DateTimeStamp: 2026-06-23T10:20:39' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjoiTDNyMmpxV29JS2I4MTNodDBNaVN4MzdCZHREWlNGdTFad3B5QnlkOVpHelZXR2ZwUmFQNUYrZzB5YVg5bi9KVE5wK1FucERJMEZXWWN6VGJsOEc5cXhaY0U2TXlZbmNtWWZFMzZkdlFpTTRXeVBNalQ2WG1NUDh5YXI4RDVWZTV5c3h3dDRFektqdjdyS2tqQkpJcGo0VmJNeFlLbG5aNHc0V1ArT2FIVzNCNzkrUT0iLCJpYXQiOjE3ODIyMTM3MzUsImV4cCI6MTc4MjIxNzMzNX0.7YieIyFLapyIJ8fBw8gROzH8OqOlN650yrgFQ9xDqaU' \
--header 'Content-Type: application/json' \
--data '{
"Message": {
"OSVCancelPayrollPaymentRequest": {
"TransactionType": "CANCEL",
"BankCode": "NCB",
"CompanyCode": "OSV0001",
"PayrollReferenceNumber": "128830",
"BankReferenceNumber": "",
"FileSeqNo": "0701",
"OrderingCustomerAccountNumber": "11100201784801",
"CancelReason": "Total file Stopped for payroll payment"
}
}
}
,
"Signature": "szYN7DooWZFfnblL7isLasWXmOM/H3iWmHW04nAhAVTeXFyubbN/ztRT8d9h/uMU69YCNEmBiHYgiJswgyERUuY+JeaV0rdaEojjq0NAKojB3A0pqAINiVEa4hJLSpJYiSZwjDLYAbYWdOsaUSgzE6MgDuQHPRZc7qxD3ngUh9DtwKSkivpItAhhkQttqIyxntHVghGPzmtN/WAECcY9NN9ZrK8l31gLmxDb/BCjqh0wSXRgk9MNAWBmucamBeCzNCtQLIc3j0RUQTf4rBPeMgi7qf/2L66d+0Hpr4TzlHkmyn4deo+GxjgYEKqc0xP28PXsyvV6UKuWKmpEM+fTiA=="
}'Request parameters
JSON Tag | Requirement | Description | Data type |
|---|---|---|---|
OSVCancelPayrollPaymentRequest | Mandatory | Root node containing the stop payroll message | Object |
TransactionType | Mandatory | Details of the transaction type to be mentioned as | String |
BankCode | Mandatory | Unique bank identification code
| String |
CompanyCode | Mandatory | Sender company code or identifier provided by the bank at the time of on-boarding | String |
PayrollReferenceNumber | Mandatory | Unique identification number of the payroll requested for cancellation | String |
BankReferenceNumber | Conditional Mandatory for ANB | Unique bank identification details provided by ANB | String |
FileSeqNo | Conditional Mandatory for SNB | Unique file sequence number of the payroll as provided by the bank | String |
OrderingCustomerAccountNumber | Conditional Mandatory for SNB | Unique debit bank account details mentioned for the payroll | String |
CancelReason | Conditional Mandatory for Al Rajhi & SNB | Details about the reason for cancellation of the payroll | String |
Signature | Mandatory | Encrypted string generated using a Private Key/CA-Signed Certificate with SHA-256 and RSA (JCE Signature) | String |
{
"OSVCancelPayrollPaymentResponse": {
"TimeStamp": "2026-07-09T10:20:39",
"BankCode": "NCB",
"CompanyCode": "OSV0001",
"PayrollReferenceNumber": "128830",
"BankReferenceNumber": "",
"StopPaymentRef": "",
"StatusCode": "Completed",
"StatusDetail": "Payroll stopped successfully."
}
}Response parameters
JSON Tag | Description | Data type |
|---|---|---|
OSVCancelPayrollPaymentResponse | Tag carrying information on stop payroll process response | Object |
TimeStamp | Time denoting the fetching of response for the stop payroll process | Date |
BankCode | Unique bank identification code
| String |
CompanyCode | Sender company code/identifier | String |
PayrollReferenceNumber | Unique identification number of the payroll requested for cancellation | String |
StopPaymentRef | Unique bank identification details for stop payroll process provided only by Al Rajhi Bank | String |
StatusCode | Code representing status of the transaction in the request | String |
StatusDetail | Details of the status code represented for the transaction in the request | String |
StatusCode | StatusDetail |
|---|---|
Processing | Your stop payroll request is processed successfully to the bank. Kindly perform Stop Payroll Enquiry in a few minutes to know the final status. |
Completed | Payroll stopped successfully. |
Failed | Bank response description |
Response_Timeout | Timeout! Unable to get response from the bank. Please try later or contact SingleView support. |