Skip to main content

Application Development Kit (Version 4.8)


sdi_nfc.h

Last updated: 02-Oct-2025
Go to the documentation of this file.
    1 #ifndef CLIENT_SDI_NFC_H_    2 #define CLIENT_SDI_NFC_H_    3      4 #include <stddef.h>    5 #include <stdlib.h>    6 #include <nfc/NFC_Interface.h>    7 #include <nfc/NFC_Client.h>    8      9 // TODO doxygen   10 namespace libsdi   11 {   12     25 CL_STATUS NFC_Client_Init(CONNECTION_TYPE type);   26     31 CL_STATUS NFC_Client_Init_CheckVer(CONNECTION_TYPE type, int maj, int min, int bld);   32     37 CL_STATUS NFC_SerialOpen(void);   38     43 CL_STATUS NFC_SerialClose(void);   44     48 ResponseCodes NFC_Ping(rawData *output);   49     57 ResponseCodes NFC_Get_Version(rawData *output);   58     64 ResponseCodes NFC_Config_Init(void);   65     71 ResponseCodes NFC_Set_Callback_Function(rawData* id, NfcCallbackFunction *callbackFunction );   72     77 ResponseCodes NFC_Callback_Test(void); // unsupported   78     86 ResponseCodes NFC_PT_Open();   87     95 ResponseCodes NFC_PT_Close();   96    104 ResponseCodes NFC_PT_FieldOn();  105    113 ResponseCodes NFC_PT_FieldOff();  114    122 ResponseCodes NFC_PT_Polling(pollReq* inPollReq, pollRes* outPollRes);  123    131 ResponseCodes NFC_PT_PollingFull(pollReq* inPollReq, pollResFull* outPollRes);  132    140 ResponseCodes NFC_PT_PollingABF(pollABFParams* inPollReq, pollABFRes* outPollRes);  141    146 void NFC_Free_Poll_Data(pollRes *outPollRes);  147    152 void NFC_Free_Poll_Data_Full(pollResFull *outPollRes);  153    161 ResponseCodes NFC_PT_Cancel_Polling(void); // unsupported for instance  162    172 ResponseCodes NFC_PT_Activation(NFC_CARD_TYPE cardtype, rawData* rd_activationData);  173    179 ResponseCodes NFC_PT_FtechBaud(NFC_F_BAUD baud);  180    186 ResponseCodes NFC_PT_TxRx(NFC_CARD_TYPE cardtype, rawData* inBuff, rawData* outBuff); // unsupported  187    195 ResponseCodes NFC_Mifare_Authenticate(unsigned char blockNumber, MIFARE_KEY_TYPE keyType, rawData*  Key);  196    205 ResponseCodes NFC_Mifare_Read (I_MIFARE_CARD_TYPE m_cardType, unsigned int StartBlockNum, unsigned int blockAmount, rawData* out_buff);  206    215 ResponseCodes NFC_Mifare_Write(I_MIFARE_CARD_TYPE m_cardType, unsigned int StartBlockNum, unsigned int blockAmount, rawData* in_buff);  216    223 ResponseCodes NFC_Mifare_Increment(unsigned int blockNum, int amount);  224    231 ResponseCodes NFC_Mifare_Decrement(unsigned int blockNum, int amount);  232    239 ResponseCodes NFC_Mifare_Increment_Only(unsigned int blockNum, int amount);  240    247 ResponseCodes NFC_Mifare_Decrement_Only(unsigned int blockNum, int amount);  248    254 ResponseCodes NFC_Mifare_Transfer(unsigned int blockNum);  255    261 ResponseCodes NFC_Mifare_Restore(unsigned int blockNum);  262    269 ResponseCodes NFC_Felica_Exchange(felicaTxData* in_buff, felicaRxData* out_buff);  270    278 ResponseCodes NFC_Felica_Polling(unsigned int pollTimeout ,felicaPolling* inData , felicaPollingOutput* outData);  279    287 ResponseCodes NFC_APDU_Exchange(apduTxData* txData, apduRxData* rxData); // unsupported  288    296 ResponseCodes NFC_Target_Action(NFC_TARGET_ACTION action, unsigned int timeout, rawData* rd_inData, rawData* rd_outData);  297    305 ResponseCodes NFC_Create_Ndef(NFC_NDEF_TYPES type, rawData* rd_inData, rawData* rd_outData);  306    313 VasStatus NFC_Terminal_Config(rawData *input, rawData *output);  314    323 VasStatus NFC_TERMINAL_ReadConfig(rawData* id, rawData *output);  324    331 VasStatus NFC_VAS_ReadConfig(rawData* id, rawData *output);  332    340 VasStatus NFC_VAS_Activate(rawData* id,rawData *input, rawData *output);  341    349 VasStatus NFC_VAS_Cancel(void);  350    358 VasStatus NFC_VAS_UpdateConfig(rawData* id, rawData *input, rawData *output);  359    365 VasStatus NFC_VAS_CancelConfig(rawData*  id);  366    376 VasStatus NFC_VAS_PreLoad(rawData* id, rawData *input, rawData *output);  377    384 VasStatus NFC_VAS_CancelPreLoad(rawData*  id);  385    393 VasStatus NFC_VAS_Decrypt(rawData* id, rawData *input, rawData *output);  394    400 VasStatus NFC_VAS_Action(rawData* id, int action,rawData* inData, rawData* outBuff);  401    402 } // namespace libsdi  403    404    405 // By default extern "C" NFC API is supported for migration. If this is  406 // not required or if there are conflicts set SDI_NFC_NAMEPACE_ONLY to  407 // have only the C++ variant in name space libsdi.  408 #ifndef SDI_NFC_NAMESPACE_ONLY // enable if applicable  409    410 #define NFC_Client_Init            libsdi::NFC_Client_Init  411 #define NFC_Client_Init_CheckVer   libsdi::NFC_Client_Init_CheckVer  412 #define NFC_SerialOpen             libsdi::NFC_SerialOpen  413 #define NFC_SerialClose            libsdi::NFC_SerialClose  414    415 #define NFC_Ping                   libsdi::NFC_Ping  416 #define NFC_Get_Version            libsdi::NFC_Get_Version  417 #define NFC_Config_Init            libsdi::NFC_Config_Init  418 #define NFC_Set_Callback_Function  libsdi::NFC_Set_Callback_Function  419 #define NFC_Callback_Test          libsdi::NFC_Callback_Test  420    421 #define NFC_PT_Open                libsdi::NFC_PT_Open  422 #define NFC_PT_Close               libsdi::NFC_PT_Close  423 #define NFC_PT_FieldOn             libsdi::NFC_PT_FieldOn  424 #define NFC_PT_FieldOff            libsdi::NFC_PT_FieldOff  425 #define NFC_PT_Polling             libsdi::NFC_PT_Polling  426 #define NFC_PT_PollingFull         libsdi::NFC_PT_PollingFull  427 #define NFC_Free_Poll_Data         libsdi::NFC_Free_Poll_Data  428 #define NFC_Free_Poll_Data_Full    libsdi::NFC_Free_Poll_Data_Full  429 #define NFC_PT_Cancel_Polling      libsdi::NFC_PT_Cancel_Polling  430 #define NFC_PT_Activation          libsdi::NFC_PT_Activation  431 #define NFC_PT_FtechBaud           libsdi::NFC_PT_FtechBaud  432 #define NFC_PT_TxRx                libsdi::NFC_PT_TxRx  433    434 #define NFC_Mifare_Authenticate    libsdi::NFC_Mifare_Authenticate  435 #define NFC_Mifare_Read            libsdi::NFC_Mifare_Read  436 #define NFC_Mifare_Write           libsdi::NFC_Mifare_Write  437 #define NFC_Mifare_Increment       libsdi::NFC_Mifare_Increment  438 #define NFC_Mifare_Decrement       libsdi::NFC_Mifare_Decrement  439 #define NFC_Mifare_Increment_Only  libsdi::NFC_Mifare_Increment_Only  440 #define NFC_Mifare_Decrement_Only  libsdi::NFC_Mifare_Decrement_Only  441 #define NFC_Mifare_Transfer        libsdi::NFC_Mifare_Transfer  442 #define NFC_Mifare_Restore         libsdi::NFC_Mifare_Restore  443    444 #define NFC_Felica_Exchange        libsdi::NFC_Felica_Exchange  445 #define NFC_Felica_Polling         libsdi::NFC_Felica_Polling  446 #define NFC_APDU_Exchange          libsdi::NFC_APDU_Exchange  447 #define NFC_PT_PollingABF          libsdi::NFC_PT_PollingABF  448    449 #define NFC_Target_Action          libsdi::NFC_Target_Action  450 #define NFC_Create_Ndef            libsdi::NFC_Create_Ndef  451    452 #define NFC_Terminal_Config        libsdi::NFC_Terminal_Config  453 #define NFC_TERMINAL_ReadConfig    libsdi::NFC_TERMINAL_ReadConfig  454 #define NFC_VAS_ReadConfig         libsdi::NFC_VAS_ReadConfig  455 #define NFC_VAS_Activate           libsdi::NFC_VAS_Activate  456 #define NFC_VAS_Cancel             libsdi::NFC_VAS_Cancel  457 #define NFC_VAS_UpdateConfig       libsdi::NFC_VAS_UpdateConfig  458 #define NFC_VAS_CancelConfig       libsdi::NFC_VAS_CancelConfig  459 #define NFC_VAS_PreLoad            libsdi::NFC_VAS_PreLoad  460 #define NFC_VAS_CancelPreLoad      libsdi::NFC_VAS_CancelPreLoad  461 #define NFC_VAS_Decrypt            libsdi::NFC_VAS_Decrypt  462 #define NFC_VAS_Action             libsdi::NFC_VAS_Action  463    464 #endif // SDI_NFC_NAMESPACE_ONLY  465 #endif // CLIENT_SDI_NFC_H_

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