All images © Mat Wright GOPI Training Technical Overview www.britishcouncil.org1.

Slides:



Advertisements
Similar presentations
Samsung Smart TV is a web-based application running on an application engine installed on digital TVs connected to the Internet.
Advertisements

AcqENGIN Functional Review © 2010 M2. All rights reserved.
Extreme User Interfaces for Alfresco Kevin Dorr Sr. Solutions Engineer Americas Channel.
CUMREC 2005 Creating A Suite of Convenience Services for Clients and Developers Deb Nelson – Systems Analyst Larry Newhouse – Information Systems Leader.
What is Orbital? Our proprietary suite of e-commerce payment solutions Opens the door to easier internet payment card processing support and service Available.
Toolbox Mirror -Overview Effective Distributed Learning.
1 Chapter 12 Working With Access 2000 on the Internet.
Introduction to Web Database Processing
Chapter 9 - Control in Computerized Environment ATG 383 – Spring 2002.
Wireless LAN Topology Visualiser Project Supervisor: Dr Arkady Zaslavsky Project Team Members: Jignesh Rambhia Robert Mark Bram Tejas Magia.
Accounting & Billing System for the WEB Centre GDP 19 Donna Crawford (dc899) Chris O’Neill (ckjon101) Amit Shah (ams401) David Newman (drn101) Supervisor.
Introduction to Web Interface Technology (CSE2030)
Performed by:Gidi Getter Svetlana Klinovsky Supervised by:Viktor Kulikov 08/03/2009.
Introduction to Web Interface Technology (CSE2030)
V v Business Process AMTV Streaming TV Streaming.
Business Customer Gateway 1 PCC Mailer’s Education Seminar Reno Nevada May 20, 2010 Business Customer Gateway Michael Hemphill CSG Direct, Inc.
1 Enabling Secure Internet Access with ISA Server.
Web Development & Design Foundations with XHTML Chapter 9 Key Concepts.
Tomslist Boston University Craigslist Ben Duong, Frank Wong, Marc Adam, Henry Huang.
1 Introduction to Web Development. Web Basics The Web consists of computers on the Internet connected to each other in a specific way Used in all levels.
1 Web Developer & Design Foundations with XHTML Chapter 6 Key Concepts.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
IT 210 The Internet & World Wide Web introduction.
AJAX Chat Analysis and Design Rui Zhao CS SPG UCCS.
1 HTML and CGI Scripting CSC8304 – Computing Environments for Bioinformatics - Lecture 10.
SPS Donate Now VT. Donate Now Test Account Please use the following test account when you are conducting a demo of the Donate Now VT with your merchant:
Classroom User Training June 29, 2005 Presented by:
Comp2513 Forms and CGI Server Applications Daniel L. Silver, Ph.D.
OSIA Portal 2009 Mid-Term Presentation Nazim Öztahtaci Jiawei Chen Parvinder Gill Ye Tian Xin Guo Communication System Design 2009 Fall Mid-Term Workshop.
1 Guide to Novell NetWare 6.0 Network Administration Chapter 11.
Payflow Pro and Payflow Link Manager Merchant Interface Tutorial.
WaveMaker Visual AJAX Studio 4.0 Training Authentication.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
Overview of MSS System Human Actors Non-Human Actors In-house developed components Third party products.
COMP3121 E-Commerce Technologies Richard Henson University of Worcester November 2011.
Secure Credential Manager Claes Nilsson - Sony Ericsson
Hello We are looking for a coder to code the following We have a network that has different sites: we need an application that will scan the network and.
Computer Emergency Notification System (CENS)
Enterprise.NET 1 CA - presentation HENDRI FRANYOHT082210N KRISHNAMURTHY SAMANTH YADAVHT082239L CAI XIANGHT082182A KHAING MYAT THWEHT082208L AUNG MOEHT082184B.
1 1 EPCC 2 Curtin Business School & Edinburgh University Management School Michael J. Jackson 1 Ashley D. Lloyd 2 Terence M. Sloan 1 Enabling Access to.
CIS101 Introduction to Computing Week 01. Agenda What is CIS101? Class Introductions Using your Pace Introduction to Blackboard and online learning.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
.  A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate.  Taken advantage of Spring’s multi layer injection.
Enterprise.NET 1 CA - presentation HENDRI FRANYOHT082210N KRISHNAMURTHY SAMANTH YADAVHT082239L CAI XIANGHT082182A KHAING MYAT THWEHT082208L AUNG MOEHT082184B.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Web Server.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
ICM – API Server Gary Ratcliffe. 2 Agenda Webinar Programme API Server Overview JSON-RPC iCM API Service API Server and Forms New services under.
WEB SERVER SOFTWARE FEATURE SETS
Integrated Mobile Marketing Platform Emergic mConnector Integrated -Mobile Marketing Platform Presented By: Sales Person Name ID: Mobile:
CSC 2720 Building Web Applications Basic Frameworks for Building Dynamic Web Sites / Web Applications.
Configuring and Deploying Web Applications Lesson 7.
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
Module 14: Advanced Topics and Troubleshooting. Microsoft ® Windows ® Small Business Server (SBS) 2008 Management Console (Advanced Mode) Managing Windows.
Feasibility Report INTRODUCING First time in Faisalabad Professional and highly skilled programs of national and internationals levels from the platform.
| 1 EBSCOadmin EBSCO Support EDS Wiki Renata Wlodarczyk | EBSCO.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Architecture Review 10/11/2004
Distributed Control and Measurement via the Internet
EMV® 3-D Secure - High Level Overview
PHP / MySQL Introduction
Database Driven Websites
IIS.
AbbottLink™ - IP Address Overview
ASP.NET MVC Web Development
TN19-TCI: Integration and API management using TIBCO Cloud™ Integration
Presentation transcript:

