SDK Guides

Acronyms and their Abbreviations

This section contains the acronyms used in this document and their corresponding full forms to enhance
user comprehension.

Software Development Kit

Valor PayTech stands out as a key player in fintech innovation, offering a range of solutions like the VL500
and RCKT Android POS Payment applications that adhere to EMV and Contactless standards. The Valor SDK
integration document outlines the requirements for utilizing the Valor Pay customized EMV and
Contactless certified SDK. This SDK is compatible with Valor VL500 and RCKT Android POS devices. Our
VL500 and RCKT Software Development Kits are now available for seamless integration. By leveraging the
SDK kit, you can enable payment processing within non-financial applications for customer transactions.
Simply utilize the AAR file to integrate the Valor EMV and Contactless Certified application, allowing
customers to access Valor API to process payments.

Integration Prerequisites

To integrate with Valor SDKs and facilitate payment transactions, customers must obtain the following essential data from Valor PayTech:

  • EPI: End Point Identifier
  • Merchant profile details: The Merchant profile includes vital information concerning whether it's a
    surcharging or traditional payment profile for payment-related operations. This data is instrumental
    in configuring and customizing payment processes efficiently.
  • Processor: Payment processor details.
  • Transaction server domain: Domain address of the payment authorizing server.
  • Transaction server port: Port number for the transaction authorizing connection.

Functional Specifications

The major functionalities of the API are as follows:

  • Initialize the Terminal (Only for every boot)
  • Get Device Configuration
  • RKI Download
  • Card Present API
  • Perform Transaction
  • Print Receipt
  • Get Online PIN
  • Fetch Perform Transaction
  • Settlement
  • Clear Reversal
  • Payment SDK Init
  • Bin Look UP
  • Fetch Transaction List
  • Get EPI
  • Get Store Info
  • Open Cash Draw
  • Get RKI Info
  • Upload Transaction Log
  • Update System Config
  • Set Max Offline Count
  • Upload Offline Transaction
  • Get Offline Transaction List
  • Delete Offline Transaction
  • Start Offline Service
  • Stop Offline Service
  • Transaction status Check
  • Start Manual Transaction
  • Custom display Layout
  • Detailed explanation of these functionalities are as follows:

Initialize the Terminal

This function is invoked each time the application launches. Upon activation, essential EMV parameters for
both contact and contactless transactions, including Application Identifier (AID) and Certificate Authority
Public Key (CAPK), are loaded for operation.

Get Device Configuration

The Get Device Configuration wrapper offers access to essential device information, including RAM size,
disk capacity, serial number, CT-kernel version, CL-kernel version, battery percentage, and more. It is
optional, allowing users to retrieve system-related data as required.

RKI Download

Every ISO has an Individual Key group, so whenever ISO Boards a merchant, they can assign a Key group in boarding process or later by editing the parameters under Key management section, the Key Group option can be used to assign the appropriate device group.

This functionality is invoked during the process. It involves Valor having control over the traditional RKI,
where clients share the serial number and device group details configured in the Futurex Portal with Valor
for processing the traditional RKI securely.


Card Present API

The Card Present API is utilized by the client application to physically present the card on the device or PIN
pad, enabling the user to read the card details. When this functionality is invoked, the client application
must supply the following details:

  • Transaction Mode (TranMode)
  • Transaction Code (TranCode)
  • Processor Index
  • Amount (if applicable, only for financial transactions)

This API will return on EMV related information (DE_55), card holder information.

Notes:

Application menu display: AAR facilitates the display of the application menu. This feature is invoked only
when a chip (EMV) card is personalized with multiple applications, allowing the user to select the
appropriate application.

PIN entry: If the card requires a PIN, AAR will prompt for it. However, users can bypass PIN entry when
using the card present API.
Signature mandate: AAR will indicate the signature mandate flag in the output data if a signature is
required for the card. In such instances, the client app must prompt the cardholder for a signature.

