react-native-payments-lib v1.0.15
React Native Payment Lib
This library implements In-App purchase systems on Android and iOS platforms using Typescript. Enable basic funcionalities as: retrieve product info (SKU), request purchases and request subscriptions. Also, allow communication with MContigo Rest APIs.
Dependencies
Use as main dependency another package on ReactNative which implements native part
Build
Follow the next steps for build and publish
$ npm install
$ npm run build
$ npm run publishlib
Folder lib/ must be generate and this folder will be publish.
Install
Using npm on your ReactNative project
$ npm install react-native-payments-lib --save
Usage
<RNIAPManager
opType={OpType.PURCHASE}
style={{ marginTop: 10 }}
http={{
url: "https://api.beta.lamenteesmaravillosa.com/v2/payments/google",
headers: {
"Content-Type": "application/json",
"Authorization": "Mejor eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1ZDUyZDhhZDdhMjNkYjBiNzgzZWI4MWUiLCJpYXQiOjE1OTUyNjA0MTMsImV4cCI6NDcxOTMxMTYxM30.guJOaq1ysTQ1z423cCl_DtbL4oZWtqqS68nWwVsWqqU",
X_MEJOR_KEY: "courses",
X_MEJOR_APP: "mobile_courses",
X_APP_VERSION: "1.7.17"
}
}}
onSuccess={data => console.log(data)}
onError={error => { this.setState({ error: (error.response ? JSON.stringify(error.response) : JSON.stringify(error)) }) }}
onPurchase={data => { this.setState({ receipt: JSON.stringify(data) }) }}
subscribeLabel={"Purchase Test"}
productId={"com.mcontigo.cursos.teste.product"} />
Next, the interface defined for props of the main component
export interface Props {
subscribeLabel?: string,
productId: string,
style?: any,
http: { url: string, headers?: any },
opType: OpType,
onSuccess: (receipt: any) => void,
onPurchase?: (data: any) => void,
onError: (error: any) => void
}
opType: Operation type: PURCHASE or SUBCRIPTION.
http: params for requset MContigo Rest API. url: endpoint Rest API. headers: needed headers for HTTP request.
onSuccess: callback on success operation: ** data: response data with response according.
onError: callback on error.
onPurchase: callback on reponse to successfuly operation of In-App purchase, before call API.
productId: product id register on Google Play or Apple Store.
subscribeLabel: component label with custom descriptio about operation.