All images © Mat Wright GOPI Training Technical Overview

Introduction What is GOPI? Global Online Payment Interface Why was it created? To act as a gateway between computer systems that require online payment capability and the Payment Service Provider (PSP) To prevent repeated implementation / integration for each system

In the beginning there was direct integration… Direct integration between each application and PSP resulting in duplicated testing and certification (JPM)

The only way is the GOPI way… Single development, testing and certification of integration between GOPI and PSPs

System components and technologies GOPI consists of four components: Core platform Admin UI Transaction tracker Client

System components and technologies Core Platform Purpose: A standard API gateway for integrating “Book and Pay” systems with Payment Service Providers (PSP) Technologies.NET Framework 4.0 ASP.NET MVC 4.0

System components and technologies Admin UI Purpose: Manage security (users and roles) Manage Payment Provider configuration Produce reconciliation reports Technologies:.NET Framework 4.0 ASP.NET MVC 4.0 & AngularJS

System components and technologies Transaction Tracker Purpose: Check transaction log (GOPI_LOG) for incomplete transactions Query the status of transactions with PSPs Notify calling system (ORS, REX etc) of outcome Technologies:.NET Framework 4.0 Console application Runs as scheduled task

System components and technologies Client Purpose: A client-access library to be used by calling systems (ORS, REX etc) Submits transaction details to GOPI and parses the outcome response Technologies:.NET Framework 4.0 Class library

System components and technologies And also the Test Client Purpose: To submit a test transaction to Core Platform environments Technologies:.NET Framework 4.0 ASP.NET MVC 4.0

Key aspects of database design There are two databases used by GOPI: GOPI_ADMIN – containing configuration, reconciliation data and security settings GOPI_LOG – containing transaction log data, and settings for transaction tracker

GOPI_ADMIN Database Configuration data is held in four tables.

GOPI_ADMIN Database MerchantProvider table Contains details of Payment Service Providers systems, currently JP Morgan Paymentech and Global Payments Global Iris ColumnPurposeJPM?GP? MerchantProviderIdInternal IDYY MerchantProviderNameName of PSPYY TestModeEnabledIndicates test systemY UserNameUsername for PSP systemYY PasswordPassword for PSP systemYY TerminalIdThe terminal IDY HandshakeUrlURL to setup sessionY PayUrlURL for payment pageYY QueryStatusUrlURL for querying statusYY CreditCardTypesSupported credit card typesY

