PIN Payment Flow Update

Continue a PIN flow payment transaction or a subscription

If you decided to implement PIN flow for your service, besides entering a phone number, the end-user must enter a PIN that was received within an SMS message in order to authenticate the transaction and continue with the started purchase.
Submit PIN action is done for a transaction that is in status PENDING and operation/action is PIN.

Type: application/json composed of parameters with associated values.

Before initiating payment you will need to obtain an access token

URL to which a request should be sent

https://capi.centili.com/payments/v3/transactions/{transactionId}/pin

POST payment flow update request

https://capi.centili.com/payments/v3/transactions/{transactionId}/pin HTTP/1.1
Host: capi.centili.com:443
Content-Type: application/json
Authorization:bearer token

{
  "pin": "1375"
}

Request parameters

ParameterDescriptionExampleRequired as
transactionIdUnique identifier of transaction in Centili system.17000002453 mandatory
pinPin which is being validated1375 mandatory

POST payment flow update response

Once a request is received, Centili will synchronously respond with an appropriate HTTP response and a list of parameters and values in JSON format:

👍

200

PIN validation successful

HTTP/1.1 200 OK
Content-Type: application/json

{
    "transactionId": "17000002453",
    "clientData": {
        "clientUserId": null,
        "clientReference": null
    }
}

Response parameters

ParameterDescriptionExample
transactionIdUnique identifier of transaction in Centili system.17000002453
clientUserIdUnique identification parameter under your system (pass-through variable).appID1
clientReferenceIdentification of the customer.usrId1983

❗️

4xx client error / 5xx server error

400 - Invalid PIN, request can be retried
401 - Invalid credentials
404 - Transaction not found
429 - Number of attempts over the max retry limit, request can not be retried.
500 - Request can not be processed at the current time

HTTP/1.1 429 Too Many Requests
Content-Type: application/json

{
  "code": "PIN_INVALID_RETRY_NOT_POSSIBLE",
  "message": "Pin invalid retry not possible"
}
ParameterDescriptionExample
codeError response codePIN_INVALID_RETRY_NOT_POSSIBLE
messageError response messagePin invalid retry not possible

📘

Note:

Please note that this applies only to cases when PIN input is done on client’s page and submitted to Centili for validation. In case PIN input and validation are done on operator’s page flow it will be handled as “URL_REDIRECT” flow.