Once partner service onboarding is complete, it is possible to create your own templates such as boarding passes, coupons and tickets into Samsung Wallet. For creating a new kind of wallet, base template creation is needed before actual Wallet card creation.
In general, Wallet Card creation and modification are possible through the ‘Wallet Partners Portal'. However, a server API is provided for cases where it is necessary to manage a large number of cards. Cards created through API can also be checked and managed in the same way on the ‘Wallet Partners Portal'.
Changes to each card status can be processed at the ‘Wallet Partners Portal', and information on how to change them should be checked through the Partner Server Portal Guide. The description of each state is as follows.
State
Description
DRAFT
When a wallet card is created for the first time, it becomes a “Draft” state. In this state, all setting values can be modified.
VERIFYING
In order for the card to launch and activate, it must go through the verification step. The “Verifying” state is a step in which the administrator requests approval in order to be Verified. In order to be Verified, at least one CSR must be registered and General Information must be configured.
REJECTED
The administrator registers the reason for rejection when rejecting the launched wallet card. It is sent to the partner by email from the system, including the reason for rejection. Partners can apply for launch again by checking the reason for rejection and modifying the wallet card information.
ACTIVE
The administrator has approved Partner’s requests. The card is activated, and the activation cannot be canceled. When the card is activated, it is made visible to the user.
BLOCKED
The activated card has been blocked. This function can only be performed by the administrator.
For reference, the “Testing Mode” is maintained on after the card is created, and it is impossible to turn on the “Testing Mode” again after the “Testing Mode” is turned off. Even if the card is active, if the testing mode is on, the service is not normal. The testing mode must be changed to off.
It is now possible to add Wallet Cards to a user's wallet. Wallet Cards are added as described in 'Add to Samsung Wallet', but in special cases, Wallet Cards can be added automatically only to allowed partners without user interaction.
API Guidelines
'Adding Wallet Card Templates' defines interfaces for providers to conveniently create Wallet Cards to Samsung Wallet. The generated Wallet Card templates can be managed for updates using 'Updating Wallet Card Templates'.
Authorized partners can add Wallet Cards to users directly from the partner server using 'Adding Wallet Cards' below.
[Service Domain]
Environment
Domain
Public domain
https://tsapi-card.walletsvc.samsung.com
Adding Wallet Card Templates
This chapter describes how to create Wallet Card to Samsung Wallet.
[Request]
Type
Value
Description
Method
POST
URL
/partner/v1/card/template
Headers
Authorization
String(1024)
Required
Credential token. The token can have prefix Bearer" as an authorization type. i.e., Bearer <credentials>.
x-smcs-partner-id
String(32)
Required
Partner ID.
x-request-id
String(32)
Required
Request identifier. Random generated UUID string.
x-smcs-cc2
String(2)
Required
Country Code (ISO-3166-1 alpha-2) of User Account
Body Parameters
ctemplate
Object
Required
Tokenized Card template. Actual payload data in basic JSON format to communicate between partners and Samsung Wallet. This must be secured in JWT(JSON Web Token) format. * See the chapter Security for more details.
Payload object
cardTemplate
Object
Required
Wallet card template object
cardTemplate.prtnrId
String(32)
Required
Partner ID
cardTemplate.templateRefId
String(19)
Required
Partner Template ID Unique value for each template created by a partner. This value is set to a number of 19 digits or less.
cardTemplate.title
String(32)
Required
Wallet Card Name
cardTemplate.countryCode
String(2)
Required
Main(Headquarters) Location code. Refer to ISO-3166-1 alpha-2) for the country code.
The value that defines the design type of the wallet card. Refer to Wallet Cards.
cardTemplate.appLogoImg
String(200)
Optional
Banner logo image URL. The maximum size of that image is 1024*1024 e.g http://www.yourdomain.com/banner_logo_image.png
cardTemplate. saveInServerYn
String(1)
Optional
Sets whether to save the card data. This value can only be set in the ‘ID Card’ type.
cardTemplate.prtnrAppPckgName
String(128)
Optional
APP Package Name
cardTemplate.noNetworkSupportYn
String(1)
Optional
Sets whether to support to openthe wallet card under 'No Network' Status. This feature cannot be modified after the Wallet card is approved. Either 'Y' or 'N' * Default: 'N'
cardTemplate.shareButton ExposureYN
String(1)
Optional
Sets whether to support to sharing function. This feature cannot be modified after the Wallet card is approved. Either 'Y' or 'N' * Default: 'Y'
cardTemplate.privacyModeYn
String(1)
Optional
If this value is set, user authentication is required when using the card, to protect the user's sensitive information Either 'Y' or 'N' * Default: 'N'
cardTemplate.preventCaptureYn
String(1)
Optional
This value is screen capture prevention flag. whether the contents view prevents screen capture
cardTemplate.category
String(20)
Optional
This item can only be set if the card type is “generic”. Set the Category to get more detailed statistical information. e.g. parking_pass, membership, reservations, insurance, health, receipt, coupon_stamp, note, photo, others
cardTemplate.prtnrCardData
String(1000)
Optional
Partner URL of <Get card data> Check the Url format below and implement API according to uri. Refer to Partner Server API specification. e.g https://yourdomain
cardTemplate.prtnrCardState
String(1000)
Optional
Partner URL of <Get card state> Check the Url format below and implement API according to uri. Refer to Partner Server API specification. e.g https://yourdomain
cardTemplate.prtnrMemPoint
String(1000)
Optional
Partner URL of <Get membership point>
cardTemplate.cardMetaCP
String(1000)
Optional
Partner URL of <Get card Meta CP>
cardTemplate.getFulfillmentList
String(1000)
Optional
Partner URL of <Get Fulfillment list>
cardTemplate.prtnrBalance
String(1000)
Optional
Partner URL of <Get card Balance>
cardTemplate.state
String(15)
Optional
When creating a card, it can be used to create the card's state as a “Verifying” state rather than a “Draft” state. You can only choose “DRAFT” or VERIFYING” * Default: 'DRAFT'
Requests cannot or will not be processed the request due to something that is perceived to be a client error
401
401 Unauthorized
Authorization token is invalid or expired.
500
500 Internal Server Error
503
503 Service Unavailable
Updating Wallet Card Templates
Wallet Card Tmplates updated through API can also be checked and managed in the same way on the ‘Wallet Partners Portal'. Partners can manage all wallet cards they have created.
[Request]
Type
Value
Description
Method
POST
URL
/partner/v1/card/template?cardId={Card Id}
Headers
Authorization
String(1024)
Required
Credential token. The token can have prefix "Bearer" as an authorization type. i.e., Bearer <credentials>.
x-smcs-partner-id
String(32)
Required
Partner ID.
x-request-id
String(32)
Required
Request identifier. Random generated UUID string.
x-smcs-cc2
String(2)
Required
Country Code (ISO-3166-1 alpha-2) of User Account
Path Parameters
N/A
Query Parameter
Card Id
String(32)
Required
Wallet card identifier granted from Partner Portal. * It exists when updating a specific card template.
Body Parameters
ctemplate
Object
Required
Tokenized Card template. Actual payload data in basic JSON format to communicate between partners and Samsung Wallet. This must be secured in JWT(JSON Web Token) format. * See the chapter Security for more details.
Payload object
cardTemplate
Object
Required
Wallet card template object
cardTemplate.prtnrId
String(32)
Required
Partner ID
cardTemplate.cardId
String(32)
Required
CardId received a response when creating a card
cardTemplate.templateRefId
String(19)
Required
Partner Template ID Unique value for each template created by a partner. This value is set to a number of 19 digits or less.
cardTemplate.title
String(32)
Optional
Wallet Card Name
cardTemplate.countryCode
String(2)
Optional
Main(Headquarters) Location code. Refer to ISO-3166-1 alpha-2) for the country code.
cardTemplate.prtnrAppPckgName
String(128)
Optional
APP Package Name
cardTemplate. appLogoImg
String(200)
Optional
Banner logo image URL. The maximum size of that image is 1024*1024
cardTemplate. saveInServerYn
String(1)
Optional
Sets whether to save the card data. This value can only be set in the ‘ID Card’ type.
cardTemplate.noNetworkSupportYn
String(1)
Optional
Sets whether to support to open the wallet card under 'No Network' Status. This feature cannot be modified after the Wallet card is approved. Either 'Y' or 'N' * Default: 'N'
cardTemplate.shareButtonExposureYN
String(1)
Optional
Sets whether to support to sharing function. This feature cannot be modified after the Wallet card is approved. Either 'Y' or 'N' * Default: 'Y'
cardTemplate.privacyModeYn
String(1)
Optional
If this value is set, user authentication is required when using the card, to protect the user's sensitive information Either 'Y' or 'N' * Default: 'N'
cardTemplate.preventCaptureYn
String(1)
Optional
This value is screen capture prevention flag. whether the contents view prevents screen capture.
cardTemplate.category
String(20)
Optional
This item can only be set if the card type is “generic”. Set the Category to get more detailed statistical information. e.g. parking_pass, membership, reservations, insurance, health, receipt, coupon_stamp, note, photo, others
cardTemplate.prtnrCardData
String(1000)
Optional
Partner URL of <Get card data> Check the Url format below and implement API according to uri. Refer to Partner Server API specification. e.g https://yourdomain
cardTemplate.prtnrCardState
String(1000)
Optional
Partner URL of <Get card state> Check the Url format below and implement API according to uri. Refer to Partner Server API specification. e.g https://yourdomain
cardTemplate.prtnrMemPoint
String(1000)
Optional
Partner URL of <Get membership point>
cardTemplate.cardMetaCP
String(1000)
Optional
Partner URL of <Get card Meta CP>
cardTemplate.getFulfillmentList
String(1000)
Optional
Partner URL of <Get Fulfillment list>
cardTemplate.prtnrBalance
String(1000)
Optional
Partner URL of <Get card Balance>
cardTemplate.state
String(15)
Optional
If the card status is “DRAFT”, you can only select “VERIFYING”.
cardTemplate.testingModeOff
String(1)
Optional
This value can be set only when the card status is Active. Normal service is possible only when the testing mode is changed to off. * Default: ‘N’
Requests cannot or will not be processed the request due to something that is perceived to be a client error
401
401 Unauthorized
Authorization token is invalid or expired.
500
500 Internal Server Error
503
503 Service Unavailable
Adding Wallet Cards
A typical addition to Wallet Card is triggered by user interaction, such as pressing the 'Add To Wallet' button or link. However, if the user consents, we support automatically adding a Wallet Card to the user for a special purpose. This is an API that allows partners to provide wallet cards to users. The request payload must contain information about the target to which the card is to be added. This information may be related to your account, or it may be information about a card that is already registered. Then the user device is notified of card registration through a push notification.
Partners wishing to use this API must be granted permission by an administrator.
[Card Data Specification]
Card ID
{Card Id} is an ID issued when the partner manager signs up for partner services and register the wallet card they want to service. Refer to Partner Onboarding guide document for details.
cdata
Actual payload data in basic JSON format to communicate between partners and Samsung Wallet. See the details on the below sheet.
Card Data Token:
Card Data Token
The specific wallet card data mentioned as cdata must be secured in JWT(JSON Web Token) format. See a chapter Security for details.
[Request]
Type
Value
Description
Method
POST
URL
/{cc2}/atw/v1/cards/{Card Id}
Headers
Authorization
String(1024)
Required
Credential token. The token can have prefix "Bearer" as an authorization type. i.e., Bearer <credentials>.
x-smcs-partner-id
String(32)
Required
Partner ID.
x-request-id
String(32)
Required
Request identifier. Random generated UUID string.
x-smcs-cc2
String(2)
Required
Country Code (ISO-3166-1 alpha-2) of User Account
Path Parameters
cc2
String(2)
Conditional
Country Code (ISO-3166-1 alpha-2) * Required if using Public domain
Card Id
String(32)
Required
Wallet card identifier granted from Partner Portal
Body Parameters
cdata
Object
Required
Actual payload data in basic JSON format to communicate between partners and Samsung Wallet. This must be secured in JWT(JSON Web Token) format. * See the chapter Security for more details.
We use cookies to improve your experience on our website and to show you relevant
advertising. Manage you settings for our cookies below.
Essential Cookies
These cookies are essential as they enable you to move around the website. This
category cannot be disabled.
Company
Domain
Samsung Electronics
.samsungdeveloperconference.com
Analytical/Performance Cookies
These cookies collect information about how you use our website. for example which
pages you visit most often. All information these cookies collect is used to improve
how the website works.
Company
Domain
LinkedIn
.linkedin.com
Meta (formerly Facebook)
.samsungdeveloperconference.com
Google Inc.
.samsungdeveloperconference.com
Functionality Cookies
These cookies allow our website to remember choices you make (such as your user name, language or the region your are in) and
tailor the website to provide enhanced features and content for you.
Company
Domain
LinkedIn
.ads.linkedin.com, .linkedin.com
Advertising Cookies
These cookies gather information about your browser habits. They remember that
you've visited our website and share this information with other organizations such
as advertisers.
Company
Domain
LinkedIn
.linkedin.com
Meta (formerly Facebook)
.samsungdeveloperconference.com
Google Inc.
.samsungdeveloperconference.com
Preferences Submitted
You have successfully updated your cookie preferences.