This repository is a Vue 3 wrapper for the Solidgate Client Software Development Kit (SDK).
It supports rendering payment forms and resign forms, including custom container elements for Google Pay, Apple Pay, or PayPal buttons.
Check our
- Payment guide to understand business value better
- API Reference to find more examples of usage
SDK for Vue3 contains | Table of contents |
---|---|
lib – main Vue 3 SDK source codepublic – assets for example projectsrc – entry point for example integrationpackage.json – project metadata and dependency definitions
|
Installation Usage Development server Build |
Run the following command inside your Vue 3 project:
npm i @solidgate/vue-sdk
Render a payment form component in your Vue3 project.
<template>
<Payment :merchant-data="merchantData" />
</template>
<script lang="ts" setup>
import Payment, { InitConfig } from '@solidgate/vue-sdk'
const merchantData: InitConfig['merchantData'] = {
merchant: '<<--YOUR MERCHANT ID-->>',
signature: '<<--YOUR SIGNATURE OF THE REQUEST-->>',
paymentIntent: '<<--YOUR PAYMENT INTENT-->>'
}
</script>
To render Google Pay, Apple Pay, or PayPal buttons in separate containers, define Payment as an asynchronous component and pass references to the container elements.
<template>
<Payment
:merchan-data="merchantData"
:google-pay-container-ref="googleButton"
:apple-pay-container-ref="appleButton"
:paypal-container-ref="paypalButton"
/>
<div ref="googleButton" />
<div ref="appleButton" />
<div ref="paypalButton" />
</template>
<script lang="ts" setup>
import { ref, defineAsyncComponent } from 'vue'
import { InitConfig } from '@solidgate/vue-sdk'
const Payment = defineAsyncComponent(() => import('@solidgate/vue-sdk'))
const googleButton = ref<HTMLDivElement>()
const appleButton = ref<HTMLDivElement>()
const paypalButton = ref<HTMLDivElement>()
const merchantData: InitConfig['merchantData'] = {
merchant: '<<--YOUR MERCHANT ID-->>',
signature: '<<--YOUR SIGNATURE OF THE REQUEST-->>',
paymentIntent: '<<--YOUR PAYMENT INTENT-->>'
}
</script>
Render a resign payment form component in your Vue3 project.
<template>
<Resign :resign-request="resignRequest" />
</template>
<script lang="ts" setup>
import { Resign, ResignRequest } from '@solidgate/vue-sdk'
const resignRequest: ResignRequest = {
merchant: '<<--YOUR MERCHANT ID-->>',
signature: '<<--YOUR SIGNATURE OF THE REQUEST-->>',
resignIntent: '<<--YOUR RESIGN INTENT-->>'
}
</script>
Vue3 + Typescript + Vite
cd vue-sdk
npm i
npm run start
- Navigate to http://localhost:3000/
cd vue-sdk
npm run build
cd dist
- solid-payment.es.js is a js bundle