Unofficial react native wrapper for paytabs Native SDK
Getting started
$ npm install rn-paytabs --save
Manual installation
Android
Please check ANDROID.md to help you build with android.
- Open up
android/app/src/main/java/[...]/MainActivity.java
- Add
import com.reactlibrary.RNPaytabsPackage;
to the imports at the top of the file - Add
new RNPaytabsPackage()
to the list returned by thegetPackages()
method
- Append the following lines to
android/settings.gradle
:include ':rn-paytabs' project(':rn-paytabs').projectDir = new File(rootProject.projectDir, '../node_modules/rn-paytabs/android') include ':paytabs-android-SDK-v2.5' project(':paytabs-android-SDK-v2.5').projectDir = new File(rootProject.projectDir, '../node_modules/rn-paytabs/android/paytabs-android-SDK-v2.5')
- Insert the following lines inside the dependencies block in
android/app/build.gradle
:compile project(':rn-paytabs')
- If you have issue with okhttp or okio modules:
configurations { all*.exclude group: 'com.squareup.okhttp3', module: 'okhttp' all*.exclude group: 'com.squareup.okio', module: 'okio' }
Usage
; RNPaytabsstart "pt_merchant_email": "" "pt_secret_key": ""// Add your Secret Key Here "pt_transaction_title": "Mr. John Doe" "pt_amount": "1.0" "pt_currency_code": "BHD" "pt_shared_prefs_name": "myapp_shared" "pt_customer_email": "test@example.com" "pt_customer_phone_number": "+97333109781" "pt_order_id": "1234567" "pt_product_name": "Tomato" "pt_timeout_in_seconds": "300" //Optional "pt_address_billing": "Flat 1 Building 123 Road 2345" "pt_city_billing": "Juffair" "pt_state_billing": "Manama" "pt_country_billing": "BHR" "pt_postal_code_billing": "00973" //Put Country Phone code if Postal code not available '00973'// "pt_address_shipping": "Flat 1 Building 123 Road 2345" "pt_city_shipping": "Juffair" "pt_state_shipping": "Manama" "pt_country_shipping": "BHR" "pt_postal_code_shipping": "00973" //Put Country Phone code if Postal "pt_color": "#3a33ff" // for IOS only "pt_theme_light": false // for IOS only { // Callback for success & fail. // { pt_token_customer_email: '',pt_token: '',pt_token_customer_password: '', pt_transaction_id: '123456',pt_response_code: '100' } RNPaytabs; // Response Code: 100 successful otherwise fail if responsept_response_code == '100' RNPaytabs; else RNPaytabs; // Tokenization //RNPaytabs.log(response.pt_token_customer_email); //RNPaytabs.log(response.pt_token_customer_password); //RNPaytabs.log(response.pt_token); };
Next
[Beta] iOS
Please check IOS.md to help you build with android.
- In XCode, in the project navigator, right click
Libraries
➜Add Files to [your project's name]
- Go to
node_modules
➜rn-paytabs
and addRNPaytabs.xcodeproj
- In XCode, in the project navigator, select your project. Add
libRNPaytabs.a
to your project'sBuild Phases
➜Link Binary With Libraries
- Run your project (
Cmd+R
)<
[TODO] Windows
- In Visual Studio add the
RNPaytabs.sln
innode_modules/rn-paytabs/windows/RNPaytabs.sln
folder to their solution, reference from their app. - Open up your
MainPage.cs
app
- Add
using Paytabs.RNPaytabs;
to the usings at the top of the file - Add
new RNPaytabsPackage()
to theList<IReactPackage>
returned by thePackages
method