4. Confirm with Nafath
The fourth step for registration is confirming the account with Nafath after submitting the third step. The merchant will open the Nafath App to approve the application and verify identity. During this time, periodically check the Nafath confirmation status by calling the following endpoint.
Endpoint
POST /api/partner/register/confirm-account
Request Headers
Header | Required | Description |
---|---|---|
Authorization | Yes | Bearer token provided by Authentication Endpoint |
Accept | Yes | It must be set to application/JSON. |
Content-Type | Yes | It must be set to application/JSON. |
{
"Authorization": "Bearer [id_token]",
"Accept": "application/json",
"Content-Type": "application/json"
}
Request Body Parameters
Field name | Field type | Description | Restrictions |
---|---|---|---|
signature | String | The signature is received from the first step. It must be passed as is. | Modifying the signature will invalidate the registration session. |
sessionUuid | String | The registration session UUID. | This field must be passed as is. Otherwise, it will invalidate the registration session. |
mobile | String | It is the mobile number of the merchant. | It must be the mobile number submitted in the first step. |
partnerProfileNo | String | The partner profile no. It will be given upon signing the contract with Paylink. |
An example of the request is as follows:
{
"signature": "ae135f2506dc3****",
"mobile": "00966512345678",
"sessionUuid": "96ea8e22-edef-414b-9724-3bd2d494b710",
"partnerProfileNo": "01234567"
}
Success Response
After submitting the above input, the response details are as follows:
Field name | Field type | Description |
---|---|---|
signature | String | This value is a signature that you must pass to the next step. It is used for data integrity. |
mobile | String | It is the mobile number of the merchant. |
sessionUuid | String | The registration session UUID. |
nafathNumber | String | Email of the merchant. |
status | String | The status of the Nafath approval (Waiting, Expired, Rejected, and Completed) |
String | The email of the merchant. | |
errorMessage | String | If Nafath status is ERROR |
activatingAccountResponse | String |
Example of the response:
{
"signature": "ae135f2506dc3c44152d62265419c09e****",
"mobile": "00966512345678",
"sessionUuid": "96ea8e22-edef-414b-9724-3bd2d494b710",
"nafathNumber": "26",
"status": "Waiting",
"email": "[email protected]",
"errorMessage": null,
"activatingAccountResponse": null
}
Important Notes
Please ensure that this request is sent frequently until we obtain a status update of "Expired," "Rejected," or "Completed" from Nafath.
Nafath Status
Waiting
- If the Nafath status is Waiting, it is necessary to send this request periodically until we receive the status Expired, Rejected, or Completed from Nafath.
Completed
- When the Nafath status is Completed, it indicates that the merchant's registration has been successfully completed and is currently being processed by the Paylink operation team. There is no need to send this request again.
- The status Completed will remain in effect for one hour. After that, any subsequent requests will result in an ERROR with the message "Invalid Request, Trx Not Exist.".
Expired
- If the Nafath status is Expired, you can send another request by repeating the previous step (Add Merchant Information) which will always create a new session in the Nafath app.
ERROR
- If the Nafath status returns an ERROR, the error message will be displayed in the errorMessage field in the following format:
{{number}}: {{error message}}
- For Example:
{
"signature": "ae135f2506dc3c44152d62265419c09e****",
"mobile": "00966512345678",
"sessionUuid": "96ea8e22-edef-414b-9724-3bd2d494b710",
"nafathNumber": "26",
"status": "ERROR",
"email": "[email protected]",
"errorMessage": "CODE 400:Invalid Request,Trx Not Exist",
"activatingAccountResponse": null
}
Use Activation Webhook
After this step, you need to use "Activation Webhook" to wait and listen to the approval decision from the Paylink operation team.
Updated 4 months ago