GOPI_ADMIN Database MerchantProviderSettings table Merchant / Country / Currency settings ColumnPurposeJPM?GP? MerchantProviderIdMerchant provider IDYY CountryIsoCodeISO code of countryYY CurrencyCodeCurrency of transactionYY MerchantIdMerchant ID (JPM) / Account (GP)YY ThreeDSecurityEnabledIs 3D Secure enabledY CurrencyDecimalDigitsThe number of digits of currency sub-unit Y CreditCardTypesCredit cards available in this country Y

GOPI_ADMIN Database SystemAccount table The list of systems that are permitted to use GOPI, e.g. ORS, REX etc ColumnPurposeJPM?GP? SystemAccountIdInternal IDYY AccountNoSystem account codeYY WebSiteUrlURL of systemY HostedPageCssUrlURL of CSS to be used on DHPPY

GOPI_ADMIN Database SystemAccountCountrySettings table The list of permitted system, country and merchant combinations ColumnPurpose AccountNoSystem account code CountryIsoCodeISO code of country MerchantProviderIdID of merchant provider

GOPI_ADMIN Database - continued Reconciliation Reports in one table, and security in three tables.

GOPI_LOG Database Transaction log data in three tables.

GOPI_LOG Database GatewayActivityLog table Contains an record for each action performed by GOPI, denoted by LogTypeId ColumnPurposeJPM?GP? GatewayActivityLogIdGUIDYY LogDateTimeDate/Time of recordYY LogTypeIdType of actionYY PaymentGatewayProviderTokenToken from PSPY ParentGatewayActivityLogIdParent recordYY MerchantProviderIdID of merchant providerYY ResponseAcknowledgedOutcome confirmed by calling system YY

GOPI_LOG Database LogData table Detailed data relating to each entry in GatewayActivityLog ColumnPurpose GatewayActivityLogIdGUID of gateway activity log LogDataData received at gateway Exception RawDataData sent from gateway LogDateTimeDate/Time of record

GOPI_LOG Database ReferenceNumberTranslate table Contains mapping of system generated reference number and GOPI reference number ColumnPurpose IdInternal ID OriginalReferenceNumberReference number generated by calling system GeneratedReferenceNumberReference number generated by GOPI

GOPI_LOG Database - continued Transaction tracker data stored in three tables.

Fundamental architecture and data flow Core Platform uses three basic MVC routes: Request – transaction to be processed Response – response from PSP Acknowledge – confirmation from system that it is aware of outcome

Fundamental architecture and data flow There are seven Log Types: InitialRequest – request initially received by GOPI from calling system HandshakeResponse – response to a “handshake” with PSP Callback – callback received from PSP StatusCheck – response to query status with PSP FinalResponse – callback to calling system with outcome of transaction AcknowledgeResponse – Message from calling site that final reponse has been received

How JP Morgan (JPM) provider works GOPI integrates with JP Morgan Paymentech system. Two environments: Production, Test, Each environment has a different username & password. Access to both environments is restricted by IP address whitelist. Changes to our IP addresses that are whitelisted is done via a Technical Profile Questionnaire (TPQ) document. The Callback URL is specified in the XML submitted when initialising the a transaction session. Each country is assigned a Merchant ID (MID).

How JP Morgan (JPM) provider works Dynamic Hosted Payment Page The content of the Dynamic Hosted Payment Page (DHPP) is controlled by JPM, including all HTML and JavaScript. Branding of the DHPP is achieved via a single CSS file, which is hosted on GOPI web site. The CSS file limits us to changing the following; Banner image Styles Some text content, e.g. labels and buttons

How JP Morgan (JPM) provider works

Development environment - JPM The development environment for JPM provider is standard. A development workstation on GSN network connects to JPM Paymentech, assuming IP address is whitelisted.

Testing environment - JPM

Production environment - JPM