Socket
Socket
Sign inDemoInstall

@kibocommerce/kibo-paymentgateway-hosting

Package Overview
Dependencies
Maintainers
2
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@kibocommerce/kibo-paymentgateway-hosting

This is an example payment gateway adapter that can be used with the Kibo UCP. The main branch of this repo should always work as a No-Op gateway so that you can start with a working app and develop from there.


Version published
Maintainers
2
Created
Source

Node.js Payment Extensibility Host Pacakge

This is an example payment gateway adapter that can be used with the Kibo UCP. The main branch of this repo should always work as a No-Op gateway so that you can start with a working app and develop from there.

Configuration

Implement the PaymentGatwayAdapter interface

import type { PaymentGatwayAdapter, AdapterContext, GatewayAuthorizationRequest, GatewayAuthorizeResponse } from "@kibocommerce/kibo-paymentgateway-hosting";

class MyService implements PaymentGatwayAdapter {
  context: AdapterContext;
  logger: any;
  constructor(context: AdapterContext, logger: any) {
    this.context = context;
    this.logger = logger;
  }
  async authorize(
    request: GatewayAuthorizationRequest
  ): Promise<GatewayAuthorizeResponse> {
    return {
        authCode:"go"
    }
  }
  ...
}

Create a factory

import type { AdapterFactory} from "@kibocommerce/kibo-paymentgateway-hosting";
class MyFactory implements AdapterFactory {
  createAdapter(context: AdapterContext, logger: any): PaymentGatwayAdapter {
    return new MyService(context, logger);
  }
}

Pass the factory to the host

import host from "@kibocommerce/kibo-paymentgateway-hosting"

host(factory);

Serverless Hosting

For Dev or QA purposes, this package can be deployed to serverless environments using any module that can wrap an NodeJS Express application for serverless use, such as Serverless Http or Serverless Express

You will need to pass your gateway adapter factory to the createHost function that will return an Express application.

import { createHost } from '@kibocommerce/kibo-paymentgateway-hosting'
import { CustomAdapterFactory } from './CustomAdapterFactory'
// create your paymentgateway adapter factory
const factory = new CustomAdapterFactory()
// create express app instance with factory
const app = createHost(factory)

Once you have the app instance, follow the steps to whichever serverless express module you are using

// lambda.js
import serverless from 'serverless-http'
import { createHost } from '@kibocommerce/kibo-paymentgateway-hosting'
import { CustomAdapterFactory } from './CustomAdapterFactory'
// create your paymentgateway adapter factory
const factory = new CustomAdapterFactory()
// create express app instance with factory
const app = createHost(factory)
// wrap app in serverless-http handler
const serverlessHandler = serverless(app)

export const handler = serverlessHandler
//lambda.js
const kiboPaymentGatewayHost = require('@kibocommerce/kibo-paymentgateway-hosting')
const serverlessExpress = require('@vendia/serverless-express')
const CustomAdapterFactory = require('./CustomAdapterFactory')
const factory = new CustomAdapterFactory()
const app = kiboPaymentGatewayHost.createHost(factory)
exports.handler = serverlessExpress({ app })

FAQs

Package last updated on 01 Apr 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc