# Overview

> Introduction to the Alipay+ NFC SDK architecture and features.

The Alipay+ NFC SDK provides APIs for implementing Alipay+ NFC payment functionality in your applications. The following table lists the available functions.

| **Category** | **Function** | **Use** |
| --- | --- | --- |
| Initialization | [ACTapManager.init(config)](init-nfc) | Initialize the client SDK. |
| Initialization | [ACTapManager.connect(String id)](connect) | Connect to the SDK secure wallet. |
| Initialization | [ACTapManager.disconnect()](disconnect) | Disconnect from the SDK secure wallet. |
| Initialization | [ACTapManager.destroy()](destroy) | Deinitialize the Alipay+ NFC SDK. |
| Card activation | [ACTapManager.activatePayment()](activate_payment) | Activate the card. |
| Card activation | [ACTapManager.activatePaymentInSilentMode()](activate_payment_in_slient_mode) | Activate the Host Card Emulation (HCE) payment function in silent mode. |
| Card activation | [ACTapManager.cancelActivateProcess()](cancel_activate_process) | Cancel the card activation process. |
| Card activation | [ACTapManager.isPaymentAvailable()](is_payment_available) | Determine if the payment function is available. |
| Card activation | [ACTapManager.onNotificationDataReceived(String notificationData)](on_notification_data_received) | Receive notifications related to card token activation. |
| Card activation | [ACTapManager.replenish()](replenish) | Replenish transaction Credentials. |
| Card activation | [ACTapManager.getAvailableCredentialsCounts()](get_available_credentials_counts) | Obtain the number of available credentials. |
| Card activation | [ApplyCardActivity.apply(activity: Activity, requestCode: Int, apduServiceName: String)](apply) | Activate the card application activity. |
| Card management | [ACTapManager.lock()](lock) | Lock the card through the MPP app. |
| Card management | [ACTapManager.unlock()](unlock) | Unlock the card through the MPP app. |
| Card management | [ACTapManager.deleteToken()](token_deletion) | Delete the NFC card activation token. |
| Transaction | [ACTapManager.auth(AuthMethod)](auth) | Authentication. |
| Transaction | [ACTapManager.setPassFreeLimitAmount(amountLevelKey)](set_pass_free_limit_amount) | Set the pass free limit amount. |
| Transaction | [ACTapManager.setCustomData(bye\[\] data)](set_custom_data) | Set custom data that is to be passed through to the card issuer. |
| SPI | [NFCRequestProxy](nfc_request_proxy) | Proxy network requests via App. |
| SPI | [TransactionPermit](transaction_permit) | Authentication in transaction. |
| SPI | [ConfigProxy](config_proxy) | Remote configuration delivery. |
| SPI | [LoggerProxy](logger_proxy) | Print out logs. |
| SPI | [DeviceFingerPrintService](device_finger_print_service) | Obtain fingerprint from wallet device. |
| SPI | [NFCMonitor](nfc_monitor) | Detect the SDK's execution status. |
| SPI | [ThreadPoolService](thread_pool_service) | Implement and manage your own thread pool. |
| SPI | [EncryptionProxy](encryption_proxy) | Encrypt or decrypt sensitive data. |
| SPI | [StorageService](storage_service) | Store and manage key-value pairs. |
| Listener | [ACTapManager.setTransactionListener(TransactionListener)](set_transaction_listener) | Monitor transaction process and provide callback. |
| Listener | [ACTapManager.setTokenStatusListener(TokenStatusListener)](set_token_status_listener) | Monitor wallet status change and provide callback. |
| Listener | [ACTapManager.setActivateStatusListener(ActivateStatusListener)](set_activate_status_listener) | Monitor the status of the **activatePayment** API and provide callback. |
| Listener | [ACTapManager.getInstance(application).removeActivateStatusListener(ActivateStatusListener)](remove_activate_status_listener) | Remove the activation status listener when the activity gets destroyed. |
| Listener | [ACTapManager.getInstance(application).removeTokenStatusListener(TokenStatusListener)](remove_token_status_listener) | Remove the token status listener when the activity gets destroyed. |
| Listener | [ACTapManager.registerPlugin()](register_plugin) | Register extension function. |
| NFC settings | [ApplyCardActivity.setting(activity: Activity, apduServiceName: String)](setting) | Enable the NFC payment function. |
| NFC settings | [NFCUtils.isNfcPaySettingsCompleted(activity: Activity, apduServiceName: String)](is_nfc_pay_settings_completed) | Check if NFC payment is enabled. |
| Callback | [ACResultCallback](ac_result_callback) | The general callback API. |