react-native-bluesnap-encrypter
v0.2.3
Published
A Cross platform React Native module to encrypt BlueSnap sensitive form data
Downloads
9
Maintainers
Readme
react-native-bluesnap-encrypter 🔐
A Cross platform React Native module to encrypt BlueSnap sensitive form data. As described in BlueSnap API docs
Why
BlueSnap SDKs provides a soluion for Web, iOS and Android plaforms. This module wraps BlueSnap's Web JavaScript SDK so you can perform data encryption from your react native application.
Features
- Zero configurations - only your BlueSnap's client encryption key is required
- Promise based - use Promise or async/await
Install
npm i --save react-native-bluesnap-encrypter
Quick Start
import React, { Component } from "react";
import { View, Button } from "react-native";
import BlueSnapEncrypter from "react-native-bluesnap-encrypter";
class MyComponent extends Component {
constructor(props, context) {
super(props, context);
this.encrypter = null;
}
onEncrypt = async () => {
const encrypted = await this.encrypter.encrypt({
creditCardNumber: "1234123412341234",
cvvNumber: "123"
});
console.log(encrypted);
/*
{
"ccLast4Digits": "1234",
"encryptedCreditCard": "ENCYPTED",
"encryptedCvv": "ENCYPTED"
}
*/
}
render() {
return (
<View>
<Button
title="Encrypt Credit Card"
onPress={this.onEncrypt}
/>
<BlueSnapEncrypter
clientEncryptionKey="YOUR_CLIENT_ENCRYPTION_KEY"
bluesnapVersion="1.0.3"
fraudSessionId="XXXX"
ref={(encrypter) => this.encrypter = encrypter}
/>
</View>
);
}
}
Props
| Property | Type | Description | | --- | --- | --- | |clientEncryptionKey | PropTypes.string.isRequired | Your BlueSnap client encription key (located at your API Settings)| |bluesnapVersion | PropTypes.string | Optional BlueSnap JavaScript SDK version, defaults to 1.0.3| |fraudSessionId | PropTypes.string | Unique ID of the shopper whose device fingerprint information was collected on the checkout page|
Methods
encrypt
Encrypts credit card data with your client encryption key.
const encrypted = await this.encrypter.encrypt({
creditCardNumber: "1234123412341234",
cvvNumber: "123"
});
Returns a Promise wich resolves to:
{
"ccLast4Digits": "1234",
"encryptedCreditCard": "ENCYPTED",
"encryptedCvv": "ENCYPTED"
}
Missing Something? Something is not working?
- Open a GitHub issue, or
- Send a pull request 🤩