An open API service indexing awesome lists of open source software.

https://github.com/seerbit/seerbit-vue

SeerBit VueJS Component for Vue 3.x
https://github.com/seerbit/seerbit-vue

Last synced: over 1 year ago
JSON representation

SeerBit VueJS Component for Vue 3.x

Awesome Lists containing this project

README

          







VueJS
SeerBit

# SeerBit Checkout Wrapper for VueJS
Seerbit Vue SDK can be used to integrate the SeerBit payment gateway into your Vue application.
This module was built and tested using VueJS 3.2.13

# Requirements
Register for a merchant account on [Seerbit Merchant Dashboard](https://dashboard.seerbitapi.com) to get started. \
--> Login -> Settings menu -> API Keys menu -> Copy your public key

## Install

```bash
npm install --save seerbit-vue
```

```bash
yarn add seerbit-vue
```

## Properties
| Property | Type | Required | Default | Description |
| :--- | :-- | :-- | :-- | :-- |
| currency | string | Optional | NGN | The currency for the transaction e.g NGN|
| email | string | Required | None | The email of the user to be charged |
mobileNo | string | Optional | None | The mobile number of the user to be charged |
| description | string | Optional | None | The transaction description which is optional |
| fullName | string | Optional | None | The full name of the user to be charged |
| country | string | Optional | "NG" | Transaction country which can be optional |
| tranref | string | Required | None | Set a unique transaction reference for every transaction |
| amount | string | Required | None | The transaction amount in naira |
| callbackUrl | string | Optional | None | This is the redirect url when transaction is successful |
| publicKey | string | Required | None | Your Public key or see **Requirements** above to get yours |
| closeOnSuccess | boolean | Optional | False | Close checkout when trasaction is successful |
| closePrompt | boolean | Optional | False | Close the checkout page if transaction is not initiated |
| setAmountByCustomer | boolean | Optional | False | Set to true if you want user to enter transaction amount |
| pocketRef | string | Optional | None | This is your pocket reference for vendors with pocket |
| vendorId | string | Optional | None | This is the vendorId of your business using pocket |
| tokenize | boolean | Optional | False | Tokenize card |
| planId | string | Optional | None | Subcription Plan ID |
| onCallback | Method | Optional | None | Callback method if transaction was successful |
| onCloseCheckout | Method | Optional | None | Callback method if transaction was cancelled |
| buttonText | String | Optional | Pay With SeerBit | Text to be displayed on launch button
| autoCheckout | boolean | Optional | false | Launch checkout automatically if true, or display a pay button if false
| customization | Object | Optional | None | Customization e.g below

```vue
customization: {
theme: {
border_color: "#000000",
background_color: "#004C64",
button_color: "#0084A0",
},
payment_method: ["card", "account", "transfer", "wallet", "ussd"],
display_fee: true,
logo: "logo_url | base64",
}
```

## Usage

```vue

import seerbit from "seerbit-vue";
export default {
components: {
seerbit,
},
data() {
return {
publicKey: "SBTESTPUBK_t4G16GCA1O51AV0Va3PPretaisXubSw1",
fullName: "John Doe",
email: "johndoe@mail.com",
mobileNo: "",
amount: "5.00",
planId: "",
description: "",
productId: "",
pocketRef: "",
tokenize: "",
currency: "NGN",
customization: {
theme: {
border_color: "#000000",
background_color: "#004C64",
button_color: "#0084A0",
},
payment_method: ["card", "account", "transfer", "wallet", "ussd"],
display_fee: true, // true
display_type: "embed", //inline
logo: "logo_url | base64",
},
callbackurl: "",
};
},
computed: {
tranref() {
return Date.now().toString();
},
},
methods: {
onCallback: function (response) {
console.log(response);
},
onCloseCheckout: function () {
console.log("checkout closed");
},
},
};



.seerbitButton {
align-self: center;
background-color: #000000;
color: #ffffff;
font-weight: 400;
cursor: pointer;
justify-content: center;
align-items: center;
border-radius: 10px;
font-size: 16px;
}

```

## License

MIT © [seerbit](https://github.com/seerbit)