1.0.2 • Published 2 years ago

multisafepay-api-wrapper v1.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Node.js wrapper for the MultiSafepay API

This wrapper simplifies working with the MultiSafepay API and allows you to integrate MultiSafepay within your Node.js application.

About MultiSafepay

MultiSafepay is a collecting payment service provider which means we take care of the agreements, technical details and payment collection required for each payment method. You can start selling online today and manage all your transactions from one place.

Requirements

  • To use the wrapper you need a MultiSafepay account. You can create a test account on https://testmerchant.multisafepay.com/signup
  • If you’re using Node 8.0+ we recommend to use async/await if it is a older versions of Node, you can use promises or callbacks instead of async/await.

Installation

With npm:

npm install @multisafepay/api-wrapper --save

And yarn:

yarn add @multisafepay/api-wrapper

Usage

Setup the client for testing with ES6 imports

import MSPClient from '@multisafepay/api-wrapper';
const client = new MSPClient('apiKey');

With require module

const MSPClient = require('@multisafepay/api-wrapper').default;
const client = new MSPClient('apiKey');

Currently we are working to add typescript support

If you want to use test env if not by default is live

const client = new MSPClient('apiKey', { environment: 'test' });

Creating a test order with async/await

# The following code will create a redirect iDEAL order
async () => {
  try {
    const multiSafePayClient = new MSPClient(apiKey, { environment: 'test' });

    return await multiSafePayClient.orders.create({
      type: 'redirect',
      order_id: "my-order-id-1",
      gateway: 'iDEAL',
      currency: 'EUR',
      amount: '1000',
      description: 'Test Order Description',
      payment_options: {
        notification_url:
          'http://www.example.com/client/notification?type=notification',
        redirect_url:
          'http://www.example.com/client/notification?type=redirect',
        cancel_url: 'http://www.example.com/client/notification?type=cancel',
        close_window: '',
      },
      customer: {
        locale: 'en_US',
      },
      second_chance: {
        send_email: true,
      },
    });
  } catch (error) {
    console.log(error);
  }
};

With promises

# The following code will create a redirect iDEAL order
multiSafePayClient.orders
  .create({
    type: 'redirect',
    order_id: 'my-order-id-1',
    gateway: 'iDEAL',
    currency: 'EUR',
    amount: '1000',
    description: 'Test Order Description',
    payment_options: {
      notification_url:
        'http://www.example.com/client/notification?type=notification',
      redirect_url: 'http://www.example.com/client/notification?type=redirect',
      cancel_url: 'http://www.example.com/client/notification?type=cancel',
      close_window: '',
    },
    customer: {
      locale: 'en_US',
    },
    second_chance: {
      send_email: true,
    },
  })
  .then(response => {
    console.log(response);
  })
  .catch(error => {
    console.log(error);
  });

Click here for more examples.

Support

If you have any issues, problems or questions you can create an issue on this repository or contact us at integration@multisafepay.com

Mistakes and improvements

If you spot mistakes or want to contribute in improving this wrapper, feel free to create pull requests

API Documentation

Click here for the MultiSafepay API documentation.

License

MIT License