Class SpaySdk
java.lang.Object
com.samsung.android.sdk.samsungpay.v2.SpaySdk
- Direct Known Subclasses:
CardManager
,PaymentManager
This class allows to define Samsung Pay SDK information, common error codes, and constants.
- Since:
- API Level 1.1
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
This enumeration provides SDK supported card brands such as AMERICAN EXPRESS, MASTERCARD, VISA, DISCOVER, CHINA UNIONPAY, OCTOPUS, ECI and PAGOBANCOMAT.static enum
This enumeration provides Service Types.
Partners must set their Service Type in the PartnerInfo when they call any APIs. -
Field Summary
Modifier and TypeFieldDescriptionstatic final String
This table shows the status codes used commonly.
Status Bundle Keys Bundle ValuesSPAY_NOT_SUPPORTED
(0)EXTRA_ERROR_REASON
ERROR_DEVICE_NOT_SAMSUNG
(-350)ERROR_SPAY_PKG_NOT_FOUND
(-351)ERROR_SPAY_SDK_SERVICE_NOT_AVAILABLE
(-352)ERROR_DEVICE_INTEGRITY_CHECK_FAIL
(-353)ERROR_SPAY_APP_INTEGRITY_CHECK_FAIL
(-360)ERROR_ANDROID_PLATFORM_CHECK_FAIL
(-361)SPAY_NOT_READY
(1)EXTRA_ERROR_REASON
ERROR_SPAY_SETUP_NOT_COMPLETED
(-356)ERROR_SPAY_APP_NEED_TO_UPDATE
(-357)ERROR_SPAY_INTERNAL
(-1)EXTRA_ERROR_REASON
ERROR_SERVER_INTERNAL
(-311) N/A N/AERROR_NOT_ALLOWED
(-6)EXTRA_ERROR_REASON
ERROR_INVALID_PARAMETER
(-12)ERROR_SDK_NOT_SUPPORTED_FOR_THIS_REGION
(-300)ERROR_SERVICE_ID_INVALID
(-301)ERROR_SERVICE_UNAVAILABLE_FOR_THIS_REGION
(-302)ERROR_PARTNER_APP_SIGNATURE_MISMATCH
(-303)ERROR_PARTNER_APP_VERSION_NOT_SUPPORTED
(-304)ERROR_PARTNER_APP_BLOCKED
(-305)ERROR_USER_NOT_REGISTERED_FOR_DEBUG
(-306)ERROR_SERVICE_NOT_APPROVED_FOR_RELEASE
(-307)ERROR_PARTNER_NOT_APPROVED
(-308)ERROR_UNAUTHORIZED_REQUEST_TYPE
(-309)ERROR_EXPIRED_OR_INVALID_DEBUG_KEY
(-310)ERROR_MISSING_INFORMATION
(-354)ERROR_UNABLE_TO_VERIFY_CALLER
(-359)ERROR_INVALID_PARAMETER
(-12) N/A N/AERROR_NO_NETWORK
(-21) N/A N/AERROR_SERVER_NO_RESPONSE
(-22) N/A N/AERROR_PARTNER_INFO_INVALID
(-99)EXTRA_ERROR_REASON
ERROR_PARTNER_SDK_API_LEVEL
(-10)ERROR_PARTNER_SERVICE_TYPE
(-11)ERROR_PARTNER_SDK_VERSION_NOT_ALLOWED
(-358)ERROR_INITIATION_FAIL
(-103) N/A N/ASPAY_NOT_ALLOWED_TEMPORALLY
(3)EXTRA_ERROR_REASON
ERROR_SPAY_CONNECTED_WITH_EXTERNAL_DISPLAY
(-605)ERROR_SPAY_FMM_LOCK
(-604) N/A N/APaymentManager.ERROR_MAKING_SHEET_FAILED
(-115) N/A N/Astatic final String
Key to represent the ICC cryptogram type of Mastercard.static final String
Key to represent the UCAF cryptogram type of Mastercard.static final String
Key to represent unique device ID.static final String
Device type is Gear.static final String
Device type is phone.static final int
This error indicates that Android platform version check has failed.
For in-app Payment, the Samsung Pay SDK requires Android 6.0(M) (Android API level 23) or later versions of the Android OS.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.static final int
This error indicates that device integrity check has failed.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.static final int
This error indicates that the device is not a Samsung device.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.static final int
This error indicates that duplicate API called by Partner.static final int
This error indicates that debug key is invalid or expired.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app uses expired debug-api-key, then the partner app verification will be failed.static final int
This error indicates that session initiation or service binding has failed.
For example, if the service connection with Samsung Pay was not successful.static final int
This error indicates that requested operation contains invalid parameter or invalid bundle key/value.static final int
This error indicates that some information of partner is missing.
This error code is returned as anEXTRA_ERROR_REASON
ofERROR_NOT_ALLOWED
error.
For example, if the partner app does not deliver a required information to Samsung Pay to get the wallet information, then Samsung Pay will send this error to partner app.
Also if the partner does not define the issuer name in Samsung Pay Developer portal, Samsung Pay will send this error to partner app.static final int
This error indicates that Samsung Pay is unable to connect to the server since there is no network.
For example, partner app tries to verify with server while network is not connected.static final int
This error indicates that requested operation is success with no error.static final int
This error indicates that requested operation is not allowed.
For example, partner app verification has failed in Samsung Pay server.static final int
This error indicates that given card ID is not found in Samsung Pay.static final int
This error indicates that requested operation is not supported in Samsung Pay.static final int
This error indicates that partner app version is removed/blocked by the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is blocked, then the partner app verification will be failed.static final int
This error indicates that the app signature is different from the one registered from Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if different signature is used for signing apk, the partner app verification will be failed.
Checking signature logic will be activated in case debug mode is "N".static final int
This error indicates that app version is not supported by Samsung Pay.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the version registered from developer portal is higher than current version(or no any version registered), then the partner app verification will be failed.static final int
This error indicates that partner information is invalid.
For example, partner app is using SDK version not allowed, invalid service type, wrong api level, and so on.static final int
This error indicates that partner registration is not done on the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is submitted but not approved, then the partner app verification will be failed.static final int
This error indicates that SDK API level is missing or invalid.
Partner must set valid API level in the AndroidManifest file.static final int
This error indicates that the partner app is using Samsung Pay SDK not allowed.
This is returned asEXTRA_ERROR_REASON
forERROR_PARTNER_INFO_INVALID
error.static final int
This error indicates that the Service Type is invalid.
Partner must set valid Service Type in PartnerInfo when calling APIs.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_READY
error.static final int
This error indicates that the card provisioning has failed.static final int
This error indicates that the Samsung Pay SDK is not supported in particular region.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the device is from the country that Samsung Pay SDK is not supported, then the partner app verification will be failed.static final int
This error indicates that server fails to proceed request due to unknown internal error.
This is returned asEXTRA_ERROR_REASON
forERROR_SPAY_INTERNAL
error.
For example, if the server error occurred while the partner verification is going on, then the partner app verification will be failed.static final int
This error indicates that server did not respond to the Samsung Pay request.static final int
This error indicates that service ID is not registered with the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if invalid service ID was used in partner app, then the partner app verification will be failed.static final int
This error indicates that service version is not approved for release by the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is not registered for release mode, then the partner app verification will be failed.static final int
This error indicates that SDK support is not available for partner's service in particular region.static final int
This error indicates that Samsung Pay app integrity check has failed.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.static final int
This error indicates that the Samsung Pay should be updated.
Partner app need to ask user to update Samsung Pay app.static final int
This error indicates that device is connected with an external display.
Due to security reason, Samsung Pay cannot be launched at this moment.
In this case, partner can guide user to disconnect any external display if connected.static final int
This error indicates that device is locked due to FMM(Find My Mobile).
Partner app needs to ask user to unlock the Samsung Pay app.static final int
This error indicates that internal error has occurred while the requested operation is going on.static final int
This error indicates that the Samsung Pay application is not on the device.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.
This could mean that the device does not support Samsung Pay.static final int
This error indicates that SDK service is not available on this device.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.static final int
This error indicates that the Samsung Pay setup was not completed.
Partner app need to ask user to set up Samsung Pay app.static final int
This error indicates that Samsung Pay is unable to verify partner app at this moment.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, Samsung Pay tried to connect to the server and validate partner ID, but the device does not have the network connectivity.static final int
This error indicates that the partner is not authorized for this request type such as payment or enrollment.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the merchant app calls enrollment API, then the partner app verification will be failed.static final int
This error indicates that user has cancelled before completing the requested operation.
For example, user taps the cancel or back key on the payment sheet.static final int
This error indicates that user account is not registered for using debug mode on the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is in debug mode but the Samsung Account is not registered for the debug-api-key, then the partner app verification will be failed.static final String
Key to represent that a merchant accepts combo card.
Partner can use this key to let customers to choose debit/credit in case of combo card.static final String
Key to represent card type.
The possible values are:
Card.CARD_TYPE_CREDIT_DEBIT
Card.CARD_TYPE_CREDIT
Card.CARD_TYPE_DEBIT
Card.CARD_TYPE_GIFT
Card.CARD_TYPE_LOYALTY
Card.CARD_TYPE_TRANSIT
static final String
Key to represent country code.
Device Country code(ISO 3166-1 alpha-2)static final String
Key to get CPF holder name in extra payment data.
When Partner requests CPF byEXTRA_REQUIRE_CPF
key, the Samsung Pay would bundle CPF information in the extraPaymentData parameter ofPaymentManager.CustomSheetTransactionInfoListener.onSuccess(com.samsung.android.sdk.samsungpay.v2.payment.CustomSheetPaymentInfo, java.lang.String, android.os.Bundle)
callbackstatic final String
Key to get CPF number in extra payment data.
When Partner requests CPF byEXTRA_REQUIRE_CPF
key, the Samsung Pay would bundle CPF information in the extraPaymentData parameter ofPaymentManager.CustomSheetTransactionInfoListener.onSuccess(com.samsung.android.sdk.samsungpay.v2.payment.CustomSheetPaymentInfo, java.lang.String, android.os.Bundle)
callbackstatic final String
Key to represent the DSRP (Digital Secure Remote Payments) cryptogram type of Mastercard.static final String
Key to represent the maximum registered card number has reached or not.static final String
Key to represent type of the device (Mobile or Gear).static final String
Key to represent extra error reasons.static final String
Key to represent extra error reason messages.static final String
Key to represent name of the issuer.
This key can be used in the bundle forPartnerInfo(String, Bundle)
.static final String
Key to represent package name of the issuer app on Android.static final String
Key to represent the last four digits of digitalized Personal Identification Number (DPAN).static final String
Key to represent the last four digits of funding Personal Identification Number (FPAN).static final String
Key to represent member ID of the issuer.
This is for Korean issuers only.static final String
Key to set/get merchant reference ID beyond marketplace app or service(i.e.static final String
Key to represent name of the partner app.
This key can be used in the bundle forPartnerInfo(String, Bundle)
.static final String
Key to represent request id.
When a request is failed, TR will send this key to partner app.static final String
Key to represent that a partner requires CPF.
Partner can use this key to ask Samsung Pay to show CPF information in the payment sheet.static final String
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.static final String
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.static final String
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.static final String
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.static final String
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.static final String
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.static final String
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.static final String
Key to represent unique Service Type.
This key must be set in the bundle forPartnerInfo(String, Bundle)
.static final int
This code is returned if Samsung Pay doesn't have a registered transit card This is for Korean issuers only.static final int
This code is returned if Samsung Pay has a registered transit card.
This is for Korean issuers only.static final int
static final int
Samsung Pay is not completely activated.
Usually, this status code is returned if the user did not complete the mandatory update or if the user is not signed in with the Samsung Account yet.
In this case, partner app can callSamsungPay.activateSamsungPay()
API to launch Samsung Pay or can callSamsungPay.goToUpdatePage()
API to update Samsung Pay app.static final int
Samsung Pay is not supported on this device.
Usually, this status code is returned if the device is not compatible to run Samsung Pay or if the Samsung Pay app is not installed.static final int
Samsung Pay is activated and ready to use.
Usually, this status code is returned after user completes all the mandatory updates and is signed in.static final String
Key to represent unique device management ID.static final String
Key to represent user's wallet ID. -
Method Summary
Modifier and TypeMethodDescriptionstatic int
Returns the version code of the Samsung Pay SDK.static String
Returns the version name of the Samsung Pay SDK.
-
Field Details
-
ERROR_NONE
public static final int ERROR_NONEThis error indicates that requested operation is success with no error.- See Also:
-
ERROR_SPAY_INTERNAL
public static final int ERROR_SPAY_INTERNALThis error indicates that internal error has occurred while the requested operation is going on.- See Also:
-
ERROR_NOT_SUPPORTED
public static final int ERROR_NOT_SUPPORTEDThis error indicates that requested operation is not supported in Samsung Pay.- See Also:
-
ERROR_NOT_FOUND
public static final int ERROR_NOT_FOUNDThis error indicates that given card ID is not found in Samsung Pay.- See Also:
-
ERROR_NOT_ALLOWED
public static final int ERROR_NOT_ALLOWEDThis error indicates that requested operation is not allowed.
For example, partner app verification has failed in Samsung Pay server.- See Also:
-
ERROR_USER_CANCELED
public static final int ERROR_USER_CANCELEDThis error indicates that user has cancelled before completing the requested operation.
For example, user taps the cancel or back key on the payment sheet.- See Also:
-
ERROR_PARTNER_SDK_API_LEVEL
public static final int ERROR_PARTNER_SDK_API_LEVELThis error indicates that SDK API level is missing or invalid.
Partner must set valid API level in the AndroidManifest file. Minimum possible version is 1.4.
Also if the Partner set the values defined in higher API level, Samsung Pay will send this error to partner app.
This is returned asEXTRA_ERROR_REASON
forERROR_PARTNER_INFO_INVALID
error.- Since:
- API Level 1.4
- See Also:
-
ERROR_PARTNER_SERVICE_TYPE
public static final int ERROR_PARTNER_SERVICE_TYPEThis error indicates that the Service Type is invalid.
Partner must set valid Service Type in PartnerInfo when calling APIs.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_READY
error.- Since:
- API Level 1.4
- See Also:
-
ERROR_INVALID_PARAMETER
public static final int ERROR_INVALID_PARAMETERThis error indicates that requested operation contains invalid parameter or invalid bundle key/value.- Since:
- API Level 2.3
- See Also:
-
ERROR_NO_NETWORK
public static final int ERROR_NO_NETWORKThis error indicates that Samsung Pay is unable to connect to the server since there is no network.
For example, partner app tries to verify with server while network is not connected.- See Also:
-
ERROR_SERVER_NO_RESPONSE
public static final int ERROR_SERVER_NO_RESPONSEThis error indicates that server did not respond to the Samsung Pay request.- See Also:
-
ERROR_PARTNER_INFO_INVALID
public static final int ERROR_PARTNER_INFO_INVALIDThis error indicates that partner information is invalid.
For example, partner app is using SDK version not allowed, invalid service type, wrong api level, and so on.- Since:
- API Level 2.5
- See Also:
-
ERROR_INITIATION_FAIL
public static final int ERROR_INITIATION_FAILThis error indicates that session initiation or service binding has failed.
For example, if the service connection with Samsung Pay was not successful.- See Also:
-
ERROR_REGISTRATION_FAIL
public static final int ERROR_REGISTRATION_FAILThis error indicates that the card provisioning has failed.- Since:
- API Level 1.2
- See Also:
-
ERROR_DUPLICATED_SDK_API_CALLED
public static final int ERROR_DUPLICATED_SDK_API_CALLEDThis error indicates that duplicate API called by Partner.- Since:
- API Level 2.1
- See Also:
-
ERROR_SDK_NOT_SUPPORTED_FOR_THIS_REGION
public static final int ERROR_SDK_NOT_SUPPORTED_FOR_THIS_REGIONThis error indicates that the Samsung Pay SDK is not supported in particular region.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the device is from the country that Samsung Pay SDK is not supported, then the partner app verification will be failed.- See Also:
-
ERROR_SERVICE_ID_INVALID
public static final int ERROR_SERVICE_ID_INVALIDThis error indicates that service ID is not registered with the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if invalid service ID was used in partner app, then the partner app verification will be failed.- Since:
- API Level 2.5
- See Also:
-
ERROR_SERVICE_UNAVAILABLE_FOR_THIS_REGION
public static final int ERROR_SERVICE_UNAVAILABLE_FOR_THIS_REGIONThis error indicates that SDK support is not available for partner's service in particular region.- Since:
- API Level 2.5
- See Also:
-
ERROR_PARTNER_APP_SIGNATURE_MISMATCH
public static final int ERROR_PARTNER_APP_SIGNATURE_MISMATCHThis error indicates that the app signature is different from the one registered from Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if different signature is used for signing apk, the partner app verification will be failed.
Checking signature logic will be activated in case debug mode is "N".- Since:
- API Level 2.9
- See Also:
-
ERROR_PARTNER_APP_VERSION_NOT_SUPPORTED
public static final int ERROR_PARTNER_APP_VERSION_NOT_SUPPORTEDThis error indicates that app version is not supported by Samsung Pay.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the version registered from developer portal is higher than current version(or no any version registered), then the partner app verification will be failed.- Since:
- API Level 2.9
- See Also:
-
ERROR_PARTNER_APP_BLOCKED
public static final int ERROR_PARTNER_APP_BLOCKEDThis error indicates that partner app version is removed/blocked by the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is blocked, then the partner app verification will be failed.- Since:
- API Level 2.9
- See Also:
-
ERROR_USER_NOT_REGISTERED_FOR_DEBUG
public static final int ERROR_USER_NOT_REGISTERED_FOR_DEBUGThis error indicates that user account is not registered for using debug mode on the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is in debug mode but the Samsung Account is not registered for the debug-api-key, then the partner app verification will be failed.- See Also:
-
ERROR_SERVICE_NOT_APPROVED_FOR_RELEASE
public static final int ERROR_SERVICE_NOT_APPROVED_FOR_RELEASEThis error indicates that service version is not approved for release by the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is not registered for release mode, then the partner app verification will be failed.- Since:
- API Level 2.5
- See Also:
-
ERROR_PARTNER_NOT_APPROVED
public static final int ERROR_PARTNER_NOT_APPROVEDThis error indicates that partner registration is not done on the Samsung Pay Developers.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app is submitted but not approved, then the partner app verification will be failed.- See Also:
-
ERROR_UNAUTHORIZED_REQUEST_TYPE
public static final int ERROR_UNAUTHORIZED_REQUEST_TYPEThis error indicates that the partner is not authorized for this request type such as payment or enrollment.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the merchant app calls enrollment API, then the partner app verification will be failed.- See Also:
-
ERROR_EXPIRED_OR_INVALID_DEBUG_KEY
public static final int ERROR_EXPIRED_OR_INVALID_DEBUG_KEYThis error indicates that debug key is invalid or expired.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, if the partner app uses expired debug-api-key, then the partner app verification will be failed.- See Also:
-
ERROR_SERVER_INTERNAL
public static final int ERROR_SERVER_INTERNALThis error indicates that server fails to proceed request due to unknown internal error.
This is returned asEXTRA_ERROR_REASON
forERROR_SPAY_INTERNAL
error.
For example, if the server error occurred while the partner verification is going on, then the partner app verification will be failed.- Since:
- API Level 2.5
- See Also:
-
ERROR_DEVICE_NOT_SAMSUNG
public static final int ERROR_DEVICE_NOT_SAMSUNGThis error indicates that the device is not a Samsung device.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.- See Also:
-
ERROR_SPAY_PKG_NOT_FOUND
public static final int ERROR_SPAY_PKG_NOT_FOUNDThis error indicates that the Samsung Pay application is not on the device.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.
This could mean that the device does not support Samsung Pay.- See Also:
-
ERROR_SPAY_SDK_SERVICE_NOT_AVAILABLE
public static final int ERROR_SPAY_SDK_SERVICE_NOT_AVAILABLEThis error indicates that SDK service is not available on this device.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.- See Also:
-
ERROR_DEVICE_INTEGRITY_CHECK_FAIL
public static final int ERROR_DEVICE_INTEGRITY_CHECK_FAILThis error indicates that device integrity check has failed.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.- See Also:
-
ERROR_SPAY_APP_INTEGRITY_CHECK_FAIL
public static final int ERROR_SPAY_APP_INTEGRITY_CHECK_FAILThis error indicates that Samsung Pay app integrity check has failed.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.- See Also:
-
ERROR_ANDROID_PLATFORM_CHECK_FAIL
public static final int ERROR_ANDROID_PLATFORM_CHECK_FAILThis error indicates that Android platform version check has failed.
For in-app Payment, the Samsung Pay SDK requires Android 6.0(M) (Android API level 23) or later versions of the Android OS.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_SUPPORTED
error.- Since:
- API Level 1.5
- See Also:
-
ERROR_MISSING_INFORMATION
public static final int ERROR_MISSING_INFORMATIONThis error indicates that some information of partner is missing.
This error code is returned as anEXTRA_ERROR_REASON
ofERROR_NOT_ALLOWED
error.
For example, if the partner app does not deliver a required information to Samsung Pay to get the wallet information, then Samsung Pay will send this error to partner app.
Also if the partner does not define the issuer name in Samsung Pay Developer portal, Samsung Pay will send this error to partner app.- See Also:
-
ERROR_SPAY_SETUP_NOT_COMPLETED
public static final int ERROR_SPAY_SETUP_NOT_COMPLETEDThis error indicates that the Samsung Pay setup was not completed.
Partner app need to ask user to set up Samsung Pay app. If user agrees, callSamsungPay.activateSamsungPay()
API .
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_READY
error.- See Also:
-
ERROR_SPAY_APP_NEED_TO_UPDATE
public static final int ERROR_SPAY_APP_NEED_TO_UPDATEThis error indicates that the Samsung Pay should be updated.
Partner app need to ask user to update Samsung Pay app. If user agrees, callSamsungPay.goToUpdatePage()
API.
This is returned asEXTRA_ERROR_REASON
forSPAY_NOT_READY
error.- Since:
- API Level 1.1
- See Also:
-
ERROR_PARTNER_SDK_VERSION_NOT_ALLOWED
public static final int ERROR_PARTNER_SDK_VERSION_NOT_ALLOWEDThis error indicates that the partner app is using Samsung Pay SDK not allowed.
This is returned asEXTRA_ERROR_REASON
forERROR_PARTNER_INFO_INVALID
error.- Since:
- API Level 2.5
- See Also:
-
ERROR_UNABLE_TO_VERIFY_CALLER
public static final int ERROR_UNABLE_TO_VERIFY_CALLERThis error indicates that Samsung Pay is unable to verify partner app at this moment.
This is returned asEXTRA_ERROR_REASON
forERROR_NOT_ALLOWED
error.
For example, Samsung Pay tried to connect to the server and validate partner ID, but the device does not have the network connectivity.- See Also:
-
ERROR_SPAY_FMM_LOCK
public static final int ERROR_SPAY_FMM_LOCKThis error indicates that device is locked due to FMM(Find My Mobile).
Partner app needs to ask user to unlock the Samsung Pay app. If user agrees, callSamsungPay.activateSamsungPay()
to unlock the Samsung Pay app.- Since:
- API Level 2.1
- See Also:
-
ERROR_SPAY_CONNECTED_WITH_EXTERNAL_DISPLAY
public static final int ERROR_SPAY_CONNECTED_WITH_EXTERNAL_DISPLAYThis error indicates that device is connected with an external display.
Due to security reason, Samsung Pay cannot be launched at this moment.
In this case, partner can guide user to disconnect any external display if connected.- Since:
- API Level 2.7
- See Also:
-
SPAY_NOT_SUPPORTED
public static final int SPAY_NOT_SUPPORTEDSamsung Pay is not supported on this device.
Usually, this status code is returned if the device is not compatible to run Samsung Pay or if the Samsung Pay app is not installed.- Since:
- API Level 1.1
- See Also:
-
SPAY_NOT_READY
public static final int SPAY_NOT_READYSamsung Pay is not completely activated.
Usually, this status code is returned if the user did not complete the mandatory update or if the user is not signed in with the Samsung Account yet.
In this case, partner app can callSamsungPay.activateSamsungPay()
API to launch Samsung Pay or can callSamsungPay.goToUpdatePage()
API to update Samsung Pay app.- Since:
- API Level 1.1
- See Also:
-
SPAY_READY
public static final int SPAY_READYSamsung Pay is activated and ready to use.
Usually, this status code is returned after user completes all the mandatory updates and is signed in.- Since:
- API Level 1.1
- See Also:
-
SPAY_NOT_ALLOWED_TEMPORALLY
public static final int SPAY_NOT_ALLOWED_TEMPORALLY- Since:
- API Level 2.7
- See Also:
-
SPAY_HAS_TRANSIT_CARD
public static final int SPAY_HAS_TRANSIT_CARDThis code is returned if Samsung Pay has a registered transit card.
This is for Korean issuers only.- Since:
- API Level 2.8
- See Also:
-
SPAY_HAS_NO_TRANSIT_CARD
public static final int SPAY_HAS_NO_TRANSIT_CARDThis code is returned if Samsung Pay doesn't have a registered transit card This is for Korean issuers only.- Since:
- API Level 2.8
- See Also:
-
DEVICE_TYPE_PHONE
Device type is phone.- Since:
- API Level 1.1
- See Also:
-
DEVICE_TYPE_GEAR
Device type is Gear.- Since:
- API Level 1.1
- See Also:
-
EXTRA_LAST4_DPAN
Key to represent the last four digits of digitalized Personal Identification Number (DPAN).- Since:
- API Level 1.1
- See Also:
-
EXTRA_LAST4_FPAN
Key to represent the last four digits of funding Personal Identification Number (FPAN).- Since:
- API Level 1.1
- See Also:
-
EXTRA_ISSUER_NAME
Key to represent name of the issuer.
This key can be used in the bundle forPartnerInfo(String, Bundle)
.- Since:
- API Level 1.1
- See Also:
-
EXTRA_ISSUER_PKGNAME
Key to represent package name of the issuer app on Android.- Since:
- API Level 1.1
- See Also:
-
EXTRA_PARTNER_NAME
Key to represent name of the partner app.
This key can be used in the bundle forPartnerInfo(String, Bundle)
.- Since:
- API Level 2.6
- See Also:
-
EXTRA_ERROR_REASON
Key to represent extra error reasons.- Since:
- API Level 1.1
- See Also:
-
EXTRA_ERROR_REASON_MESSAGE
Key to represent extra error reason messages.- Since:
- API Level 2.9
- See Also:
-
EXTRA_CARD_TYPE
Key to represent card type.
The possible values are:
Card.CARD_TYPE_CREDIT_DEBIT
Card.CARD_TYPE_CREDIT
Card.CARD_TYPE_DEBIT
Card.CARD_TYPE_GIFT
Card.CARD_TYPE_LOYALTY
Card.CARD_TYPE_TRANSIT
- Since:
- API Level 1.1
- See Also:
-
EXTRA_DEVICE_TYPE
Key to represent type of the device (Mobile or Gear).
The possible values are:
DEVICE_TYPE_PHONE
DEVICE_TYPE_GEAR
- Since:
- API Level 1.1
- See Also:
-
EXTRA_MEMBER_ID
Key to represent member ID of the issuer.
This is for Korean issuers only.- Since:
- API Level 1.1
- See Also:
-
EXTRA_COUNTRY_CODE
Key to represent country code.
Device Country code(ISO 3166-1 alpha-2)- Since:
- API Level 1.1
- See Also:
-
EXTRA_DEVICE_CARD_LIMIT_REACHED
Key to represent the maximum registered card number has reached or not.- Since:
- API Level 1.1
- See Also:
-
EXTRA_CRYPTOGRAM_TYPE
Key to represent the DSRP (Digital Secure Remote Payments) cryptogram type of Mastercard. Cryptogram type is supported by Mastercard only, can be put as an optional value in extraPaymentInfo ofCustomSheetPaymentInfo
.- Since:
- API Level 2.4
- See Also:
-
EXTRA_RESOLVED_1
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.- Since:
- API Level 2.4
- See Also:
-
EXTRA_RESOLVED_2
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.- Since:
- API Level 2.4
- See Also:
-
EXTRA_RESOLVED_3
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.- Since:
- API Level 2.4
- See Also:
-
EXTRA_RESOLVED_4
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.- Since:
- API Level 2.4
- See Also:
-
EXTRA_RESOLVED_5
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.- Since:
- API Level 2.4
- See Also:
-
EXTRA_RESOLVED_6
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.- Since:
- API Level 2.4
- See Also:
-
EXTRA_RESOLVED_7
Key to represent additional data.
Partner can use this key to put tagged data to a bundle before sending to Samsung Pay.- Since:
- API Level 2.4
- See Also:
-
EXTRA_REQUEST_ID
Key to represent request id.
When a request is failed, TR will send this key to partner app. Request ID would be helpful for debugging a failed request between partner and TR.- Since:
- API Level 2.5
- See Also:
-
CRYPTOGRAM_TYPE_UCAF
Key to represent the UCAF cryptogram type of Mastercard. UCAF cryptogram type is supported by Mastercard only, can be put as an optional value in extraPaymentInfo ofCustomSheetPaymentInfo
. UCAF is a default cryptogram type if not specified in the extraPaymentInfo Bundle.- Since:
- API Level 2.4
- See Also:
-
CRYPTOGRAM_TYPE_ICC
Key to represent the ICC cryptogram type of Mastercard. ICC cryptogram type is supported by Mastercard only, can be put as an optional value in extraPaymentInfo ofCustomSheetPaymentInfo
.- Since:
- API Level 2.4
- See Also:
-
EXTRA_ACCEPT_COMBO_CARD
Key to represent that a merchant accepts combo card.
Partner can use this key to let customers to choose debit/credit in case of combo card.
It can be put as an optional value in extraPaymentInfo ofCustomSheetPaymentInfo
.
The possible value is the boolean.- Since:
- API Level 2.9
- See Also:
-
EXTRA_REQUIRE_CPF
Key to represent that a partner requires CPF.
Partner can use this key to ask Samsung Pay to show CPF information in the payment sheet.
It can be put as an optional value in extraPaymentInfo ofCustomSheetPaymentInfo
.
The possible value is the boolean.
This is for Brazil partners only.- Since:
- API Level 2.11
- See Also:
-
EXTRA_CPF_HOLDER_NAME
Key to get CPF holder name in extra payment data.
When Partner requests CPF byEXTRA_REQUIRE_CPF
key, the Samsung Pay would bundle CPF information in the extraPaymentData parameter ofPaymentManager.CustomSheetTransactionInfoListener.onSuccess(com.samsung.android.sdk.samsungpay.v2.payment.CustomSheetPaymentInfo, java.lang.String, android.os.Bundle)
callback- Since:
- API Level 2.11
- See Also:
-
EXTRA_CPF_NUMBER
Key to get CPF number in extra payment data.
When Partner requests CPF byEXTRA_REQUIRE_CPF
key, the Samsung Pay would bundle CPF information in the extraPaymentData parameter ofPaymentManager.CustomSheetTransactionInfoListener.onSuccess(com.samsung.android.sdk.samsungpay.v2.payment.CustomSheetPaymentInfo, java.lang.String, android.os.Bundle)
callback- Since:
- API Level 2.11
- See Also:
-
EXTRA_MERCHANT_REF_ID
Key to set/get merchant reference ID beyond marketplace app or service(i.e. Bixby).
When marketplace apps request In-App payment, they can set merchant reference ID so that Samsung Pay app can get detail information about the merchant using the ID.- Since:
- API Level 2.11
- See Also:
-
WALLET_USER_ID
Key to represent user's wallet ID.- Since:
- API Level 1.2
- See Also:
-
DEVICE_ID
Key to represent unique device ID.- Since:
- API Level 1.2
- See Also:
-
WALLET_DM_ID
Key to represent unique device management ID.- Since:
- API Level 1.2
- See Also:
-
PARTNER_SERVICE_TYPE
Key to represent unique Service Type.
This key must be set in the bundle forPartnerInfo(String, Bundle)
.- Since:
- API Level 1.4
- See Also:
-
COMMON_STATUS_TABLE
This table shows the status codes used commonly.
- See Also:
-
-
Method Details
-
getVersionCode
public static int getVersionCode()Returns the version code of the Samsung Pay SDK.- Returns:
- SDK version code.
- Since:
- API Level 1.1
-
getVersionName
Returns the version name of the Samsung Pay SDK.- Returns:
- SDK version name.
- Since:
- API Level 1.1
-
Samsung Electronics.
Samsung Pay SDK 2.19.00 - Jun 12 2024