Samsung Checkout

This topic describes how you can develop a billing system for your application, to allow users to make purchases within your application.


Related Info


Samples


Samsung Checkout offers an optimized purchase experience for your users on Samsung TVs. The user can quickly and safely register a payment method and make frictionless payments repeatedly within the TV environment. In addition, Samsung Checkout provides a comprehensive global monetization platform, which allows you to integrate various business models and promotional campaigns into your services.

The TV-optimized purchase experience provides the user a quick and simple 3-step checkout, once a payment method is registered. The checkout requires only number-centric information to be entered, making it easy to use with a TV remote control. Users can register their payment method directly on the TV or through a mobile phone.

Figure 1. 3-step checkout: Confirm > Provide PIN > Done

To use Samsung Checkout, the user needs:

  • TV: Samsung Smart TV, 2016 or later model supporting Tizen (excluding Evolution Kit)
  • Payment method: Credit or debit card, PayPal, or Samsung Pay (in Korea, United States)
  • Security: Tizen SecureIME, 2nd-screen card registration (mobile or PC)
  • Account: Samsung Account (for sharing account and payment information with Galaxy phones)

Samsung Checkout provides :

  • One solution for payment execution :
    ✔ One solution supports all functions from payment operation.
    ✔ Operate automatically settlement and payout
  • Strong security Payment solution
    ✔ Acquire PCI-DSS certification and follow regulation each of countries (PSD2)
    ✔ Following PSD2 regulantion and GDPR
  • Deliver the coupon/promotional code in various ways of distribution with easiest UX
    ✔ Issue coupons for promotion
  • Provide DPI(Digital Product Inventory) System
    ✔ Create and manage service items
    ✔ Check the status of sales amounts and transaction scale
    ✔ Refund and cancel subscription

You can manage your product application and product sales through the DPI (Digital Product Inventory) and process the actual purchase through Samsung Checkout.

Samsung Checkout Purchase Process

When a user wants to purchase a product on your application, Samsung Checkout provides a common purchase GUI, which identifies the user and confirms first the purchase and then the purchase completion. After the user completes the purchase, Samsung Checkout returns the purchase result to your application.

Figure 2. Samsung Checkout process

Product, Purchase, and Payment Management

The following figure illustrates how you can use Samsung Checkout and the information in the DPI server to manage in-app purchases and payments in your application.

Figure 3. In-app purchase management

  1. Request the purchase list:

    1. Retrieve the customer purchase list using a Purchase List API request.
    2. Respond to the purchase list content:
      • If there are products in the purchase list which are not applied, verify the purchase and apply the products.
      • If there are products in the purchase list which have been refunded, retrieve the products.
    3. Send the application result to the server.
  2. Request the product list.
    Request the product information list using a Products List API request.

  3. The user purchases the product:

    1. When the user selects “Buy” in the application, provide a common purchase GUI through Samsung Checkout.
    2. The user can enter a voucher or coupon code to modify the purchase price.
    3. The user confirms the purchase by entering a PIN on the common purchase GUI, or biometric information on Samsung Pay.

      Samsung Checkout delivers the purchase result to your application.
  4. Request the purchase list.

    Update the customer purchase list.

  5. Verify the purchase.

    Verify the purchase using a Verify Purchase API request.

  6. Apply the product.

    Apply the product using an Apply Product API request, and send the application result to the server.

Payment flow with Dynamic Product

In case that partner already has CMS server which manage products and price, and it is required to change the product information frequently, partner and Samsung can discuss to use dynamic product when they integrate Samsung Checkout.

And once they agree on that products and prices will be managed by CMS of partner not by Samsung’s DPI, partner need to register a representative item on DPI so that Samsung Checkout system can display information on Samsung Smart TV App/Game store which is legally required.

Partner does not need to register each products on DPI that they sells in their app, however,
They should builds and operates its own CMS to manage products information including prices and provide rest API for verification of purchase requests.

The following figure shows data flow of initialize stage in payment process with dynamic product.

Figure 6. Dynamic product payment process flow

Additional requirement for DPI

As model require Partner CMS to manage product information, there is additional requirement that partner need to do for DPI settings.

  • Verification/No Verification

    ‘Verification’ is a recommended option otherwise partner has to handle the verification process by themselves and take all the responsibility for all the error cases related to verification process.

    If ‘Verification’ is selected, ‘Verify URI’ is also required. This URI should serve the function of checking product information such as product itself, price and currency in sequence of initialization during payment process.

    Figure 7. Verification setting

  • Price Setting

    Price range information of products that you actually sells in your app is required by country. It is not used for actual payment for providing the app information on Samsung Smart TV App/Game store which is legally required.

    Thus, it has to be updated when the price range of your products is changed.

    Figure 8. Price setting

