Release 1.7.1
This commit is contained in:
		
							parent
							
								
									1eb261c794
								
							
						
					
					
						commit
						3a9355aff4
					
				| @ -5,6 +5,11 @@ | ||||
| ### NEXT_VERSION_DESCRIPTION_BEGIN | ||||
| ### NEXT_VERSION_DESCRIPTION_END | ||||
| 
 | ||||
| ## [1.7.1] (13-01-2025) | ||||
| 
 | ||||
| * Up android native version to 7.0.2 | ||||
| * Update SberPay documentation | ||||
| 
 | ||||
| ## [1.7.0] (14-10-2024) | ||||
| 
 | ||||
| * Update mSDK version | ||||
|  | ||||
							
								
								
									
										115
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										115
									
								
								README.md
									
									
									
									
									
								
							| @ -283,15 +283,31 @@ func application( | ||||
| 2. Получите токен. | ||||
| 3. [Создайте платеж](https://yookassa.ru/developers/api#create_payment) с токеном по API ЮKassa. | ||||
| 
 | ||||
| ### SberPay | ||||
| ### SberPay (iOS) | ||||
| 
 | ||||
| С помощью SDK можно провести и подтвердить платеж через актуальное приложение Сбера, если оно установленно. | ||||
| 
 | ||||
| #### Обратите внимание | ||||
| Для работы SberPay требуется уникальная URL-scheme зарегистрированная в системе Сбера. Запросите такую схему у нашего менеджера поддержки по адресу b2b_support@yoomoney.ru. | ||||
| 
 | ||||
| Полученную от поддержки схему нужно зарегистрировать в файле вашего проекта, как показано ниже: | ||||
| <img src="assets/images/sberpay-reg-url-scheme.png" width="70%"> | ||||
| 
 | ||||
| А также передайте ее в `TokenizationModuleInputData` в параметре `applicationScheme`. | ||||
| 
 | ||||
| ```dart | ||||
| var tokenizationModuleInputData = TokenizationModuleInputData( | ||||
|     ... | ||||
|     applicationScheme: "sdkvzcyfyexmpl://" | ||||
| ``` | ||||
| 
 | ||||
| Чтобы провести платёж: | ||||
| 
 | ||||
| 1. При создании `TokenizationModuleInputData` в `TokenizationSettings` передайте значение `PaymentMethodTypes.sberbank`. | ||||
| 1. При создании `TokenizationModuleInputData` передайте значение `.sberbank` в `paymentMethodTypes`. | ||||
| 2. Получите токен. | ||||
| 3. [Создайте платеж](https://yookassa.ru/developers/api#create_payment) с токеном по API ЮKassa. | ||||
| 
 | ||||
| Для подтверждения платежа через приложение СберБанк Онлайн: | ||||
| Для подтверждения платежа через приложение Сбербанка: | ||||
| 
 | ||||
| 1. В `AppDelegate` импортируйте зависимость `YooKassaPayments`: | ||||
| 
 | ||||
| @ -305,7 +321,7 @@ func application( | ||||
| func application( | ||||
|     _ application: UIApplication, | ||||
|     open url: URL, | ||||
|     sourceApplication: String?,  | ||||
|     sourceApplication: String?, | ||||
|     annotation: Any | ||||
| ) -> Bool { | ||||
|     return YKSdk.shared.handleOpen( | ||||
| @ -313,14 +329,11 @@ func application( | ||||
|         sourceApplication: sourceApplication | ||||
|     ) | ||||
| } | ||||
| ``` | ||||
| 
 | ||||
| 3. В `Info.plist` добавьте следующие строки: | ||||
| 
 | ||||
| ```plistbase | ||||
| <key>LSApplicationQueriesSchemes</key> | ||||
| <array> | ||||
|     <string>sberpay</string> | ||||
| </array> | ||||
| <key>CFBundleURLTypes</key> | ||||
| <array> | ||||
|     <dict> | ||||
| @ -336,7 +349,91 @@ func application( | ||||
| </array> | ||||
| ``` | ||||
| 
 | ||||
| где `examplescheme` - схема для открытия вашего приложения, которую вы указали в `applicationScheme` при создании `TokenizationModuleInputData`. Через эту схему будет открываться ваше приложение после успешной оплаты с помощью `SberPay`. | ||||
| где `examplescheme` - схема для открытия вашего приложения, которую вы указали в `applicationScheme` при создании `TokenizationModuleInputData`. Через эту схему будет открываться ваше приложение после успешной авторизации с помощью `SberPay`. | ||||
| 
 | ||||
| 4. Добавить в `Info.plist` расширенные настройки для https-соединений к сервисам Сбера | ||||
| 
 | ||||
| ``` | ||||
| <key>NSAppTransportSecurity</key> | ||||
| <dict> | ||||
|     <key>NSExceptionDomains</key> | ||||
|     <dict> | ||||
|     <key>gate1.spaymentsplus.ru</key> | ||||
|     <dict> | ||||
|        <key>NSExceptionAllowsInsecureHTTPLoads</key> | ||||
|        <true/> | ||||
|     </dict> | ||||
|     <key>ift.gate2.spaymentsplus.ru</key> | ||||
|     <dict> | ||||
|        <key>NSExceptionAllowsInsecureHTTPLoads</key> | ||||
|        <true/> | ||||
|     </dict> | ||||
|     <key>cms-res.online.sberbank.ru</key> | ||||
|        <dict> | ||||
|            <key>NSExceptionAllowsInsecureHTTPLoads</key> | ||||
|            <true/> | ||||
|        </dict> | ||||
|     </dict> | ||||
| </dict> | ||||
| ``` | ||||
| 
 | ||||
| также, возникает требование расширить доступ приложения к данным пользователя для обеспечения безопасности проведения платежей | ||||
| 
 | ||||
| ``` | ||||
| <key>NSFaceIDUsageDescription</key> | ||||
| <string>Так вы подтвердите, что именно вы выполняете вход</string> | ||||
| <key>NSLocationWhenInUseUsageDescription</key> | ||||
| <string>Данные о местонахождении собираются и отправляются на сервер для безопасного проведения оплаты</string> | ||||
| ``` | ||||
| 
 | ||||
| 5. Обработайте результат выполнения `await YookassaPaymentsFlutter.confirmation`. Если в результате нет ошибки, значит процесс подтверждения будет пройден или пропущен пользователем. На следующем шаге для проверки статуса платежа (прошел ли пользователь подтверждение успешно или нет) используйте [YooKassa API](https://yookassa.ru/developers/api#get_payment) | ||||
| (см. [Настройка подтверждения платежа](#настройка-подтверждения-платежа)). | ||||
| 
 | ||||
| ### SberPay (Android) | ||||
| 
 | ||||
| Для подтверждения платежа при оплате через SberPay необходимо: | ||||
| 1. вызвать метод `await YookassaPaymentsFlutter.confirmation`; | ||||
| 2. обработать полученный результат; | ||||
| 
 | ||||
| Входные параметры для `await YookassaPaymentsFlutter.confirmation`: | ||||
| 
 | ||||
| Обязательные параметры метода: | ||||
| - url (String) - URL для перехода на экран подтверждения платежа через SberPay; | ||||
| - paymentMethod (PaymentMethodType) - выбранный тип платежного метода (тот, что был получен в методе `createTokenizationResult()`, (см. [Получить результат токенизации](#получить-результат-токенизации)) . | ||||
| - clientApplicationKey - ключ для клиентских приложений из личного кабинета ЮKassa ([раздел Настройки — Ключи API](https://yookassa.ru/my/api-keys-settings)) | ||||
| - shopId - идентификатор магазина ЮKassa ([раздел Организации](https://yookassa.ru/my/company/organization) | ||||
| 
 | ||||
| Возможные типы результата проведения подтверждения через SberPay: | ||||
| 
 | ||||
| - Activity.RESULT_OK - сообщает о том, что процесс подтверждения через SberPay завершён, но не несет информацию о том, что процесс завершился успешно. После получения результата рекомендуется запросить статус платежа; | ||||
| - Activity.RESULT_CANCELED - прохождение подтверждения через SberPay было отменено (например, пользователь нажал на кнопку "назад" во время процесса); | ||||
| - Checkout.RESULT_ERROR - не удалось пройти подтверждение через SberPay. | ||||
| 
 | ||||
| **Запуск SberPay и получение результата** | ||||
| 
 | ||||
| <details open> | ||||
| 
 | ||||
| ```dart | ||||
| var res = await YookassaPaymentsFlutter.confirmation( | ||||
|     controller.text, | ||||
|     result.paymentMethodType, | ||||
|     config.clientApplicationKey, | ||||
|     config.shopId | ||||
| ); | ||||
| showDialog( | ||||
|     context: context, | ||||
|     builder: (context) => const AlertDialog(content: Text("Confirmation process is done")) | ||||
| ); | ||||
| ``` | ||||
| **Запрос разрешений** | ||||
| 
 | ||||
| Для работы SberPaySDK также запрашивает определенные разрешения, которые **не являются обязательными**, но повышают шанс успешной оплаты. Актуальный список разрешений [по ссылке](https://developers.sber.ru/docs/ru/sberpay-sdk/androidsdk/start-sdk#zapros-razresheniy) | ||||
| 
 | ||||
| ```xml | ||||
| <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> | ||||
| <uses-permission android:name="android.permission.ACCESS_COARSE_UPDATES" /> | ||||
| <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> | ||||
| ``` | ||||
| 
 | ||||
| ### SBP | ||||
| 
 | ||||
|  | ||||
| @ -52,7 +52,7 @@ android { | ||||
| } | ||||
| 
 | ||||
| dependencies { | ||||
|     implementation 'ru.yoomoney.sdk.kassa.payments:yookassa-android-sdk:7.0.1' | ||||
|     implementation 'ru.yoomoney.sdk.kassa.payments:yookassa-android-sdk:7.0.2' | ||||
| } | ||||
| 
 | ||||
| configurations.implementation { | ||||
|  | ||||
							
								
								
									
										
											BIN
										
									
								
								assets/images/sberpay-reg-url-scheme.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/sberpay-reg-url-scheme.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 47 KiB | 
| @ -31,8 +31,38 @@ | ||||
|     <key>LSApplicationQueriesSchemes</key> | ||||
|     <array> | ||||
|         <string>yoomoneyauth</string> | ||||
|         <string>sberpay</string> | ||||
| 		<string>sbolpay</string> | ||||
| 		<string>sbolidexternallogin</string> | ||||
| 		<string>sberbankidexternallogin</string> | ||||
|     </array> | ||||
| 	<key>NSAppTransportSecurity</key> | ||||
| 	<dict> | ||||
| 		<key>NSExceptionDomains</key> | ||||
| 		<dict> | ||||
| 			<key>cms-res.online.sberbank.ru</key> | ||||
| 			<dict> | ||||
| 				<key>NSExceptionAllowsInsecureHTTPLoads</key> | ||||
| 				<true/> | ||||
| 			</dict> | ||||
| 			<key>gate1.spaymentsplus.ru</key> | ||||
| 			<dict> | ||||
| 				<key>NSExceptionAllowsInsecureHTTPLoads</key> | ||||
| 				<true/> | ||||
| 			</dict> | ||||
| 			<key>ift.gate2.spaymentsplus.ru</key> | ||||
| 			<dict> | ||||
| 				<key>NSExceptionAllowsInsecureHTTPLoads</key> | ||||
| 				<true/> | ||||
| 			</dict> | ||||
| 			<key>sberbank.ru</key> | ||||
| 			<dict> | ||||
| 				<key>NSExceptionAllowsInsecureHTTPLoads</key> | ||||
| 				<true/> | ||||
| 				<key>NSIncludesSubdomains</key> | ||||
| 				<true/> | ||||
| 			</dict> | ||||
| 		</dict> | ||||
| 	</dict> | ||||
| 	<key>UISupportedInterfaceOrientations</key> | ||||
| 	<array> | ||||
| 		<string>UIInterfaceOrientationPortrait</string> | ||||
| @ -48,5 +78,9 @@ | ||||
| 	</array> | ||||
| 	<key>UIViewControllerBasedStatusBarAppearance</key> | ||||
| 	<false/> | ||||
| 	<key>NSBluetoothAlwaysUsageDescription</key> | ||||
| 	<string>Данные Bluetooth собираются и отправляются на сервер для безопасного проведения оплаты</string> | ||||
| 	<key>NSBluetoothPeripheralUsageDescription</key> | ||||
| 	<string>Данные Bluetooth собираются и отправляются на сервер для безопасного проведения оплаты</string> | ||||
| </dict> | ||||
| </plist> | ||||
|  | ||||
| @ -1,7 +1,7 @@ | ||||
| name: yookassa_payments_flutter | ||||
| description: This Flutter SDK allows processing payments using a payment token. It | ||||
|   works as an addition to the YooMoney API. | ||||
| version: 1.7.0 | ||||
| version: 1.7.1 | ||||
| homepage: https://git.yoomoney.ru/projects/SDK/repos/yookassa-payments-flutter-sdk/browse | ||||
| repository: https://git.yoomoney.ru/projects/SDK/repos/yookassa-payments-flutter-sdk/browse | ||||
| environment: | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user