Giter Site home page Giter Site logo

paystackcapacitor's Introduction

Paystack Capacitor Plugin

A Paystack capacitor plugin for Android and iOS

Getting Started

This plugin enables seamless integration of the Paystack SDK into a Capacitor application.

Installation

To install this plugin, run the NPM command below in your Capacitor project's root folder

npm i capacitor-paystack-plugin

Then open your project in Android Studio with

npx cap open android

or XCode with

npx cap open ios

Configuration

In your Android Studio project, add the following line to the list of plugins in your project, if any

...
add(PaystackCapacitor.class);

In your project folder, run the command below to update your Android Studio/XCode project

npx cap sync

Setup complete!

Code example

To charge a card,

//Import the paystack plugin
import { PaystackPlugin } from '@bot101/capacitor-paystack-plugin';

//Create a paystack object
const paystack: PaystackPlugin; = new PaystackPlugin();

//Initialize the SDK with your Paystack public key (found in your Paystack developer account dashboard)
await this.paystack.initialize({publicKey: "pk_public key here"});

//Add customer card information
await this.paystack.addCard({
  cardNumber: String(cardNumber),
  expiryMonth: String(expiryMonth),
  expiryYear: String(expiryYear),
  cvv: String(cvv)
});

//Add the email to charge
await this.paystack.setChargeEmail({email: "[email protected]"});

//Set the amount to charge the card (in kobo)
await this.paystack.setChargeAmount({amount: '1000000'});

//Optionally add custom fields, metadata and charge parameters (more information in the Paystack docs)
await this.paystack.putChargeCustomFields({customField1: "field1", customField2: "field2"});
await this.paystack.putChargeMetadata({metaData1: "meta1", metaData2: "meta2"});
await this.paystack.addChargeParameters({param1: "param1", param2: "param2"});

//Call chargeCard to charge the card
const chargeResponse = await this.paystack.chargeCard();
return chargeResponse.reference;

To charge an access code

//After initializing the plugin as detailed above

//Add customer card information
await this.paystack.addCard({
  cardNumber: String(cardNumber),
  expiryMonth: String(expiryMonth),
  expiryYear: String(expiryYear),
  cvv: String(cvv)
});

//Set the access code retrieved from your web server
await this.paystack.setAccessCode({accessCode});

//Call chargeCard to charge the card
const chargeResponse = await this.paystack.chargeCard();
return chargeResponse.reference;

To get a card type

const cardInfo = await this.paystack.getCardType()
console.log(cardInfo.card_type) //"Visa", "Mastercard", e.t.c

Note

None

Running the tests

Tests are not yet setup

Deployment

Build your application and you are good to go!

Versioning

Yet to setup

Author

License

This project is licensed under the MIT License

paystackcapacitor's People

Contributors

bot101 avatar doctorakin avatar doctordrayfocus avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.