Difference when Dynamic Product

  • When buyItem()

    Unlike ordinary purchase, when Dynamic Product, Partner need to set values as below in order to complete payment process.


    "OrderItemID" - Representative productID that registered to DPI Portal as dynamic product type

    "OrderTitle" - Customized name for each purchase displayed as in Figure 9.

    "OrderTotal" - Customized price for each purchase displayed as in Figure 9.

    "DynmcProductID" - Unique product ID managed by Partner CMS

    Figure 9. Dynamic product purchase page

  • When Verify Product

    Partner need to strictly verify the below values in order to identify if it's appropriate product information.


    "appId" - if it's appropriate application for this payment process

    "productId" - if this is same as representative ProductID from DPI Portal

    "productPrice" - if price of product that partner intended to sell to user

    "dynmcProductID" - if this is is appropriate ID that are under control of partner CMS

    Checkout Service County/Location List

No. Area Country (ENG) Biz. Model
1 North America Canada Agent
2 North America United States Commissionaire
3 Europe Aland Islands Commissionaire
4 Europe Albania Agent
5 Europe Austria Commissionaire
6 Europe Belgium Commissionaire
7 Europe Bosnia and Herzegovina Agent
8 Europe Bulgaria Commissionaire
9 Europe Croatia Commissionaire
10 Europe Cyprus Commissionaire
11 Europe Czech Republic Commissionaire
12 Europe Denmark Commissionaire
13 Europe Estonia Commissionaire
14 Europe Faroe Islands Commissionaire
15 Europe Finland Commissionaire
16 Europe France Commissionaire
17 Europe Germany Commissionaire
18 Europe Greece Commissionaire
19 Europe Greenland Commissionaire
20 Europe Guernsey Commissionaire
21 Europe Hungary Commissionaire
22 Europe Iceland Agent
23 Europe Ireland Commissionaire
24 Europe Isle of Man Commissionaire
25 Europe Italy Commissionaire
26 Europe Jersey Commissionaire
27 Europe Latvia Commissionaire
28 Europe Lithuania Commissionaire
29 Europe Luxembourg Commissionaire
30 Europe Montenegro Agent
31 Europe Netherlands Commissionaire
32 Europe North Macedonia Agent
33 Europe Norway Commissionaire
34 Europe Poland Commissionaire
35 Europe Portugal Commissionaire
36 Europe Romania Commissionaire
37 Europe Serbia Agent
38 Europe Slovakia Commissionaire
39 Europe Slovenia Commissionaire
40 Europe Spain Commissionaire
41 Europe Sweden Commissionaire
42 Europe Switzerland Agent
43 Europe United Kingdom Commissionaire
44 Asia Australia Agent
45 Asia Hong Kong Agent
46 Asia India Agent
47 Asia Indonesia Agent
48 Asia Korea, Republic of Agent
49 Asia Malaysia Agent
50 Asia New Zealand Agent
51 Asia Philippines Agent
52 Asia Singapore Agent
53 Asia Taiwan Agent
54 Asia Thailand Agent
55 Asia Vietnam Agent
56 CIS Belarus Agent
57 CIS Kazakhstan Agent
58 CIS Kyrgyzstan Agent
59 CIS Moldova Agent
60 CIS Mongolia Agent
61 CIS Russian Federation Agent
62 CIS Tajikistan Agent
63 CIS Turkmenistan Agent
64 CIS Ukraine Agent
65 CIS Uzbekistan Agent
66 LATAM Argentina Agent
67 LATAM Bolivia Agent
68 LATAM Brazil Agent
69 LATAM Chile Agent
70 LATAM Colombia Agent
71 LATAM Costa Rica Agent
72 LATAM Dominican Republic Agent
73 LATAM Ecuador Agent
74 LATAM Guatemala Agent
75 LATAM Mexico Agent
76 LATAM Panama Agent
77 LATAM Peru Agent
78 LATAM Venezuela Agent
79 MENA Algeria Agent
80 MENA Bahrain Agent
81 MENA Egypt Agent
82 MENA Ghana Agent
83 MENA Iraq Agent
84 MENA Israel Agent
85 MENA Jordan Agent
86 MENA Kenya Agent
87 MENA Kuwait Agent
88 MENA Lebanon Agent
89 MENA Libya Agent
90 MENA Mauritius Agent
91 MENA Morocco Agent
92 MENA Nigeria Agent
93 MENA Oman Agent
94 MENA Pakistan Agent
95 MENA Qatar Agent
96 MENA Saudi Arabia Agent
97 MENA South Africa Agent
98 MENA Tunisia Agent
99 MENA Turkey Agent
100 MENA United Arab Emirates Agent
101 MENA Yemen Agent
102 LATAM Paraguay Agent
103 LATAM Uruguay Agent
104 LATAM El Salvador Agent
105 LATAM Honduras Agent
106 LATAM Nicaragua Agent
107 LATAM Bahamas Agent
108 LATAM Jamaica Agent
109 LATAM Trinidad & Tobago Agent
110 Asia Cambodia Agent
111 Asia Myanmar Agent
112 Asia Laos Agent
113 Asia Macao Agent
114 Asia Bangladesh Agent
115 Asia Nepal Agent
116 Asia Sri Lanka Agent
117 CIS Armenia Agent
118 CIS Azerbaijan Agent
119 CIS Georgia Agent
120 Europe Liechtenstein Agent