Skip to main content

SCA Functional Specification

CONFIRMATION

Last updated: 04-Dec-2024

The Secondary port Confirmation command is invoked when the application has requested for a POS confirmation on the customer ID check through an unsolicited message for an APM (Ex: Klarna) transaction.

Up on confirmation of the ID, the POS must trigger this Confirmation with the field value as CONFIRMED or DENIED.

Request Packet
Field Rule Type Minimum Maximum Value(s) Description
FUNCTION_TYPE Required Static value N/A N/A SECONDARYPORT Type of function.
COMMAND Required Static value N/A N/A CONFIRMATION Command name
VALUE Required Static value N/A N/A
  • CONFIRMED
  • DENIED
The field value to be triggered based on POS confirmation on the customer ID check through an unsolicited message and requested by the application.
POS_RECON Optional Character 1 30   POS reconciliation. POS Reconciliation field to be echoed back in response to POS. Example: RetailPOS1
COUNTER Required Numeric 1 10   COUNTER is used for a given MAC label. Each COUNTER should be higher than the last one. This is used to authenticate the POS. Example: 100
MAC Required Base64 Encoded Data N/A N/A   Message Authentication Code. This is used to authenticate the POS.
MAC_LABEL Required Character 1 50   Associated label that tells the device which MAC_KEY to use to decrypt the value of MAC. This is used to authenticate the POS. Example: REG1
Example

Following is an example of request packet

<TRANSACTION>
<FUNCTION_TYPE>SECONDARYPORT</FUNCTION_TYPE>
<COMMAND>CONFIRMATION</COMMAND>
<VALUE>CONFIRMED</VALUE>
</TRANSACTION>
Response Packet
Field Type Value Description
RESPONSE_TEXT Character   Processor response text. Example: SUCCESS
RESULT Character   This indicates the Result details. Example: OK
RESULT_CODE Numeric Expected result code: -1, 59070, 59069 This indicates the result code. Refer to Result/Error Codes for details.
TERMINATION_STATUS Character SUCCESS and FAILURE This indicates the transaction termination status. This is the overall status of the transaction irrespective of approved or declined. Like, if the output is generated then the status is SUCCESS and if no output is generated then the status will be FAILURE.
SECONDARY_DATA Numeric Refer to Secondary Data Values for all the secondary data value. This indicates the status of the secondary data upon sending the queries for VHQ updates. Example: 57 = Klarna ID Check Processing
DETAILED_STATUS Numeric Refer to Detailed Status Values for all the status codes and description. Returns the status code. Example: 170 = PROCESSING CP_APP_REQUESTS_POS_INPUT
POS_RECON Character   POS reconciliation field echoed back if sent in request. Example: RetailPOS1
COUNTER Numeric   Echoes counter sent in the request. Example: 100
Example

Following is an example of response packet.

<RESPONSE>
<RESPONSE_TEXT>SUCCESS</RESPONSE_TEXT>
<RESULT>OK</RESULT>
<RESULT_CODE>-1</RESULT_CODE>
<TERMINATION_STATUS>SUCCESS</TERMINATION_STATUS>
<SECONDARY_DATA>57</SECONDARY_DATA>
<DETAILED_STATUS>170</DETAILED_STATUS>
</RESPONSE>

Following is an example of response packet with error codes.

<RESPONSE>
<RESPONSE_TEXT>Incorrect Confirmation Value</RESPONSE_TEXT>
<RESULT>FIELD_ERROR</RESULT>
<RESULT_CODE>59070</RESULT_CODE>
<TERMINATION_STATUS>SUCCESS</TERMINATION_STATUS>
<SECONDARY_DATA>57</SECONDARY_DATA>
</RESPONSE>

<RESPONSE>
<RESPONSE_TEXT>Confirmation Unexpected</RESPONSE_TEXT>
<RESULT>ERROR</RESULT>
<RESULT_CODE>59069</RESULT_CODE>
<TERMINATION_STATUS>SUCCESS</TERMINATION_STATUS>
<SECONDARY_DATA>2</SECONDARY_DATA>
<DETAILED_STATUS>-1</DETAILED_STATUS>
</RESPONSE>

Need help?

Do you have a question? If you didn’t find the answer you are looking for in our documentation, you can contact our Support teams for more information. If you have a technical issue or question, please contact us. We are happy to help.

Not yet a Verifone customer?

We’ll help you choose the right payment solution for your business, wherever you want to sell, in-person or online. Our team of experts will happily discuss your needs.

Verifone logo