UNPKG

mangopay-cardregistration-js-kit

Version:

MANGOPAY Card Registration JavaScript Kit is a client library designed to take care of the card registration process.

93 lines (72 loc) 4.36 kB
MANGOPAY Card Registration JavaScript Kit [![Build Status](https://travis-ci.org/Mangopay/cardregistration-js-kit.svg?branch=master)](https://travis-ci.org/Mangopay/cardregistration-js-kit) ================================================= MANGOPAY CardRegistration JavaScript Kit is a client library designed to take care of the card registration process. Refer to [MANGOPAY REST API documentation](http://docs.mangopay.com/api-references/) and [MANGOPAY card registration process](http://docs.mangopay.com/api-references/card-registration/) for more information. Browser compatibility ------------------------------------------------- The library makes cross-origin Ajax calls ([CORS](http://en.wikipedia.org/wiki/Cross-origin_resource_sharing)) to get the card token and handle card registration with MANGOPAY API. Therefore it requires a browser that supports CORS. The kit does not support Internet Explorer 6 & 7 and Opera Mini. The payment page that collects card details should use HTTPS. The kit will not work in Internet Explorer 8 and 9 if this page is not encrypted with SSL. Installation ------------------------------------------------- The kit has been written in pure JavaScript and has no external dependencies. It is enough to include the kit file on your card payment page: <script type="text/javascript" src="mangopay-kit.js"></script> Typically you would also have MANGOPAY SDK up and running to work with the MANGOPAY API. [Java](https://github.com/Mangopay/mangopay2-java-sdk), [PHP](https://github.com/MangoPay/mangopay2-php-sdk), [.NET](https://github.com/Mangopay/mangopay2-net-sdk), [Python](https://github.com/MangoPay/mangopay2-python-sdk) and [Ruby](https://github.com/Mangopay/mangopay2-ruby-sdk) distributions are available. The kit is also available for installation from [npm](https://www.npmjs.com/package/mangopay-cardregistration-js-kit) if you prefer. Configuration ------------------------------------------------- Set `mangoPay.cardRegistration.clientId` to your MANGOPAY Client ID. `mangoPay.cardRegistration.baseURL` is set to sandbox environment by default. To enable production environment, set it to `https://api.mangopay.com`. Usage ------------------------------------------------- Make sure you have the right configuration in place: // Set MANGOPAY API base URL and Client ID mangoPay.cardRegistration.baseURL = "https://api.sandbox.mangopay.com"; mangoPay.cardRegistration.clientId = {your-client-id}; Create a new CardRegistration object on the server and pass it over to the JavaScript kit: // Initialize with card register data prepared on the server mangoPay.cardRegistration.init({ cardRegistrationURL: {CardRegistrationURL property}, preregistrationData: {PreregistrationData property}, accessKey: {AccessKey property}, Id: {Id property} }); Collect card details from the user on a payment form: // Card data collected from the user var cardData = { cardNumber: $("#card_number").val(), cardExpirationDate: $("#card_exp_date").val(), cardCvx: $("#card_cvx").val(), cardType: $("#card_type").val() }; Then call `mangoPay.cardRegistration.registerCard`: // Register card mangoPay.cardRegistration.registerCard( cardData, function(res) { // Success, you can use res.CardId now that points to registered card }, function(res) { // Handle error, see res.ResultCode and res.ResultMessage } ); Running the demo ------------------------------------------------- There is a simple PHP demo code included that shows how to use the kit. The demo page requires MANGOPAY SDK class to do the server-side work. Make sure that [MANGOPAY PHP SDK](https://github.com/MangoPay/mangopay2-php-sdk) is accessible to the demo page. Unit Tests ------------------------------------------------- Jasmine unit tests are placed under tests dir and can be launched in a browser using tests/index.html. Unit test covers only validation classes and requests with invalid data. License ------------------------------------------------- MANGOPAY JavaScript Kit is distributed under MIT license. Contacts ------------------------------------------------- Report bugs or suggest features using issue tracker at GitHub.