1.0.2 • Published 7 years ago
rn-paytabs v1.0.2
rn-paytabs

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
import RNPaytabs from 'rn-paytabs';
RNPaytabs.start({
"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
}, (response) => {
// Callback for success & fail.
// { pt_token_customer_email: '',pt_token: '',pt_token_customer_password: '', pt_transaction_id: '123456',pt_response_code: '100' }
RNPaytabs.log("on Response Payment");
// Response Code: 100 successful otherwise fail
if (response.pt_response_code == '100')
RNPaytabs.log("Transaction Id: " + response.pt_transaction_id);
else
RNPaytabs.log("Otherwise Response: " + response.pt_response_code);
// 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