react-native-payaza
v1.0.1
Published
Payaza React Native Library
Downloads
13
Readme
react-native-payaza
Payaza React Native Library
Installation
npm install react-native-payaza
yarn add react-native-payaza
npm install ./react-native-payaza-0.1.0.tgz
Installing Dependencies
- install React Native Webview
npm install react-native-webview
- install Clipboard
npm install --save @react-native-clipboard/clipboard
Link native dependencies
From react-native 0.60 autolinking will take care of the link step but don't forget to run pod install
React Native modules that include native Objective-C, Swift, Java, or Kotlin code have to be "linked" so that the compiler knows to include them in the app.
react-native link react-native-webview
Usage
import the package
import Payaza, {
type IPayaza,
type PayazaErrorResponse,
type PayazaSuccessResponse,
PayazaConnectionMode,
} from 'react-native-payaza'
// ...
const payaza = React.useRef<IPayaza>(null);
// ...
const payNow = () => {
payaza.current?.createTransaction({
amount: Number(110),
connectionMode: PayazaConnectionMode.LIVE_CONNECTION_MODE,
email: "[email protected]",
firstName: "<first name>",
lastName: "<last name>",
phoneNumber: "<+12345678900>",
currencyCode: 'NGN',
transactionReference: "transaction_reference",
});
}
const handleError = (response: PayazaErrorResponse) => {
Alert.alert(response.data.message, `Error Occurred`);
};
const handleSuccess = (response: PayazaSuccessResponse) => {
Alert.alert(
response.data.message,
`Transaction reference ${response.data.payaza_reference}`
);
};
// ...
return (
<View>
<TouchableOpacity onPress={payNow}>
<Text style={styles.buttonText}>Pay Now</Text>
</TouchableOpacity>
<Payaza
onSuccess={handleSuccess}
onError={handleError}
onClose={console.log}
merchantKey="<public key>"
ref={payaza}
/>
</View>
)
Contributing
See the contributing guide to learn how to contribute to the repository and the development workflow.
License
MIT
Made with create-react-native-library