SlideShare a Scribd company logo
WebCamp 2014 - Peter Trobec - @ptrobec
INTEGRATION OF ONLINE PAYMENTS
Peter Trobec
ptrobec@gmail.com
@ptrobec
WebCamp 2014 - Peter Trobec - @ptrobec
What will we cover?
● Overview of online payments
● Project management
● Documentation
● Development
– Sample code & test environment
– Statuses
– Logging
– Bugs
WebCamp 2014 - Peter Trobec - @ptrobec
Overview of Online Payments
● Different providers
– Global
● PayPal
● Google Wallet
● Amazon Payments
– Local
● MegaPOS
● PikPay
● Cetelem
● Liisi
WebCamp 2014 - Peter Trobec - @ptrobec
Overview of Online Payments
● Have different payment methods
– Purchase – digital goods
– Authorization – physical goods
WebCamp 2014 - Peter Trobec - @ptrobec
Purchase
● Money can be transferred immediately
● No stock needed
WebCamp 2014 - Peter Trobec - @ptrobec
Authorization
● Money only authorized – not transferred
● Products must be on stock
● Products have to be ready for delivery
● Authorization can expire
● Money is transferred only after capture is initiated
WebCamp 2014 - Peter Trobec - @ptrobec
Overview of Online Payments
Always make sure the financial department signed the contracts!
WebCamp 2014 - Peter Trobec - @ptrobec
PROJECT MANAGEMENT
WebCamp 2014 - Peter Trobec - @ptrobec
Rules
1.Always assign a responsible person
2.Communicate with all departments involved
3.Educate everyone involved in the process
4.On each change, update all the parties involved
5.If anything goes wrong, you will have to know the
answer, why it went wrong and how to fix it
WebCamp 2014 - Peter Trobec - @ptrobec
Instructions
● Prepare instructions for all departments
● Each department should get custom instructions
● Educate everyone on how the integration works
● Explain the differences between normal and online
payments
WebCamp 2014 - Peter Trobec - @ptrobec
Reports
● Most departments will need some kind of report
● Finance department will need the most accurate
report
● Not all online payments providers offer concise
reports so be sure to agree on this beforehand
WebCamp 2014 - Peter Trobec - @ptrobec
DOCUMENTATION
WebCamp 2014 - Peter Trobec - @ptrobec
Documentation
What you expect you'll get
WebCamp 2014 - Peter Trobec - @ptrobec
Documentation
What you'll get...
WebCamp 2014 - Peter Trobec - @ptrobec
Documentation can be...
● Outdated
● In a foreign language
● Lacking the most needed info
● Just an API reference
WebCamp 2014 - Peter Trobec - @ptrobec
Always
REQUEST THE LATEST DOCUMENTATION!!!
WebCamp 2014 - Peter Trobec - @ptrobec
DEVELOPMENT
WebCamp 2014 - Peter Trobec - @ptrobec
Sample code
● Not for your platform
● Not in a form of a plugin
● Just an example
● Always needs a complete rewrite
● Unsecure
WebCamp 2014 - Peter Trobec - @ptrobec
Test environment
● Not in English
● Not working
● Want to make a complete test transaction?
● Nope.
● But why?
● Not working.
WebCamp 2014 - Peter Trobec - @ptrobec
Test environment example
● Hungarian leasing provider
– Needed info:
● Tax identification number
● Personal document number (ID number)
● Valid land line/mobile number
WebCamp 2014 - Peter Trobec - @ptrobec
Test environment example
PROVIDED INFO:
NONE
WebCamp 2014 - Peter Trobec - @ptrobec
Test environment example
● What needed to be tested:
– Whole payment process with:
● Successful leasing outcome
● Unsuccessful leasing outcome
● Pending leasing outcome
● Timeout
● What could be tested:
– Nothing
WebCamp 2014 - Peter Trobec - @ptrobec
What will you need for testing
● Credit card nubers and info
● Sensitive personal data
– ID number
– Passport number
– Salary
– employer
WebCamp 2014 - Peter Trobec - @ptrobec
Statuses
● Hard to „track“ the meaning
● Not in English
● 10 integrations, 100 statuses
WebCamp 2014 - Peter Trobec - @ptrobec
Status examples
● With same meaning:
– APPROVED
– ACCEPTED
– GREEN
– 100
– INVOICE=123456:STATUS=PAID:PAY_TIME=YYYYMMDDhhmmss:STAN=[6
digits]:BCODE=[6 digits/letters]
– SATISFIED
– INITIALIZED
– 4
– 0000
WebCamp 2014 - Peter Trobec - @ptrobec
Payment statuses comparison
● Same provider with 2 systems:
– System 1:
● 1, 2, 3, 4, 5, 7, 99, 888
– System 2:
● VARIATION 1:
– PAYMENT_AUTHORIZED, PAYMENT_RECEIVED, TEST, COMPLETE, REVERSED,
REFUND
● VARIATION 2:
– SAME AS 1, BUT WITH ADDED STATUS: CASH
● VARIATION 3:
– NOT_FOUND, WAITING_PAYMENT, CARD_NOTAUTHORIZED, IN_PROGRESS,
PAYMENT_AUTHORIZED, COMPLETE, FRAUD, INVALID, TEST
WebCamp 2014 - Peter Trobec - @ptrobec
Logging
● Log everything
● Follow the bank way – make only inserts
● Always operate with the latest status
WebCamp 2014 - Peter Trobec - @ptrobec
Bugs
● It's your fault, not the bank's
● Have you logged everything?
● Bugs with payments are always critical
WebCamp 2014 - Peter Trobec - @ptrobec
The end
● Countless little fixes on:
– Front-end
– Legal text
– Various calculators
WebCamp 2014 - Peter Trobec - @ptrobec
The end
Endless stream of e-mails
WebCamp 2014 - Peter Trobec - @ptrobec
Q & A

