This section describes Action Data, which defines actions that can be associated with a wallet card during the Add to Wallet process.
Action Data enables a card to expose predefined actions that can be triggered from Samsung Wallet, allowing partners to define how users interact with the card beyond static presentation.
Overview
Action Data represents a structured definition of actions associated with a wallet card.
These actions are defined at card issuance time and become part of the card data registered in Samsung Wallet.
From the Add to Wallet perspective, Action Data:
Is optional
Is defined and delivered during the Add to Wallet process
Applies uniformly to all cards that require actionable behavior
Applicability and API Usage
Action Data may be used across various card services to support different interaction scenarios.
Typical usage includes:
Launching application-specific behavior
Triggering partner-defined actions
Supporting extended interaction flows initiated from the wallet
API
Role
Get Card Data (Partner API)
Return procedural data during issuance or refresh
Request Action (Partner API)
Primary carrier of Action Data
Send Card Event (Partner API)
Used by partners to report final lifecycle outcomes and terminal events of Wallet Card instances formerly referred to as Send Card State)
Update Notification (Samsung API)
Notify state transitions caused by completed actions
The presence of Action Data does not impose any requirement on how the action is executed at runtime.
Conceptual Model
Action as a Mediated Process
An Action represents a single logical step within a larger workflow.
Responsibilities
Samsung Wallet Server
o Initiates or forwards actions
o Maintains transaction continuity
o Does NOT own business logic or credentials
Partner Server
o Interprets actionType
o Executes domain-specific logic
o Returns next-step instructions or execution results
Idempotency is evaluated within the scope of a card program (partner context), primarily based on the card instance identifier (refId) and the requested actionType.
Detailed idempotency and deduplication rules are defined in Section "Idempotency and Request Deduplication"
Idempotency and Request Deduplication
Idempotency Identifier
All APIs defined in this specification use refId as the primary identifier of a card instance.
At minimum, the Wallet backend MUST guarantee idempotent handling of requests scoped by:
refId
actionType
This ensures that repeated requests caused by network retries do not result in duplicated side effects.
Idempotency Scope Claification
The refId value is guaranteed to be unique within a given card program (partner context), but is not guaranteed to be globally unique across different partners or programs.
Accordingly, Samsung Wallet evaluates idempotency within the card template scope. Internally, the effective idempotency key MAY be composed of:
(cardId, refId, actionType, actionInstanceId)
Partners are required to ensure uniqueness of refId within their own card template, but are not required to generate globally unique refId values across templates.
Recommended Idempotency Extension
To safely distinguish retries from logically new attempts, the following enhancement is RECOMMENDED:
Each Action Data request SHOULD include a unique request-level identifier (e.g. actionInstanceId).
Idempotency should be evaluated using the composite key: (refId, actionType, actionInstanceId)
If actionInstanceId is not present, the server MUST fall back to (refId, actionType) and MUST NOT reject the request solely due to the absence of actionInstanceId.
Concurrent Action Handling
For a given refId, the server MUST define and enforce valid state transitions.
If an action is received that is not valid for the current state:
The server MUST reject the request with HTTP 409 (STATE_CONFLICT).
The response MUST include an appropriate error code describing the conflict.
Common Action Envelope
All actions are defined using a common envelope format.
The envelope includes:
Action identifier
Action type
Action-specific payload
This structure allows Samsung Wallet to interpret and route actions in a consistent manner.
[Common Action Envelope Structure]
Field
Description
actionType String (≤ 32)
(Required) Identifier of the requested action.
actionPayload Object
(Required) Container for action-specific data.
actionPayload.actionDetails Object
(Required) Contextual metadata for the action in Section "actionDetails Object"
(Optional) Unique request-level identifier for in Section "Idempotency and Request Deduplication"
actionPayload.{fields} Object
(Optional) Action-specific payload fields whose semantics are determined solely by actionType.
Normative Rules
When actionType is present, actionPayload MUST be present.
The semantic meaning of actionPayload.{fields} is determined solely by actionType.
Unknown fields MUST be ignored, unless explicitly agreed by both parties.
actionDetails Object
The actionDetails object contains action-specific data required to perform the defined action.
The structure and contents of actionDetails depend on the action type and the intended use case.
The actionDetails object provides contextual metadata for an action.
Action Data may be applied to different usage patterns depending on the card service.
These patterns define how Action Data is interpreted and used after the card is added to Samsung Wallet.
General Action Usage
In general usage scenarios, Action Data is used to define actions that can be initiated by the user from the wallet interface.
These actions are handled according to the action type and associated payload.
Access-Related Action Usage (Optional)
In some card services, Action Data may be used to support access-related interactions.
In such cases:
Action Data may include access-related information
The action definition may serve as an entry point for access-related processing
The inclusion of access-related Action Data during Add to Wallet does not, by itself, enable or activate access functionality.
Detailed access-specific behavior is described in the separate Access Guide.
Manage Your Cookies
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
developer.samsung.com, .samsung.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
Samsung Electronics
.samsung.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
Samsung Electronics
developer.samsung.com, google.account.samsung.com
Preferences Submitted
You have successfully updated your cookie preferences.