Skip to content

Commit

Permalink
Documentation for Release version: 1.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
wallee-deployment-user committed Apr 19, 2024
1 parent 7cab34a commit 5499318
Show file tree
Hide file tree
Showing 15 changed files with 209 additions and 21 deletions.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ target 'DemoApp' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!

pod ‘WalleePaymentSdk’, '1.2.2'
pod ‘WalleePaymentSdk’, '1.3.0'

target 'DemoAppTests' do
inherit! :search_paths
Expand All @@ -41,7 +41,7 @@ end

#### From GitHub repository

`pod 'WalleePaymentSdk', '1.2.2', :source=> 'https://github.com/wallee-payment/ios-mobile-sdk.git'`
`pod 'WalleePaymentSdk', '1.3.0', :source=> 'https://github.com/wallee-payment/ios-mobile-sdk.git'`

and

Expand All @@ -52,7 +52,7 @@ target 'DemoApp' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!

pod 'WalleePaymentSdk', '1.2.2', :source => 'https://github.com/wallee-payment/ios-mobile-sdk.git'
pod 'WalleePaymentSdk', '1.3.0', :source => 'https://github.com/wallee-payment/ios-mobile-sdk.git'
pod 'PaymentResources', '1.0.0'

target 'DemoAppTests' do
Expand Down
16 changes: 16 additions & 0 deletions WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.3.0"
s.summary = "Official wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/wallee-payment/ios-mobile-sdk"
s.source = { :git => "https://github.com/wallee-payment/ios-mobile-sdk.git", :tag => "1.3.0" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.2.0/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.2.0"
s.summary = "Official Wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.2.0" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.2.1.1/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.2.1.1"
s.summary = "Official Wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.2.1.1" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.2.1/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.2.1"
s.summary = "Official Wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.2.1" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.2.2/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.2.2"
s.summary = "Official Wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.2.2" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.3.0.1/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.3.0.1"
s.summary = "Official wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.3.0.1" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.3.0.2/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.3.0.2"
s.summary = "Official wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.3.0.2" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.3.0.3/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.3.0.3"
s.summary = "Official wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.3.0.3" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.3.0.4/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.3.0.4"
s.summary = "Official wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.3.0.4" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.3.0.5/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.3.0.5"
s.summary = "Official wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.3.0.5" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
16 changes: 16 additions & 0 deletions WalleePaymentSdk/WalleePaymentSdk/1.3.0/WalleePaymentSdk.podspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Pod::Spec.new do |s|
s.name = "WalleePaymentSdk"
s.module_name = "WalleePaymentSdk"
s.version = "1.3.0"
s.summary = "Official wallee Payment SDK to access different payment methods."
s.license = { :type => 'Apache License, Version 2.0', :file => 'LICENSE'}
s.author = "wallee AG"
s.homepage = "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk"
s.source = { :git => "https://github.com/WhiteLabelGithubOwnerName/ios-mobile-sdk.git", :tag => "1.3.0" }
s.vendored_frameworks = "WalleePaymentSdk.xcframework"
s.resource_bundles = { "WalleePayment" => "walleepaymentsdkbundle.jsbundle" }
s.platform = :ios
s.swift_version = "4.2"
s.ios.deployment_target = '12.4'
s.dependency 'PaymentResources', '1.0.0'
end
1 change: 1 addition & 0 deletions docs/api-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@
| `func presentModalView(isPresented: Binding<Bool>, token: Binding<String>)` | extension | **Abandoned from v1.2.2.** SwiftUI View modifier to present the UI part of the Payment SDK. |
| `func setAnimation(type: AnimationEnum)` | function | Defining type of animation for moving between the pages |
| `func configureApplePay(merchantId: String)` | function | Configuring ApplePay Merchant ID which is going to be used to process payments (requires additional portal configuration, see [Apple Pay integration](./apple-pay.md)) |
| `func configureDeepLink(deepLink: String)` | function | Implementing deep linking functionality within payment applications to seamlessly redirect users back to the customer app upon completion of transactions. |
18 changes: 9 additions & 9 deletions docs/apple-pay.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Apple Pay integrating

- [Apple Pay integrating](#apple-pay-integrating)
- [Create Merchant ID and signed certificate](#create-merchant-id-and-signed-certificate)
- [Extract private key from KeyChain](#extract-private-key-from-keychain)
- [Upload certificate to Wallee Portal](#upload-certificate-to-wallee-portal)
- [Set up Merchant ID in Mobile SDK configuration](#setup-applepay-sdk-config)
- [Create Merchant ID and signed certificate](#create-merchant-id-and-signed-certificate)
- [Extract private key from KeyChain](#extract-private-key-from-keychain)
- [Upload certificate to Portal](#upload-certificate-to-portal)
- [Set up Merchant ID in Mobile SDK configuration](#set-up-merchant-id-in-mobile-sdk-configuration)

To use Apple Pay as a payment method, you must create a Merchant ID and the corresponding certificate. And upload the certificate to the wallee portal. In this section we will show you how to create a Merchent ID and how to get the certificate. If you do not want to use Apple pay you can ignore this section.
To use Apple Pay as a payment method, you must create a Merchant ID and the corresponding certificate. And upload the certificate to the portal. In this section we will show you how to create a Merchent ID and how to get the certificate. If you do not want to use Apple pay you can ignore this section.

### Create Merchant ID and signed certificate

Expand All @@ -20,19 +20,19 @@ To use Apple Pay as a payment method, you must create a Merchant ID and the corr
8. Now you have to create and upload `Certificate Signing Request`. Open `Keychain Access` on you Mac and go to top bar menu `Keychain Access => Certificate Assistant => Request a Certificate From a Certificate Authority...` ![Keychain Access](../imgs/apple-pay-8.png)
9. Now you have to fill basic information about certificate request and select `Saved to disk` and also check `Let me specify key pair information` and click on `Continue` ![Certificate request basic info](../imgs/apple-pay-9.png)
10. In next window you have to specify type of certificate request you have to select `Algorithm: ECC` and `Key Size: 256 bits` then you can click on `Continue` and save your certificate request to disk ![Certificate type](../imgs/apple-pay-10.png)
11. Now you have to upload saved certificate request to apple developer page and click on `Continue` ![Upload certificate request](../imgs/apple-pay-11.png) 12.Your certificate was successfully created. You can download it. Next step will be uploading this certification to [Wallee Portal](#upload-certificate-to-wallee-portal). ![Certificate type](../imgs/apple-pay-12.png)
11. Now you have to upload saved certificate request to apple developer page and click on `Continue` ![Upload certificate request](../imgs/apple-pay-11.png) 12.Your certificate was successfully created. You can download it. Next step will be uploading this certification to [Portal](#upload-certificate-to-portal). ![Certificate type](../imgs/apple-pay-12.png)

### Extract private key from KeyChain

1. Open KeyChain => Login => Keys ![Private key](../imgs/apple-pay-13.png)
2. Right click at your private key and select option `Export YOUR CERTIFICATE NAME` ![Private key extraction](../imgs/apple-pay-14.png)
3. You have to save this private key as `Personal Information Exchange (.p12)` format. ![Private key p12](../imgs/apple-pay-15.png)
4. After saving this certificate you will be asked to create a password. Keep the password field empty! And continue by pressing `OK` ![Private key password](../imgs/apple-pay-16.png)
5. Next step is just confirm action with your personal password and after conformation you will get `.p12` certificate. This certificate has to be uploaded to [Wallee Portal](#upload-certificate-to-wallee-portal)
5. Next step is just confirm action with your personal password and after conformation you will get `.p12` certificate. This certificate has to be uploaded to [Portal](#upload-certificate-to-portal)

### Upload certificate to Wallee Portal
### Upload certificate to Portal

1. Open Wallee Portal => Space => Select Relevant Space => Settings
1. Open Portal => Space => Select Relevant Space => Settings
2. On the top menu select Payment => ApplePay ![ApplePay Settings](../imgs/apple-pay-17.png)
3. Make sure ApplePay is enabled
4. Click Payment Processing Certificate ![ApplePay Certificate Menu](../imgs/apple-pay-18.png)
Expand Down
29 changes: 20 additions & 9 deletions docs/integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,24 @@

## Set up Wallee

To use the iOS Payment SDK, you need a [wallee account](https://app-wallee.com/user/signup). After signing up, set up your space and enable the payment methods you would like to support.
To use the iOS Payment SDK, you need a [wallee account](walleeAppUrlPlaceholder/user/signup). After signing up, set up your space and enable the payment methods you would like to support.

## Create transaction

For security reasons, your app cannot create transactions and fetch access tokens. This has to be done on your server by talking to the [wallee Web Service API](https://app-wallee.com/en-us/doc/api/web-service). You can use one of the official SDK libraries to make these calls.
For security reasons, your app cannot create transactions and fetch access tokens. This has to be done on your server by talking to the [wallee Web Service API](walleeAppUrlPlaceholder/en-us/doc/api/web-service). You can use one of the official SDK libraries to make these calls.

To use the iOS Payment SDK to collect payments, an endpoint needs to be added on your server that creates a transaction by calling the [create transaction](https://app-wallee.com/doc/api/web-service#transaction-service--create) API endpoint. A transaction holds information about the customer and the line items and tracks charge attempts and the payment state.
To use the iOS Payment SDK to collect payments, an endpoint needs to be added on your server that creates a transaction by calling the [create transaction](walleeAppUrlPlaceholder/doc/api/web-service#transaction-service--create) API endpoint. A transaction holds information about the customer and the line items and tracks charge attempts and the payment state.

Once the transaction has been created, your endpoint can fetch an access token by calling the [create transaction credentials](https://app-wallee.com/doc/api/web-service#transaction-service--create-transaction-credentials) API endpoint. The access token is returned and passed to the iOS Payment SDK.
Once the transaction has been created, your endpoint can fetch an access token by calling the [create transaction credentials](walleeAppUrlPlaceholder/doc/api/web-service#transaction-service--create-transaction-credentials) API endpoint. The access token is returned and passed to the iOS Payment SDK.

```bash
# Create a transaction
curl 'https://app-wallee.com/api/transaction/create?spaceId=1' \
curl 'walleeAppUrlPlaceholder/api/transaction/create?spaceId=1' \
-X "POST" \
-d "{{TRANSACTION_DATA}}"

# Fetch an access token for the created transaction
curl 'https://app-wallee.com/api/transaction/createTransactionCredentials?spaceId={{SPACE_ID}}&id={{TRANSACTION_ID}}' \
curl 'walleeAppUrlPlaceholder/api/transaction/createTransactionCredentials?spaceId={{SPACE_ID}}&id={{TRANSACTION_ID}}' \
-X 'POST'
```

Expand Down Expand Up @@ -173,7 +173,18 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate {

```

For Twint integration you have to setup `URL types` and `Queried URL Schemes` in your app `Info.plist`.
For Twint integration you have to setup `URL types` and `Queried URL Schemes` in your app `Info.plist` and pass deep link into SDK

```javascript

func foo(){
let sdk = WalleePaymentSdk(eventObserver: self)
...
sdk.configureDeepLink(deepLink: "uniq-payment-deep-link")
...
}

```

<mark style="background-color: red"> :bangbang: :warning: Please note that this is essential to invoke TWINT. :warning: :bangbang: </mark>

Expand All @@ -185,7 +196,7 @@ For Twint integration you have to setup `URL types` and `Queried URL Schemes` in
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>twint-payment</string>
<string>uniq-payment-deep-link</string>
</array>
</dict>
</array>
Expand Down Expand Up @@ -249,4 +260,4 @@ For Twint integration you have to setup `URL types` and `Queried URL Schemes` in

## Verify payment

As customers could quit the app or lose network connection before the result is handled or malicious clients could manipulate the response, it is strongly recommended to set up your server to listen for webhook events the get transactions' actual states. Find more information in the [webhook documentation](https://app-wallee.com/en-us/doc/webhooks).
As customers could quit the app or lose network connection before the result is handled or malicious clients could manipulate the response, it is strongly recommended to set up your server to listen for webhook events the get transactions' actual states. Find more information in the [webhook documentation](walleeAppUrlPlaceholder/en-us/doc/webhooks).

0 comments on commit 5499318

Please sign in to comment.