25
ARCHITECTURE OF PAYMENT SYSTEMS Petr Afanasiev Software engineer Betsson Technologies

Peter Afanasiev - Architecture of online Payments

  • Upload
    ciklum

  • View
    2.057

  • Download
    5

Embed Size (px)

DESCRIPTION

Payment Service ProvidersMerchant Payment SystemsGeneral architecture of a Payment SystemKnow-hows:Payment queues with MSSQL BrokerAdapter PolymorphismTracing in Service Oriented World Dynamic configuration editor with ASP.Net MVC

Citation preview

Page 1: Peter Afanasiev - Architecture of online Payments

ARCHITECTURE OF PAYMENT SYSTEMSPetr Afanasiev

Software engineer

Betsson Technologies

Page 2: Peter Afanasiev - Architecture of online Payments

RELEVANCE

Internet business is developing More & more products are being sold online More & more services are build on top of

payments

Page 3: Peter Afanasiev - Architecture of online Payments

PLAN

Problems & Solutions

Tracing in Service Oriented World Dynamic configuration editor with Asp.Net MVC

General architecture of Betsson Payments

Merchant Payment Systems

Payment Service Providers

Page 4: Peter Afanasiev - Architecture of online Payments

Payment Systems

Page 5: Peter Afanasiev - Architecture of online Payments

PAYMENT SERVICE PROVIDERS

Page 6: Peter Afanasiev - Architecture of online Payments

PAYMENT SERVICE PROVIDERS

Actual bank

Processing

Multiple Banks

Multiple Countries

Page 7: Peter Afanasiev - Architecture of online Payments

PSP

Credit Card

eWallet Bank Transfer

Vouchers

The fastest Most used Most

secure*

Supports only some banks

Difficult withdrawals

Security standards

No limits! The

slowest Requires

manual work

May seem more trustworthy

High integration cost

Low popularity

Lot’s of fun for marketing

Local market

No withdrawals

Page 8: Peter Afanasiev - Architecture of online Payments

PAYMENT SYSTEMConsolidate PSPs into 1

module

Different payment options by country

Fraud Protection

Monitoring & Reporting

Custom business flows

High Acceptance

Rate

Page 9: Peter Afanasiev - Architecture of online Payments

ACCEPTANCE RATE

Bin serie

PSP1

432156 432157 432158 432159 … 432299

PSP2

473485 473486 473487 473488 … 473799

Payment Systems know which PSP to use with which Credit Card

Page 10: Peter Afanasiev - Architecture of online Payments

PROVIDER CHAINS

PSP1

PSP2

PSP3

PSP2

PSP3

PSP5

4321 5678 9012 1234

Chain1 Chain2

If one provider failed to process a card – it’s passed to the next provider in chain

It get’s even better ;)

Page 11: Peter Afanasiev - Architecture of online Payments

DEVELOPER OVERVIEW OF BETSSON PAYMENTS ARCHITECTURE

Scalability Provider

encapsulation Provider

Configuration Tracing

Page 12: Peter Afanasiev - Architecture of online Payments
Page 13: Peter Afanasiev - Architecture of online Payments

SIMPLIFIED FLOW

Page 14: Peter Afanasiev - Architecture of online Payments

DYNAMIC CONFIGURATION EDITOR WITH ASP.NET MVC

The Problem: Hard to maintain config file 8000 lines of config code Each adapter defines it’s own config section Continuous problems with merging,

synchronization, human error

Page 15: Peter Afanasiev - Architecture of online Payments

DYNAMIC CONFIGURATION EDITOR WITH ASP.NET MVC

Easily editable Validated (schema and content) Saved to database Passed over network

Page 16: Peter Afanasiev - Architecture of online Payments

DYNAMIC CONFIGURATION EDITOR WITH ASP.NET MVC

Page 17: Peter Afanasiev - Architecture of online Payments

DYNAMIC CONFIGURATION EDITOR WITH ASP.NET MVC

Page 18: Peter Afanasiev - Architecture of online Payments

DYNAMIC CONFIGURATION EDITOR WITH ASP.NET MVC

Page 19: Peter Afanasiev - Architecture of online Payments

TRACING IN SERVICE ORIENTED ARCHITECTURE

Page 20: Peter Afanasiev - Architecture of online Payments

TRACING IN SERVICE ORIENTED ARCHITECTURE

How to trace payment request flow across service domain?

PaymentID ? SessionID ?

ActivityID!

Page 21: Peter Afanasiev - Architecture of online Payments

TRACING IN SERVICE ORIENTED ARCHITECTURE

Page 22: Peter Afanasiev - Architecture of online Payments

TRACING IN SERVICE ORIENTED ARCHITECTURE

Page 23: Peter Afanasiev - Architecture of online Payments

TRACING IN SERVICE ORIENTED ARCHITECTURE

Page 24: Peter Afanasiev - Architecture of online Payments
Page 25: Peter Afanasiev - Architecture of online Payments

PETYA [email protected] TECHNOLOGIESCIKLUM