Introduction
This is a Typescript/javascript library that enable a single unified integration for collecting payments.
Getting Started
Installation process Use: npm i bluetime-ewallet
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).
- 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.