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: "example@example.com",
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>
)