Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

bluetime-ewallet

yehuda.pcibooking177ISC1.0.6-beta.1TypeScript support: included

BlueTime Orchestra library for eWallet payments (GooglePay, Applepay, payPal, Banks...)

PCI Booking, Orchestra, BlueTime, 3D Secure, 3DS, Card authentication, Payment Orchestration, Google Pay, Apple Pay, PayPal, Bank transfer

readme

Introduction

This is a Typescript/javascript library that enable a single unified integration for collecting payments.

Getting Started

  1. Installation process Use: npm i bluetime-ewallet

  2. Version history 1.0.1 - Including a pre-release for bank payments 1.0.1-beta.3 Added ApplePay version compatibility of Safari. Initial BankPay implememtation.

1.0.1-beta.4 Change APPLE_JS_VERSION to 12.

1.0.1-beta.5 Initial support for bank paument: Europe open banking and USA ACH. Expose the eWallet provider name used.

1.0.1-beta.6 Initial support for Credit card payments. Fixes to Apple Pay.

1.0.1-beta.7 Complete support for Credit card payments. Fixed tokenization results parsing.

1.0.1-beta.8 Support i18n.

1.0.1-beta.9 Support i18n fixes.

1.0.1-beta.10 Fix parsing results (Tokenization/Charge).

1.0.1-beta.11 Fix ApplePay session completion reporting.

1.0.1-beta.12 Packaging and publish revision. Ignore ApplePay exception.

1.0.1-beta.13 Support 20 languages. Support 3d secure in Card Pay.

1.0.1-beta.14 Support branding of popup windows.

1.0.1-beta.15 Expose 3ds data after tokenization.

1.0.2-beta.0 Support Charge + Tokenize. Support unified result token.

1.0.2-beta.1 Accept 3ds results from CardEntry page

1.0.2-beta.2 Fixed bug in accepting 3ds results from CardEntry page

1.0.2-beta.3 Extended the returned model (EWalletResultData) with 2 additional properties, to include client-side errors. /** Indicates whether client operation was successfu */ clientSuccess!: boolean;

    /** In case client operation was unsuccessful */
    clientErrorMessage: any;

The engine.parseResultToken supports the new structure.

1.0.2-beta.4 Fix ApplePay session validation returned data.

1.0.2-beta.5 Added logging in checkAvailability().

1.0.2-beta.6 Added logging in factory.

1.0.3-beta.0 Avoid usage of static class names, to allow minification.

1.0.3-beta.1 Bug fix in handling closed popup window returned message.

1.0.3-beta.2 Support PREAUTH_AND_TOKENIZE operation.

1.0.3-beta.3 Prevent popup window in card entry from closing in test mode. Added exception handling in cardpay operation.

1.0.3-beta.4 Fix result token parsing.

1.0.3-beta.5 Disable popup window closing disablement from 1.0.3-beta.3.

1.0.3-beta.6 Fix popup window closing in CardPay.

1.0.3-beta.7 Added a formal status to ClientPaymentDataResults class. Apple Pay user cancellation returned to caller.

1.0.4 Fix parsing of EWalletChargeResults.

1.0.5-beta.0 Update npm packages, including payTools-3ds with CyberSource support.

1.0.5-beta.1 Update payTools-3ds.

1.0.6-beta.0 Upi implementation.

1.0.6-beta.1 Otp implementation (Html).

  1. Quick Guide

Initialize eWallet engine

const engine = new eWallet.Engine(eWalletToken, requiredAncillaryInfo, [language]);

Parameters

sessionToken - Token obtained from the Orchestra or Shield service requiredAncillaryInfo - billing/shipping address requirements (applicable on most eWallets)

Detect available eWallets

const available = engine.checkAvailability(); Will obtain the list of eWallets available on the specific device and browser.

Start a payment session

engine.payBy(eWalletList, callback, buttonProperties); Start payment process using specified list of eWallet providers and their respective button properties.

Parameters

eWalletList list of requested eWallet providers and their respective button properties. callback a callback handler that will be called once the payment operation is complete buttonProperties [optional] Button properties

Obtaining results

You may use the following methods in order to get data on the current session. getSessionType(); parseResultToken(); getBillingInfo(); getShippingInfo();

Build and Test

In order to use the library, you will need to have an account with Orchestra. Use https://bluetime.io/ to sign up. Follow the API documentation at https://developers.bluetime.io/reference/welcome in order to obtain a session token.