Perform Transaction

Client App must call Card Present API before calling this API. This is because the values returned by Card
Present API is required as an input for this functionality. This API requires Card Present API return values
and require additional inputs such as Transaction Server IP and Transaction Server Port. This API returns
transaction status such as Transaction Approved or Decline. If the transaction gets approved, it will return
RRN and AuthCode.

Get Online PIN

When the Get Online PIN functionality is invoked using the Valor SDK, a PIN block will be generated if the
card requires a PIN. This process ensures that the necessary security measures are in place for transactions
that necessitate a Personal Identification Number (PIN).

Fetch Perform Transaction

The Fetch Perform Transaction API, initiated by the base application to interact with the ValorSDK,
retrieves transaction information from previous completed transactions. This function is primarily utilized
for actions such as Void, Tip-Adjust, Ticket, and Re-print, providing access to essential transaction data for
these operations.

Print Receipt

The Print Receipt function within the Valor SDK can be called by the base application if necessary. By
default, this function prints a receipt using a built-in template provided by Valor, ensuring a standardized
and professional output for transaction records.

Settlement

Initiate settlement processing for transactions that have been authorized and captured. It submits eligible transactions for settlement with the processor. Settlement finalizes the transaction and moves funds from the customer’s account to the merchant.

Clear Reversal

This method is used for clear reversal transaction data.

Payment SDK Init

This method initializes the payment SDK. It consolidates the following processes:

  • SDK_Service_Int
  • LoadConfig
  • SDKInt

Bin Look UP

This method is used to check whether a card is a credit or debit card by querying card BIN information.

Fetch Transaction List

This method retrieves transactions based on multiple filter criteria such as date ranges, transaction types, card schemes, RRN (Retrieval Reference Number), approval codes, etc.

Get EPI

This method retrieves the current serial number configured EPI.

Get Store Info

This method retrieves current EPI store information such as store name, address, city, etc.

Open Cash Draw

Initiates a command to open the cash drawer connected to the POS device.

Get RKI Info

This method retrieves the current EPI RKI key information.

Upload Transaction Log

This method is used to upload transaction information to the Valor portal, such as the transaction invoice number, signature, cardholder name, etc.

Update System Config

This method is used to update system configuration settings, such as sleep timeout, brightness, media volume, and button/status bar visibility

Set Max Offline Count

The application can configure the maximum number of offline transactions allowed before requiring an upload. By default, this value is set to 150.

Upload Offline Transaction

This method is used to upload locally stored offline transactions to the server.

Get Offline Transaction List

This method is used to retrieve offline transactions stored locally on the device.

Delete Offline Transaction

This method is used to clear (delete) offline transactions from local storage based on the specified parameters.

Start Offline Service

This method is used to pending offline transactions are automatically retried for upload every 10 minutes until they are
successfully uploaded or the retry limit is reached. This method return 1 is started successfully.

Stop Offline Service

Stops the offline transaction service, halting any ongoing upload attempts of offline transactions. Returns Status code indicating the result of the stop operation ( For example: 1 = Service stopped successfully, Else values indicate an error or failure to stop the service).

Transaction status Check

This method is used to check the transaction status for a specific STAN number.

Start Manual Transaction

The Start Manual Transaction API is used when the client application directly captures input from the user via manual card entry.

Custom display Layout

This method is used when capturing client application UI interactions and actions (e.g., click events, text input, setting text).

Conclusion

In conclusion, by integrating the Valor SDK into your application, you gain access to a comprehensive set of
functionalities tailored for managing transactions efficiently. By leveraging the capabilities of the Valor SDK,
you can streamline transaction processing and enhance the overall user experience within your
application.

Contact details

For any questions or assistance, please don't hesitate to reach out to our team at [email protected]
or call us at 1.800.615.8755. For additional resources, be sure to visit www.valorpaytech.com/kb. We
appreciate your trust in us and look forward to serving your payment processing needs.