Using First Data Payments for PCF

This topic describes how Pivotal Cloud Foundry (PCF) developers can use First Data Payments for their apps.

Create and Bind a Service Instance

With the First Data Payments tile installed in Ops Manager, application developers assigned the Space Developer role can create instances of the service in their spaces and bind these instances to their apps. Here is how:

  1. From the Apps Manager console, click Marketplace.

  2. Find and click the First Data Payments service listing.

  3. Select one of the available service plans:

    • Default (Anonymous) Plan
    • Existing Developer Plan
    • New Developer Plan
  4. Specify a name for the service instance you are creating, and enter the additional required parameters, as determined by the service plan type. The New Developer Plan prompts for your name and email to create a new First Data Developer account.

  5. Bind the service instance to an application using Apps Manager or the cf CLI.

Call the First Data API

To make it easy for apps to consume the First Data API, First Data provides the First Data Client, in multiple versions for different languages. The First Data Client runs as a library within an app.

The First Data Client automatically logs the bound app into the First Data service using login credentials that it parses from the VCAP_SERVICES environment variable, which is set in the First Data Payments tile. An app can use this VCAP_SERVICES variable to retrieve credentials explicitly. Developers can also view the credentials for an app in Apps Manager, under the Services tab, by clicking Show credentials:

Show credentials for app in Apps Manager

Download the First Data Client from Maven with the following code:

<!-- https://mvnrepository.com/artifact/com.firstdata.payeezy/payeezy-client-spring -->
<dependency>
    <groupId>com.firstdata.payeezy</groupId>
    <artifactId>payeezy-client-spring</artifactId>
    <version>1.0</version>
</dependency>

See developer.payeezy.com to learn how to use the First Data API and see code examples.

Was this helpful?
What can we do to improve?
Create a pull request or raise an issue on the source for this page in GitHub