More Related Content

Similar to Integration of online payments - common pitfalls and how to avoid them

Integrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree paymentsIntegrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree payments
Wieteke den Uijl
 
Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle
mgarg82
 
Forselius - New look at project management triangle
Forselius - New look at project management triangleForselius - New look at project management triangle
Forselius - New look at project management triangle
International Software Benchmarking Standards Group (ISBSG)
 
Walmart pagespeed-slide
Walmart pagespeed-slideWalmart pagespeed-slide
Walmart pagespeed-slide
Bitsytask
 
Walmart Web Performance Circa 2013
Walmart Web Performance Circa 2013Walmart Web Performance Circa 2013
Walmart Web Performance Circa 2013
Cliff Crocker
 
Profitable Website Projects - The Oreo Cookie Strategy
Profitable Website Projects - The Oreo Cookie StrategyProfitable Website Projects - The Oreo Cookie Strategy
Profitable Website Projects - The Oreo Cookie Strategy
Red8 Interactive
 
Maximizing the Impact of Analytic Insight Delivery
Maximizing the Impact of Analytic Insight Delivery   Maximizing the Impact of Analytic Insight Delivery
Maximizing the Impact of Analytic Insight Delivery
Mikan Associates
 
Neotys PAC - Bruno Audoux
Neotys PAC - Bruno AudouxNeotys PAC - Bruno Audoux
Neotys PAC - Bruno Audoux
Neotys_Partner
 
Abila MIP Accounts Receivable (AR) - The How-To’s of Reporting and Billing
Abila MIP  Accounts Receivable (AR) - The How-To’s of Reporting and BillingAbila MIP  Accounts Receivable (AR) - The How-To’s of Reporting and Billing
Abila MIP Accounts Receivable (AR) - The How-To’s of Reporting and Billing
Net at Work
 
ERP Integrations with Magento: How to do it fast, well and affordable
ERP Integrations with Magento: How to do it fast, well and affordableERP Integrations with Magento: How to do it fast, well and affordable
ERP Integrations with Magento: How to do it fast, well and affordable
Alex Ursa
 
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of HistoryFuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Sparkrock
 
Intro ppt
Intro pptIntro ppt
Intro ppt
venkatbond
 
Frappe / ERPNext Open Day October 14
Frappe / ERPNext Open Day October 14Frappe / ERPNext Open Day October 14
Frappe / ERPNext Open Day October 14
rushabh_mehta
 
Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...
Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...
Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...
John Head
 
Finish Strong -- Successfully Rolling Out Your Killer QuickBase App
Finish Strong -- Successfully Rolling Out Your Killer QuickBase AppFinish Strong -- Successfully Rolling Out Your Killer QuickBase App
Finish Strong -- Successfully Rolling Out Your Killer QuickBase App
QuickBase, Inc.
 
Woocommerce in 30 minutes
Woocommerce in 30 minutesWoocommerce in 30 minutes
Woocommerce in 30 minutes
Matthew Nelson
 
2015 LOOP Verification - Member Briefing
2015 LOOP Verification - Member Briefing2015 LOOP Verification - Member Briefing
2015 LOOP Verification - Member Briefing
loop_wwf
 
Mistakes Outsourcing Customers Make by Kees Blokland
Mistakes Outsourcing Customers Make by Kees BloklandMistakes Outsourcing Customers Make by Kees Blokland
Mistakes Outsourcing Customers Make by Kees Blokland
Kees Blokland
 

Similar to Integration of online payments - common pitfalls and how to avoid them (20)

Integrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree paymentsIntegrating the Firelay platform with Braintree payments
Integrating the Firelay platform with Braintree payments
 
Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle Complete Oracle Procure to Pay Cycle
Complete Oracle Procure to Pay Cycle
 
