Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

rave-reactnative-wrapper

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rave-reactnative-wrapper

A react native wrapper for rave, that utilizes the power of webView to achieve rave by Flutterwave payment integration

  • 2.0.1
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
3
increased by200%
Maintainers
1
Weekly downloads
 
Created
Source

Rave By Flutterwave React Native Web View Component

This is the react native SDK for Rave By Flutterwave. that utilizes webview in displaying the Rave modal

This SDK allows you plug-in Rave's payment gateway directly into your react native application and start accepting payment immediately, utilizing all avaliable payment methods, by setting the payment method you want from your Rave Dashboard

This package copies a similar loading design to that of Rave, which makes transistion to Rave's website less noticeable. This package also offers a cancel button, so one can easily cancel if Rave takes a long time to load its content (the onCancel props event is called when this happens).

Compatibility

@react-native-community/clireact-native
^1.0.0^0.59.0

Integrating Rave React Native

You can pull in react-native-rave-webview into app with the steps below;

  • Change directory into your current project directory from your terminal and enter this command:

    npm i rave-reactnative-wrapper --save

Usage

1. import Rave Component
import { Rave } from 'rave-reactnative-wrapper';
2. You can import shortid to use as your txref generator
import shortid from 'shortid'; //   Feel free to use your own logic/ package to generate unique references
2. Set your success, failure and close methods
constructor(props) {
    super(props);

  }

   onSuccess(data) {
   // PLEASE CALL THE FLUTTERWAVE VERIFY ENDPOINT TO CONFIRM TRANSACTION STATUS

    console.log("success", data);
    // You get the complete response returned that comes from Rave,


  }

 onCancel(data) {
	// PLEASE CALL THE FLUTTERWAVE VERIFY ENDPOINT TO CONFIRM TRANSACTION STATUS
	console.log(data);
 }

  onError(data) {
    //an error occoured
// PLEASE CALL THE FLUTTERWAVE VERIFY ENDPOINT TO CONFIRM TRANSACTION STATUS

  }
3. Build your own Pay button component (Make sure you pass down the props.onpress into it)
const PayNow = (props) => {
  return (
    <TouchableOpacity style={{}} onPress={props.onPress}>
      <View>
        <Image source={""} style={{}} />
      </View>
      <Text style={{}}>Pay Now</Text>
      <Entypo name="chevron-thin-right" color="#C7C7CC" size={18} />
    </TouchableOpacity>
  )
}
4. Use component (ensure to set currency for the desired payment method to display)
 render() {
     return (
        <View  style={styles.container}>
          <Rave
                buttonText="Pay with Flutterwave"
                raveKey="FLWPUBK_TEST-e2edac55d072562ca37a991a3d97eeb3-X"
                amount={10}
                currency={'NGN'}
                country={'NG'}
                customerEmail={'team9.tech@gmail.com'}
                customerPhone={'08114089344'}
                customer_firstname={'First Name'}
                customer_lastname={'Last Name'}
                ActivityIndicatorColor="black"
                payment_options="card"
                onCancel={onCancel}
                onSuccess={onSuccess}
                onError={onError}
                txref={shortid()}
            />
        </View>
    );
   }

API's

all React-Native-rave-WebView API
Nameuse/descriptionextra
buttonReceives your button component and passes down propsnull
raveKeyPublic or Private FlutterWave Rave key(visit https://rave.flutterwave.com to get yours)null
amountAmount to be paidnull
txrefset TransactionRef for transactionnull
ActivityIndicatorColorcolor of loaderdefault: #f5a623
customerEmailCustomer's emaildefault: null
customerPhoneCustomer's Mobiledefault: null
billingEmailBillers emaildefault: null
billingMobileBillers mobiledefault: null
billingNameBillers Namedefault: null
onCancelcallback function if user cancels, either while web view is loading or after loadingdefault: null
onSuccesscallback function if transaction was successful (it will return the entire response by Flutterwave's Rave )default: null
onErrorcallback function if an error occured during transactiondefault: null

Everyone is welcome to create a pull request with detailed description of what it fixes, and I would ensure to test and merge.

This project is licensed under ISC license.

Don't forget to star, like and share :)

Keywords

FAQs

Package last updated on 30 May 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc