This document provides steps to integrate Paytm payments into a Swift iOS app. It includes importing the Paytm SDK via CocoaPods or direct download, generating a checksum order ID, initializing a transaction using the PGOrder and PGTransactionViewController classes, and implementing the PGTransactionDelegate protocol to handle payment responses and errors.
Authorization means the process that decides what a user is able to do. Let’s take an example of user Adam who’s able to create a document library, add documents, do the edit and delete them. But Bob might only be authorized to read the documents in a single library.
Hybrid apps combine the familiarity and depth of native facilities while at the same time allowing extensibility via embedded web views. Your Angular code needs to talk back and forth to your native code to exchange data. This talk goes through how to implement this communication on both Android and iOS. We will cover the basics of how to allow Java/Objective-C to talk to JavaScript running in a web view and also how to bring Angular into the mix.
This presentation provides overview of new asp.net web api, comparing with MVC, and go through features of web api such as Content Negotiation, Queryable, Html help page, and more.
Example of Invoking a Workflow Process from Script in the Object Manager
Example of Invoking a Workflow Process from Script to Pass Field Values to Process Properties
This is a full immersion in MongoDB, I talk about the MongoDB data model, when referencing and when embedding, how denormalize, how to use the aggregation framework of MongoDB
Authorization means the process that decides what a user is able to do. Let’s take an example of user Adam who’s able to create a document library, add documents, do the edit and delete them. But Bob might only be authorized to read the documents in a single library.
Hybrid apps combine the familiarity and depth of native facilities while at the same time allowing extensibility via embedded web views. Your Angular code needs to talk back and forth to your native code to exchange data. This talk goes through how to implement this communication on both Android and iOS. We will cover the basics of how to allow Java/Objective-C to talk to JavaScript running in a web view and also how to bring Angular into the mix.
This presentation provides overview of new asp.net web api, comparing with MVC, and go through features of web api such as Content Negotiation, Queryable, Html help page, and more.
Example of Invoking a Workflow Process from Script in the Object Manager
Example of Invoking a Workflow Process from Script to Pass Field Values to Process Properties
This is a full immersion in MongoDB, I talk about the MongoDB data model, when referencing and when embedding, how denormalize, how to use the aggregation framework of MongoDB
The presentation is devoted to the test framework GEB for testing WEB applications and Mobile. The report will be useful for those who want to know how fast to write tests in the programming language Groovy, and not think about framework, PageObject and initializing the WebDriver. Framework is difficult - no!
This presentation by Yaroslav Sviatkin (Senior Test Automation Engineer, Consultant, GlobalLogic, Kharkiv) was delivered at QA Fest 2017 (Kyiv) on September 22, 2017.
Serverless with azure functions the rebel serviceChristos Matskas
Azure Serverless introduction around Functions and LogicApps. It's all about creating microservices and event-driven solutions with the power of the cloud
The time of static or dynamically generated sites is long gone. Non-stop interaction with users is the new normal. However, polling with Ajax requests is processor intensive and cumbersome. Websockets allow you to interact with users in real-time without increasing system load. We'll go through the basics and see all the different options, illustrated with live examples of how and when to use it, as well as when not to use it.
進擊的 ASP.NET Web API 2 巨人 – 打造支援各種裝置及平台的服務
你/妳知道WebApi (REST)己經成為一個企業IT系統整合及網路服務成長最為快速的趨勢嗎? 你/妳知道現今在網路上最被Mobile device使所用的資料交換的格式是JSON (Javascript Object Notation)而不再是肥大擁腫的XML怪獸嗎?
全世界的網路大咖都拼命地開發WebApi的服務來吸引Mobile或Web application的開發者, 我們將在這堂課中結合AngularJs與ASP.NET Web API 2來讓大家開始感受WebApi的吸引力。
A Progressive Web Application has a lot of advantages compared to a traditional website. A PWA is user-friendly, increases customer loyalty and conversions. Curious how PWA looks like in real-life?. Curious how PWA looks like in real-life? Check out Dutch’s first PWA (Vue Storefront + Magento 2) webshop, a scoop in e-commerce land! Vendic presents Meubelplaats.nl
A webshop in need of renovation, with a back-end that didn’t meet the requirements and demands of Meubelplaats. They trusted Vendic to develop their new webshop as a PWA. And behold! A smarter, faster website with the look & feel of an app, but with a powerful Magento 2 engine.
The complete ASP.NET (IIS) Tutorial with code example in power point slide showSubhas Malik
SP.NET is a server-side Web application framework designed for Web development to produce dynamic Web pages. It was developed by Microsoft to allow programmers to build dynamic web sites, web applications and web services. It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write ASP.NET code using any supported .NET language. The ASP.NET SOAP extension framework allows ASP.NET components to process SOAP messages.
Automatizacion de Procesos en Modelos TabularesGaston Cruz
Muestra de opciones para automatizar refrescos en Modelos Tabulares a traves de Azure Data Factory, Azure Logic Apps, Azure Functions y refresco de base de datos, tablas y particiones en Azure Analysis Services.
The presentation is devoted to the test framework GEB for testing WEB applications and Mobile. The report will be useful for those who want to know how fast to write tests in the programming language Groovy, and not think about framework, PageObject and initializing the WebDriver. Framework is difficult - no!
This presentation by Yaroslav Sviatkin (Senior Test Automation Engineer, Consultant, GlobalLogic, Kharkiv) was delivered at QA Fest 2017 (Kyiv) on September 22, 2017.
Serverless with azure functions the rebel serviceChristos Matskas
Azure Serverless introduction around Functions and LogicApps. It's all about creating microservices and event-driven solutions with the power of the cloud
The time of static or dynamically generated sites is long gone. Non-stop interaction with users is the new normal. However, polling with Ajax requests is processor intensive and cumbersome. Websockets allow you to interact with users in real-time without increasing system load. We'll go through the basics and see all the different options, illustrated with live examples of how and when to use it, as well as when not to use it.
進擊的 ASP.NET Web API 2 巨人 – 打造支援各種裝置及平台的服務
你/妳知道WebApi (REST)己經成為一個企業IT系統整合及網路服務成長最為快速的趨勢嗎? 你/妳知道現今在網路上最被Mobile device使所用的資料交換的格式是JSON (Javascript Object Notation)而不再是肥大擁腫的XML怪獸嗎?
全世界的網路大咖都拼命地開發WebApi的服務來吸引Mobile或Web application的開發者, 我們將在這堂課中結合AngularJs與ASP.NET Web API 2來讓大家開始感受WebApi的吸引力。
A Progressive Web Application has a lot of advantages compared to a traditional website. A PWA is user-friendly, increases customer loyalty and conversions. Curious how PWA looks like in real-life?. Curious how PWA looks like in real-life? Check out Dutch’s first PWA (Vue Storefront + Magento 2) webshop, a scoop in e-commerce land! Vendic presents Meubelplaats.nl
A webshop in need of renovation, with a back-end that didn’t meet the requirements and demands of Meubelplaats. They trusted Vendic to develop their new webshop as a PWA. And behold! A smarter, faster website with the look & feel of an app, but with a powerful Magento 2 engine.
The complete ASP.NET (IIS) Tutorial with code example in power point slide showSubhas Malik
SP.NET is a server-side Web application framework designed for Web development to produce dynamic Web pages. It was developed by Microsoft to allow programmers to build dynamic web sites, web applications and web services. It was first released in January 2002 with version 1.0 of the .NET Framework, and is the successor to Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write ASP.NET code using any supported .NET language. The ASP.NET SOAP extension framework allows ASP.NET components to process SOAP messages.
Automatizacion de Procesos en Modelos TabularesGaston Cruz
Muestra de opciones para automatizar refrescos en Modelos Tabulares a traves de Azure Data Factory, Azure Logic Apps, Azure Functions y refresco de base de datos, tablas y particiones en Azure Analysis Services.
If you are planning on building a connect integration for any of the Atlassians cloud offerings, growth, performance, and stability should be your highest priorities. In addition, you have to think of keeping the cost down, delivering the product on time, and keeping both users and developers happy.
In this session, Nathan Burrell will talk about the architecture of Bitbucket Pipelines (Beta) which is a feature of Bitbucket Cloud that is integrated via connect, runs on AWS and heavily utilises docker. He will walk you through examples that show how one can implement a solid integration while staying aligned and meeting all previously mentioned priorities. You will learn about best practices, software architecture insights, and the technologies that are readily available to assist you in your endeavours.
Products covered:
Bitbucket
Infrastructure as Code: Manage your Architecture with GitDanilo Poccia
Containers make packaging and distribution of your application easy. With the AWS Cloud you have an on-demand, programmable infrastructure that you can manage using tools and practices from software development. You can create resources when you need and dispose of them when you don’t. Using Amazon CloudFormation you can describe your architecture in text files. To change your infrastructure, you edit those files. Having application and infrastructure code in a single, robust, versioned repository like Git gives a lot of advantages. Using AWS Elastic Beanstalk you can link your Git branches to different infrastructure environments (e.g. test, production) and automate deployments. You can create test environments on-demand, even for a short time. Instead of continuously update your resources, you can recreate them quickly from scratch, simplifying lifecycle management and making deployments immutable. Using Amazon EC2 Container Service (ECS) you can manage containers at scale. As a result, you have more time to focus on the unique features of your application.
mDT #5, 24. 11. 2016
Storing account information is a common challenge many app developers face, and is often tackled in tailored solutions. Isn’t there some strategy to store account credentials in a centralized place? What about multiple accounts, like Twitter? And when should or could I synchronize data? Android offers a powerful account manager. Let’s explore the possibilities and lay out an architecture for engineering an Android app based on accounts.
DEVNET-1120 Intercloud Fabric - AWS and Azure Account Setup and UtilizationCisco DevNet
Getting started with Intercloud Fabric requires an account on a cloud provider. The easiest place to get started is Amazon AWS or Microsoft Azure. Find out what account settings you'll need to started with Azure and AWS.
Databinding is a part of android-architecture components in an android jetpack. It is a support library and It is used to bind UI components in the layout to data resources in your app. In another word, we can say that Databinding allows you to write expressions that connect variables to the views in the layout.
The Mobile Vision API provides a framework for recognizing objects in photos and videos. The framework includes detectors, which locate and describe visual objects in images or video frames, and an event-driven API that tracks the position of those objects in video.
MobX is the new upcoming state management solution. This blog is all about how to create a simple React-Native app using MobX.
MobX is fast in speed than Redux, its easier to learn & requires less boilerplate code.
Here are some of its main concepts
Stores:
Stores create data sources. A store is basically an ES6 class. the state is automatically derived from a data source by MobX by using ES6 decorators.
1. The store can expose the observable field(s), to which an observer can react. 2. The store can additionally expose some derived observable fields too. Which are pure functions on observable fields? MobX calls them as computed fields. 3. The store can also change the values of observable fields via actions. Only in this way MobX can allow you to change state.
How to use geolocation in react native appsInnovationM
Geolocation will find your current location and Geocoding gives your address (like City Name, Street Name, etc) by Coordinates (Latitude and Longitude).
What is Geolocation?
The most famous and familiar location feature — Geolocation is the ability to track a device using GPS, cell phone towers, WiFi access points or a combination of these. Since devices area unit employed by people, geolocation uses positioning systems to trace associate degree individual’s whereabouts right down to latitude and great circle coordinates, or more practically, a physical address. Both mobile and desktop devices can use geolocation.
Geolocation is accustomed to confirm zone and actual positioning coordinates, like for chase life or shipment shipments.
As everyone knows, a lot of changes made after API level 26 for optimizing Android system’s performance, the battery uses and other system-level problems which I am writing below:
1- Changes in Service. 2- Changes in Broadcast Reciever. 3- Changes in Push Notification
Understanding of react fiber architectureInnovationM
React v16.0 was released with an update to react core algorithm. This new core architecture is named “Fiber”. Facebook has completely rewritten the internals of React from the ground-up while keeping the public API essentially unchanged, in simple terms it means only changing the engine of a running car. With this release, some new features are also added like Asynchronous Rendering, Portals, Error Boundaries, Fragments (i.e. return array of elements). Incremental rendering is the headline addition to React which adds the ability to split rendering work into chunks.
Automatic reference counting (arc) and memory management in swiftInnovationM
Memory management is a key factor when we developing apps. If a program is using a lot of memory it can affect badly on your device making apps run slowly or even cause crashes. So for that in swift, you can work with Automatic Reference Counting (ARC) to keep your apps memory usage minimal. This doesn’t mean you can forget about the memory in your app but it does take care of most things for you.
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...InnovationM
Nowadays, Firebase Crashlytics is a very important part of our projects to monitor crashes of our applications that may be an android or iOS application. For the time being it is an unbeatable tool to log your day to day crashes for each user of your application.
By default, every function has a property called prototype this property by default is empty and you can add properties and methods to it and when you create an object from this function. The object inherits its properties and methods.
With the introduction of React 16.8 in 2018, React team came up with a new concept of “Hooks”. In this blog we are going to tell the reason behind creating hooks and also how to use them in a React application.
Razorpay Payment Gateway Integration In iOS SwiftInnovationM
Razorpay is the fastest growing Payment Solution. Most of the developers prefer Razorpay as the Payment solution in India. It is robust and provides developer friendly API & SDK for Android, iOS etc.
Line Messaging API Integration with Spring-BootInnovationM
The Line Messaging API is to establish communication between Line ChatBot and your server. If you want to create a chatbot where line user can send message’s and your server will reply for those messages then Line Messaging API is the right choice for you.
ReactJS or more popularly known as React was developed in the year 2011 by Jordan Walke, a software engineer at Facebook. It was created to cater to the need of updating a particular section of the Facebook page without refreshing it.
Redux is a library which is used to maintain a state of the application at an application level, it reduces the complexity of managing different states of the components when the app is getting comparatively larger, it provides the privilege to maintain a state of different components efficiently.
Integration of Highcharts with React ( JavaScript library )InnovationM
Highcharts is a front-end javascript library which is made to design the charts on web pages. ReactJS is also a javascript library for UI design. Now If we need to create a chart in ReactJS, there is a good news that several libraries (like ReCharts, Victory, VX, React-JSX-Highcharts, React-VIS etc.) are available which can be used for this purpose.
Serialization & De-serialization in JavaInnovationM
When you create a class, you may create an object for that particular class and once we execute/terminate the program, the object is destroyed by itself (Garbage Collector thread).
Stream concept is introduced in java 1.8 and present in java.util.stream package.It is used to process the object from collection or any group of objects or data source.
How to Make Each Round of Testing Count?InnovationM
We are doing write thing, as we need to check and test all the buttons, textbox, text values, validations, etc. While doing all this we should not forget our audience. We maybe be thinking stuffs in technical way but other non-tech guy will also use this app or website. We have to make it friendlier for them too.
MVP is a design pattern for developers to write their code in more readable, maintainable and
scalable manner. In MVP, our code is divided into three parts named as Model, View, and Presenter rather than placing the whole code in one Activity.
Retrofit is REST API client for Java. It is developed by Square Inc. It uses OkHttp library for HTTP Request. It is a simple library that is used for network transaction.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Paytm integration in swift
1. Paytm Integration in Swift
This blog is about how to integrate Paytm with the iOS App.
Steps to integrate paytm via SDK
1. Import the library :
A library can be imported by two process :
a) Via pods
• Add pod 'Paytm-Payments' in the pod file.
• Run 'pod install' from terminal.
• Now open the xcworkspace
• Go to "Link Binary With Libraries" in the "Build Phases" in the project settings, and add
SystemConfiguration.framework
• Now Check if PaytmSDK.framework is added in both “Link Binary With Libraries” and
“Embedded Binaries”. If not, add by clicking on the plus icon
b) Via direct add library to the project
• Download SDK from the https://github.com/Paytm-
Payments/Paytm_iOS_App_Kit/tree/master/Swift
• Add Paytm.framework to the project
• Go to "Link Binary With Libraries" in the "Build Phases" in the project settings, and add
SystemConfiguration.framework
• Now Check if PaytmSDK.framework is added in both “Link Binary With Libraries” and
“Embedded Binaries”. If not, add by clicking on the plus icon
2. 2. Add PaytmSDK to ViewController
import PaymentSDK
3. Generate Checksum
Checksumhash is a unique id used by the paytm to ensured that the transaction has not been
tempered. Checksumhash has been generated from serverside.
4. Start the payment process
A transaction can be done via the following process
1. Firstly choose the paytm server based on the environment. For Staging Create an instance of
the PGServerEnvironment and set the serverType to eServerTypeStaging. For
Production Create an instance of the PGServerEnvironment and set the serverType to
3. eServerTypeProduction.
2. Now create the PGOrder instance with all the parameters.
3. Create the PGTransactionViewController instance by calling initTransactionForOrder
and pass the instance of PGOrder as a parameter.
private func setupPaytm() {
serv = serv.createStagingEnvironment()
let type :ServerType = .eServerTypeStaging
let order = PGOrder(orderID: "", customerID: "", amount: "", eMail: "",
mobile: "")
order.params = ["MID":"rxazcv89315285234363",
"ORDER_ID":"order1",
"CUST_ID": "121",
"CHANNEL_ID":"WAP",
"INDUSTRY_TYPE_ID":"Retail",
"WEBSITE": "APP_STAGING",
"TXN_AMOUNT": "1024",
"CHECKSUMHASH":"oCDBVF+hvVb68JvzbKI40TOtcxlNjMdixi9FnRSh80Ub7XfjvgNr9NrfrOCPLmt6
5UhStCkrDnlYkclz1qE0uBMOrmuKLGlybuErulbLYSQ=",
"CALLBACK_URL" :"https://securegw-
stage.paytm.in/theia/paytmCallback?ORDER_ID=order1"]
self.txnController = self.txnController.initTransaction(for: order) as?
PGTransactionViewController
self.txnController.title = "Paytm Payments"
self.txnController.setLoggingEnabled(true)
if(type != ServerType.eServerTypeNone) {
self.txnController.serverType = type;
} else {
return
}
self.txnController.merchant =
PGMerchantConfiguration.defaultConfiguration()
self.txnController.delegate = self
self.navigationController?.pushViewController(self.txnController
, animated: true)
}
5. Implement protocol 'PGTransactionDelegate'
Implement protocol 'PGTransactionDelegate' to the viewcontroller from where have to do payment
//MARK : Delegate Methods
extension ScheduleOnOderVC : PGTransactionDelegate {
//this function triggers when transaction gets finished
func didFinishedResponse(_ controller: PGTransactionViewController, response
responseString: String) {
let msg : String = responseString
var titlemsg : String = ""
if let data = responseString.data(using: String.Encoding.utf8) {
do {
if let jsonresponse = try JSONSerialization.jsonObject(with:
data, options: .mutableContainers) as? [String:Any] , jsonresponse.count > 0{
4. titlemsg = jsonresponse["STATUS"] as? String ?? ""
}
} catch {
print("Something went wrong")
}
}
let actionSheetController: UIAlertController = UIAlertController(title:
titlemsg , message: msg, preferredStyle: .alert)
let cancelAction : UIAlertAction = UIAlertAction(title: "OK", style:
.cancel) {
action -> Void in
controller.navigationController?.popViewController(animated: true)
}
actionSheetController.addAction(cancelAction)
self.present(actionSheetController, animated: true, completion: nil)
}
//this function triggers when transaction gets cancelled
func didCancelTrasaction(_ controller : PGTransactionViewController) {
controller.navigationController?.popViewController(animated: true)
}
//Called when a required parameter is missing.
func errorMisssingParameter(_ controller : PGTransactionViewController,
error : NSError?) {
controller.navigationController?.popViewController(animated: true)
}
}
6. Verify checksum
Checksumhash needs to be verified so that response have not been tampered. Verification is done on
the server side.