Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/APSL/react-native-sumup
Sumup SDK for React Native
https://github.com/APSL/react-native-sumup
Last synced: 5 days ago
JSON representation
Sumup SDK for React Native
- Host: GitHub
- URL: https://github.com/APSL/react-native-sumup
- Owner: APSL
- License: mit
- Created: 2016-02-10T14:45:05.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-09-19T08:39:09.000Z (about 7 years ago)
- Last Synced: 2024-12-02T23:34:12.472Z (9 days ago)
- Language: Objective-C
- Size: 6.84 KB
- Stars: 11
- Watchers: 12
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-react-native - react-native-sumup ★5 - A React Native implementation of SumupSDK. (Components / Integrations)
- awesome-react-native - react-native-sumup ★5 - A React Native implementation of SumupSDK. (Components / Integrations)
- awesome-react-native - react-native-sumup ★5 - A React Native implementation of SumupSDK. (Components / Integrations)
- awesome-react-native-ui - react-native-sumup ★2 - A React Native implementation of SumupSDK. (Components / Integrations)
- awesome-react-native - react-native-sumup ★5 - A React Native implementation of SumupSDK. (Components / Integrations)
README
# react-native-sumup
A React Native implementation of SumupSDK.
## Installation
First install the iOS Sumup SDK, [instructions here](https://github.com/sumup/sumup-ios-sdk#preparing-your-xcode-project).
Then, ``npm install react-native-sumup --save`` and add ``RNSumup.h`` and ``RNSumup.m`` to your project. Check that the ``*.m`` file is under **Compile Sources**.
## Compatibility
This library has been tested with Sumup iOS SDK version **1.2.2**.
## Example usage
```javascript
import Sumup from 'react-native-sumup'
// Setup Sumup
Sumup.setupWithAPIKey('API_KEY')
// Open login
Sumup.presentLoginFromViewController()
.then(response => {
console.log('Response', response)
})
.catch(error => {
console.log('error', error)
})// Checkout
let request = {
totalAmount: '20.0',
title: 'Test',
currencyCode: 'EUR',
paymentOption: Sumup.paymentOptionMobilePayment
}
Sumup.checkoutWithRequest(request)
.then(response) => {
console.log('Response', response)
})
.catch(error) => {
console.log('Error', error)
})
```## API 🚧
This library is still a work in progress, only some methods have been implemented. Please feel free to open any issues if you need another SDK method implemented.
| Method | Params | Description |
|--------|--------|-------------|
| ``setupWithAPIKey `` | ``apiKey``: String | Method to initialize SumupSDK. |
| ``presentLoginFromViewController`` | ``completionBlock``: function | Opens a Sumup login view. |
| ``checkoutWithRequest`` | ``request``: Object, ``completionBlock(response)``: function, ``errorBlock(error)``: function | Creates a Sumup payment request. |
| `isLoggedIn` | | Returns `true` if the user has logged-in into the SDK. |### ``Request`` param
| Param | Type | Description |
|-------|-------|-------------|
| ``totalAmount`` | ``string`` | Will be parsed as ``decimalNumber``. |
| ``title`` | ``string`` | |
| ``currencyCode`` | ``string`` | |
| ``paymentOption`` | ``SMPPaymentOptions`` | An enum of type ``SMPPaymentOptions``. Possible values: ``SMPPaymentOptionAny``, ``SMPPaymentOptionCardReader``, ``SMPPaymentOptionMobilePayment``. |## License
MIT.
## Development sponsor
This development has been sponsored by [SupSpot](http://supspot.ch).