Creating a Subscription Service with PayPal (Part 2 of 2): The Billing Agreement

By

This is part 2 of creating a subscription service. This second step to creating a subscription for a user is to create and execute a billing agreement, based on an existing activated billing plan. This tutorial assumes that you have already gone through and activated a Billing Plan in part 1, and have an ID for that billing plan to reference in the example. If you want to jump ahead and just get a complete example for parts 1 & 2, you can get it from the PayPal Developer Github repository. When you are setting up a billing agreement to… Read more

Creating a Subscription Service with PayPal (Part 1 of 2): The Billing Plan

By

This is the first of a two part tutorial on creating a subscription model. Over the next two posts, we will cover everything you’ll need to get started with subscriptions using the PayPal REST APIs: Creating billing plans to build a multi-use model for your subscription payments: Subscribing users to those billing plans via a billing agreement. If you want to jump ahead and just get a complete example for parts 1 & 2, you can get it from the PayPal Developer Github repository. When creating a subscription for a user, you first need to create and activate a billing… Read more

Processing a Credit Card Payment with a Vaulted Card

By

In this tutorial, we’ll be looking at a Node example to show how to store a credit card using the PayPal vault, then reference that stored credit card to process a credit card transaction for a user. The reason why we would want to use the vault is so that we don’t have to store sensitive credit card information on our own servers. We simply reference the payment method via a provided vault ID, meaning that we don’t have to deal with many PCI compliance regulations with storing the credit cards ourselves. For the full example code used in the… Read more

Dates Revised for Security-Related Changes

By

We’ve revised some of the dates originally published in the Security-Related Changes Required to Avoid Service Disruption post from earlier this year. The dates have been revised in order to give merchants additional time to plan for any necessary changes and to give developers additional time to update their integrations. The dates in the original post reflect the current deadlines. In summary, here are the date revisions: The TLS1.2 Upgrade date moves to June 2017. The HTTPS for IPN Postback date moves to June 2017. The SHA-256 Upgrade dates: Merchants must be compliant by September 30, 2016 as we will… Read more

squbs: packaging and deployment instructions to run on AWS nodes

By

Overview This page describes a quick way to package, deploy, and start a squbs application. This guide uses Amazon EC2 as an example, showing how to run a squbs application in a few minutes. You can leverage either the scala activator template or the java activator template to begin development. Packaging You need to install the following on your build instance git java 8 sbt Steps to build: Clone the source code from the git repo to the <project> directory cd <project> Run the sbt build command, including “packArchive”, such as: sbt clean update test packArchive There are two archives created under… Read more

Security-Related Changes Required to Avoid Service Disruption

By

REVISED May 12, 2016 – Please note that some of the deadlines have changed since this post was originally published. This post reflects the latest deadline dates for security updates. Beginning in early 2016, PayPal will introduce a number of security-related product updates. These updates are part of an industry-wide initiative to improve security standards. Some of these updates, like the TLS upgrade, are mandated by the PCI Security Council and are required by every website that transmits or processes cardholder data. Merchants and developers may have to update their integrations in order to be in compliance and ensure that… Read more

squbs: A New, Reactive Way for PayPal to Build Applications

By

Preface It is not uncommon for services in PayPal to cover 1000 VMs or more. These services make use of very small VMs and produce very low throughput for each VM. At the same time, the large number of nodes takes a toll on the network and routing infrastructure. Several of these services are interconnected into a complicated mesh, making a user request travel through many network hops. As the number of these services adds up, latency gradually increases and the user experience deteriorates. While it is good for a service to have a critical mass of VMs spread across many data… Read more

Statistics for Software

By

Software development begins as a quest for capability, doing what could not be done before. Once that what is achieved, the engineer is left with the how. In enterprise software, the most frequently asked questions are, “How fast?” and more importantly, “How reliable?” Questions about software performance cannot be answered, or even appropriately articulated, without statistics. Yet most developers can’t tell you much about statistics. Much like math, statistics simply don’t come up for typical projects. Between coding the new and maintaining the old, who has the time? Engineers must make the time. I understand fifteen minutes can seem like… Read more

Sandbox Account Linking

By

With Sandbox Account Linking, you can now link your existing “unlinked” Sandbox accounts with your Live PayPal Developer accounts. Prior to releasing this new feature, the only way to test in the Sandbox using a linked account was to first create the account using the developer Sandbox Accounts feature in the PayPal Developer portal. Use Cases Account Created Using PayPal Sandbox Site – The user first creates a Sandbox account when testing via www.sandbox.paypal.com and then wants to link the Sandbox account with a Live PayPal Developer account, so that it shows up on Sandbox Accounts page. Account Created Using… Read more

TLS 1.2 Upgrade Technical White Paper

By

REVISED May 12, 2016 – Please note that the deadline for the TLS update has been moved out to June 2017 As a leader in Financial Technology, PayPal’s mission is to provide simple, affordable, secure and reliable financial services and digital payments. To accomplish this mission, we constantly evaluate our security posture – which includes complying with industry standards, laws and regulations – to create an environment our merchants and consumers can trust. Beginning June 2017, PayPal will begin the process of discontinuing support for TLS 1.0 and 1.1, meaning that all communications with PayPal API (including SDK) must use… Read more