react-native-google-wallet
TypeScript icon, indicating that this package has built-in type declarations

1.2.0 • Public • Published

react-native-google-wallet

Ejemplo de Google Wallet

Installation

npm install react-native-google-wallet

Setup

Steps to Follow:

  1. Setting up Your Environment:

    • Follow the instructions outlined in Step 1 of the Google Pay API codelab to set up your development environment.
  2. Configuring Your Project:

    • Proceed to Step 2 to configure your Android project according to the provided guidelines.

Creating a Generic Class:

  • Following the initial setup, create a generic class within the Google Pay Business Console or utilize the Wallet Lab Tools for temporary testing purposes. Once you've created your generic class, navigate to the Google Wallet API, click on "Additional Features", and add your app using the "Add an app" button as shown in the following photo:

    Wallet api

Additional Resources:

For further information on designing and implementing Google Wallet passes, consult the Google Wallet Pass Builder documentation.

Usage

import { addPass } from 'react-native-google-wallet';

// ...

const issuerEmail = "email@example.com";
const issuerId = "33880000000333999289";
const passClass = "33880000000333999289.4e5f8a07-2ef9-4d48-91a1-601c1d006db1";
const passId = Math.random().toString(36).substring(2, 15) + Math.random().toString(36).substring(2, 15); 

const newObjectJson = {
  iss: issuerEmail,
  aud: "google",
  typ: "savetowallet",
  iat: Math.floor(Date.now() / 1000),
  origins: [],
  payload: {
    genericObjects: [
      {
        id: `${issuerId}.${passId}`,
        classId: passClass,
        genericType: "GENERIC_TYPE_UNSPECIFIED",
        hexBackgroundColor: "#4285f4",
        logo: {
          sourceUri: {
            uri: "https://storage.googleapis.com/wallet-lab-tools-codelab-artifacts-public/pass_google_logo.jpg"
          }
        },
        cardTitle: {
          defaultValue: {
            language: "en",
            value: "Google I/O '22  [DEMO ONLY]"
          }
        },
        subheader: {
          defaultValue: {
            language: "en",
            value: "Attendee"
          }
        },
        header: {
          defaultValue: {
            language: "en",
            value: "Alex McJacobs"
          }
        },
        barcode: {
          type: "QR_CODE",
          value: passId
        },
        heroImage: {
          sourceUri: {
            uri: "https://storage.googleapis.com/wallet-lab-tools-codelab-artifacts-public/google-io-hero-demo-only.jpg"
          }
        },
        textModulesData: [
          {
            header: "POINTS",
            body: `${Math.floor(Math.random() * 10000)}`,
            id: "points"
          },
          {
            header: "CONTACTS",
            body: `${Math.floor(Math.random() * 99) + 1}`,
            id: "contacts"
          }
        ]
      }
    ]
  }
};

// Convertir el objeto a formato JSON
const newObjectJsonString = JSON.stringify(newObjectJson);


const result = await addPass(newObjectJsonString);

🍀 Sponsors

Love what I do? Send me some coffee! 💖☕

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

Package Sidebar

Install

npm i react-native-google-wallet

Weekly Downloads

48

Version

1.2.0

License

MIT

Unpacked Size

19.6 kB

Total Files

19

Last publish

Collaborators

  • aguschapuis