Forselius - New look at project management triangle
Forselius - New look at project management triangleForselius - New look at project management triangle
Forselius - New look at project management triangle
 
Walmart pagespeed-slide
Walmart pagespeed-slideWalmart pagespeed-slide
Walmart pagespeed-slide
 
Walmart Web Performance Circa 2013
Walmart Web Performance Circa 2013Walmart Web Performance Circa 2013
Walmart Web Performance Circa 2013
 
Profitable Website Projects - The Oreo Cookie Strategy
Profitable Website Projects - The Oreo Cookie StrategyProfitable Website Projects - The Oreo Cookie Strategy
Profitable Website Projects - The Oreo Cookie Strategy
 
Maximizing the Impact of Analytic Insight Delivery
Maximizing the Impact of Analytic Insight Delivery   Maximizing the Impact of Analytic Insight Delivery
Maximizing the Impact of Analytic Insight Delivery
 
Eating the Elephant
Eating the ElephantEating the Elephant
Eating the Elephant
 
Neotys PAC - Bruno Audoux
Neotys PAC - Bruno AudouxNeotys PAC - Bruno Audoux
Neotys PAC - Bruno Audoux
 
Abila MIP Accounts Receivable (AR) - The How-To’s of Reporting and Billing
Abila MIP  Accounts Receivable (AR) - The How-To’s of Reporting and BillingAbila MIP  Accounts Receivable (AR) - The How-To’s of Reporting and Billing
Abila MIP Accounts Receivable (AR) - The How-To’s of Reporting and Billing
 
ERP Integrations with Magento: How to do it fast, well and affordable
ERP Integrations with Magento: How to do it fast, well and affordableERP Integrations with Magento: How to do it fast, well and affordable
ERP Integrations with Magento: How to do it fast, well and affordable
 
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of HistoryFuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
Fuel Good 2018: Upgrades Made Easy: The Canadian Museum of History
 
Intro ppt
Intro pptIntro ppt
Intro ppt
 
Experience
ExperienceExperience
Experience
 
Frappe / ERPNext Open Day October 14
Frappe / ERPNext Open Day October 14Frappe / ERPNext Open Day October 14
Frappe / ERPNext Open Day October 14
 
Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...
Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...
Intuit Quickbase Empower 2015 - Finish Strong: SUCCESSFULLLY ROLLING OUT YOUR...
 
Finish Strong -- Successfully Rolling Out Your Killer QuickBase App
Finish Strong -- Successfully Rolling Out Your Killer QuickBase AppFinish Strong -- Successfully Rolling Out Your Killer QuickBase App
Finish Strong -- Successfully Rolling Out Your Killer QuickBase App
 
Woocommerce in 30 minutes
Woocommerce in 30 minutesWoocommerce in 30 minutes
Woocommerce in 30 minutes
 
2015 LOOP Verification - Member Briefing
2015 LOOP Verification - Member Briefing2015 LOOP Verification - Member Briefing
2015 LOOP Verification - Member Briefing
 
Mistakes Outsourcing Customers Make by Kees Blokland
Mistakes Outsourcing Customers Make by Kees BloklandMistakes Outsourcing Customers Make by Kees Blokland
Mistakes Outsourcing Customers Make by Kees Blokland
 

Recently uploaded

Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
Google
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 

Recently uploaded (20)

Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 

