Know Your Customer
...
Global
UAE
Saudi Arabia KYB Async API
overview saudi arabia kyb is a product created for the verification of businesses that are registered in the kingdom of saudi arabia the details of businesses are fetched by using the cr (commercial registration number) a commercial registration number is an authorised, unique identifier assigned by the ministry of commerce of ksa the saudi arabia kyb is designed to be an asynchronous api; therefore, there are two api that are combined to give the details of the requested cr number first api saudi arabia business fetch api endpoint saudi business number fetch inputs the api inputs are the cr number and a callback url this api initiates the request for getting the details of the provided cr number output the api outputs the request id as output in successful request this request id can be used to track the output from the second the id is useful if the client does not have available callback url service second api saudi arabia business get data api endpoint /saudi business number get data inputs the api takes a request id as input, i e the output by the first api is the input for the second api this request id can be used by the client to get the details fetched for the initial inputs output the output provided the api completes the process to get details for a given cr number the output includes the business details present for the given cr the details of fields in the output is discussed below api specification 1\ saudi arabia business fetch api curl pre production curl location 'https //api preproduction signzy app/api/v3/uae/saudi business number fetch' \\ \ header 'authorization \<auth token>' \\ \ header 'content type application/json' \\ \ data raw '{ "businessnumber" "sample business number", "callbackurl" "sample callback url" }' production curl location 'https //api signzy ae/api/v3/uae/saudi business number fetch' \\ \ header 'authorization \<auth token>' \\ \ header 'content type application/json' \\ \ data raw '{ "businessnumber" "sample business number", "callbackurl" "sample callback url" }' businessnumber input field regex the businessnumber that is cr (commercial registration) number should have a length of 10 digits, from 0 to 9 sucess response 200 resposne { "result" { "requestid" "6818aaa6674f29f6b6a3c923" } } description table field description data type requestid tracking id, that is generated for the requested cr number we want to check string failure responses 400 bad request invalid business number { 	"error" { 	 "name" "error", 	 "message" "businessnumber must consist 10 digits ", 	 "status" 400, 	 "reason" "validation error", 	 "type" "bad request", 	 "statuscode" "400" 	} } 400 bad request invalid call back url { 	"error" { 	 "name" "error", 	 "message" "bad request callback url is invalid ", 	 "status" 400, 	 "reason" "validation error", 	 "type" "bad request", 	 "statuscode" "400" 	} } 409 upstream down { 	"error" { 	 "name" "error", 	 "message" "error in fetching data from upstream", 	 "status" 409, 	 "reason" "upstream error", 	 "type" "upstream down", 	 "statuscode" "409" 	} } 2\ saudi arabia business get data api curl pre production curl location 'https //api preproduction signzy app/api/v3/uae/saudi business number get data' \\ \ header 'authorization \<auth token>' \\ \ header 'content type application/json' \\ \ data '{ "requestid" "0000a9add9feaf999df100a9" }' production curl location 'https //api signzy ae/api/v3/uae/saudi business number get data' \\ \ header 'authorization \<auth token>' \\ \ header 'content type application/json' \\ \ data '{ "requestid" "0000a9add9feaf999df100a9" }' success response 200 successful request { 	"result" { 	 "businessnamearabic" "شركة كريدي اجريكول سي اي بي العربية المالية", 	 "commercialregistrationnumber" "1010741732", 	 "durationofestablishment" "99", 	 "recordstatus" "نشط", 	 "capital" "50000000 0", 	 "unifiednationalnumber" "7025752143", 	 "mailbox" "غير محدد", 	 "recordissuedate" "2021 09 14", 	 "phone" \[ 	 "0000000000", 	 "0555450022" 	 ], 	 "website" "", 	 "businessactivityarabic" "التعامل في الأوراق المالية الترتيب في الأوراق المالية تقديم المشورة في الأوراق المالية" 	} } 102 still processing the request { "result" { "requestid" "6818adf4fb54389cc6303b3c", "statuscode" 102, "status" "processing" } } description table field description data type businessnamearabic the arabic name of the business string commercialregistrationnumber the commercial registration number of the business string durationofestablishment the number of years the business has been established string recordstatus the current status of the business record string capital the capital value of the business string unifiednationalnumber the unified national number (e g , tax id or similar identifier) string mailbox the mailbox address of the business (if defined) string recordissuedate the date when the business record was issued date phone list of phone numbers associated with the business list of strings website the website url for the business (if available) string businessactivityarabic the business activity description in arabic string failure response 404 data not found { "error" { "name" "error", "message" "details are not found for the given request", "status" 404, "reason" "data not found", "type" "data not found", "statuscode" "404" } } 409 upstream down { "error" { "name" "error", "message" "could not process the request try again later", "status" 409, "reason" "upstream error", "type" "conflict", "statuscode" "409" } } other error code mapping 401(unauthorized) { "error" { "name" "error", "message" "invalid authentication credentials", "status" 401, "reason" "authentication error", "type" "bad request", "statuscode" 401 } } 403 (forbidden) { "error" { "name" "error", "message" "forbidden", "reason" "error", "type" "bad request", "statuscode" "403" } } 500 (internal server error) { "error" { "name" "error", "message" "internal server error", "status" 500, "reason" "error", "type" "bad request", "statuscode" 500 } } field type description name string text displayed on the screen explaining error type reason string reason for the error status number http status code message string error message indicating an upstream error type string error type statuscode number status code representing the error scenario getting help please feel free to contact us if you have any questions, require clarification, or have ideas for how to make the documents or any of our services better you can reach out to us at help\@signzy com we strive to provide prompt and reliable assistance, ensuring your queries are addressed effectively we value your feedback and are committed to making your experience smooth and enjoyable our team is dedicated to assisting you with any needs you may have thank you for choosing our services we look forward to helping you!