Integration of online payments - common pitfalls and how to avoid them

  • 1. WebCamp 2014 - Peter Trobec - @ptrobec INTEGRATION OF ONLINE PAYMENTS Peter Trobec ptrobec@gmail.com @ptrobec
  • 2. WebCamp 2014 - Peter Trobec - @ptrobec What will we cover? ● Overview of online payments ● Project management ● Documentation ● Development – Sample code & test environment – Statuses – Logging – Bugs
  • 3. WebCamp 2014 - Peter Trobec - @ptrobec Overview of Online Payments ● Different providers – Global ● PayPal ● Google Wallet ● Amazon Payments – Local ● MegaPOS ● PikPay ● Cetelem ● Liisi
  • 4. WebCamp 2014 - Peter Trobec - @ptrobec Overview of Online Payments ● Have different payment methods – Purchase – digital goods – Authorization – physical goods
  • 5. WebCamp 2014 - Peter Trobec - @ptrobec Purchase ● Money can be transferred immediately ● No stock needed
  • 6. WebCamp 2014 - Peter Trobec - @ptrobec Authorization ● Money only authorized – not transferred ● Products must be on stock ● Products have to be ready for delivery ● Authorization can expire ● Money is transferred only after capture is initiated
  • 7. WebCamp 2014 - Peter Trobec - @ptrobec Overview of Online Payments Always make sure the financial department signed the contracts!
  • 8. WebCamp 2014 - Peter Trobec - @ptrobec PROJECT MANAGEMENT
  • 9. WebCamp 2014 - Peter Trobec - @ptrobec Rules 1.Always assign a responsible person 2.Communicate with all departments involved 3.Educate everyone involved in the process 4.On each change, update all the parties involved 5.If anything goes wrong, you will have to know the answer, why it went wrong and how to fix it
  • 10. WebCamp 2014 - Peter Trobec - @ptrobec Instructions ● Prepare instructions for all departments ● Each department should get custom instructions ● Educate everyone on how the integration works ● Explain the differences between normal and online payments
  • 11. WebCamp 2014 - Peter Trobec - @ptrobec Reports ● Most departments will need some kind of report ● Finance department will need the most accurate report ● Not all online payments providers offer concise reports so be sure to agree on this beforehand
  • 12. WebCamp 2014 - Peter Trobec - @ptrobec DOCUMENTATION
  • 13. WebCamp 2014 - Peter Trobec - @ptrobec Documentation What you expect you'll get
  • 14. WebCamp 2014 - Peter Trobec - @ptrobec Documentation What you'll get...
  • 15. WebCamp 2014 - Peter Trobec - @ptrobec Documentation can be... ● Outdated ● In a foreign language ● Lacking the most needed info ● Just an API reference
  • 16. WebCamp 2014 - Peter Trobec - @ptrobec Always REQUEST THE LATEST DOCUMENTATION!!!
  • 17. WebCamp 2014 - Peter Trobec - @ptrobec DEVELOPMENT
  • 18. WebCamp 2014 - Peter Trobec - @ptrobec Sample code ● Not for your platform ● Not in a form of a plugin ● Just an example ● Always needs a complete rewrite ● Unsecure
  • 19. WebCamp 2014 - Peter Trobec - @ptrobec Test environment ● Not in English ● Not working ● Want to make a complete test transaction? ● Nope. ● But why? ● Not working.
  • 20. WebCamp 2014 - Peter Trobec - @ptrobec Test environment example ● Hungarian leasing provider – Needed info: ● Tax identification number ● Personal document number (ID number) ● Valid land line/mobile number
  • 21. WebCamp 2014 - Peter Trobec - @ptrobec Test environment example PROVIDED INFO: NONE
  • 22. WebCamp 2014 - Peter Trobec - @ptrobec Test environment example ● What needed to be tested: – Whole payment process with: ● Successful leasing outcome ● Unsuccessful leasing outcome ● Pending leasing outcome ● Timeout ● What could be tested: – Nothing
  • 23. WebCamp 2014 - Peter Trobec - @ptrobec What will you need for testing ● Credit card nubers and info ● Sensitive personal data – ID number – Passport number – Salary – employer
  • 24. WebCamp 2014 - Peter Trobec - @ptrobec Statuses ● Hard to „track“ the meaning ● Not in English ● 10 integrations, 100 statuses
  • 25. WebCamp 2014 - Peter Trobec - @ptrobec Status examples ● With same meaning: – APPROVED – ACCEPTED – GREEN – 100 – INVOICE=123456:STATUS=PAID:PAY_TIME=YYYYMMDDhhmmss:STAN=[6 digits]:BCODE=[6 digits/letters] – SATISFIED – INITIALIZED – 4 – 0000
  • 26. WebCamp 2014 - Peter Trobec - @ptrobec Payment statuses comparison ● Same provider with 2 systems: – System 1: ● 1, 2, 3, 4, 5, 7, 99, 888 – System 2: ● VARIATION 1: – PAYMENT_AUTHORIZED, PAYMENT_RECEIVED, TEST, COMPLETE, REVERSED, REFUND ● VARIATION 2: – SAME AS 1, BUT WITH ADDED STATUS: CASH ● VARIATION 3: – NOT_FOUND, WAITING_PAYMENT, CARD_NOTAUTHORIZED, IN_PROGRESS, PAYMENT_AUTHORIZED, COMPLETE, FRAUD, INVALID, TEST
  • 27. WebCamp 2014 - Peter Trobec - @ptrobec Logging ● Log everything ● Follow the bank way – make only inserts ● Always operate with the latest status
  • 28. WebCamp 2014 - Peter Trobec - @ptrobec Bugs ● It's your fault, not the bank's ● Have you logged everything? ● Bugs with payments are always critical
  • 29. WebCamp 2014 - Peter Trobec - @ptrobec The end ● Countless little fixes on: – Front-end – Legal text – Various calculators
  • 30. WebCamp 2014 - Peter Trobec - @ptrobec The end Endless stream of e-mails
  • 31. WebCamp 2014 - Peter Trobec - @ptrobec Q & A