kksoftwareag/first-data-gateway

PHP SDK to be used with a First Data Gateway account. This SDK has been created and packaged to offer the easiest way to integrate your application into the First Data Gateway. This SDK gives you the ability to run transactions such as sales, preauthorizations, postauthorizations, credits, voids, an

1.8.1 2020-06-27 15:01 UTC

This package is auto-updated.

Last update: 2024-11-28 00:36:24 UTC


README

IPG API for payment processing.

IPG API Specification.

  • API version: 6.10.0

This PHP package is automatically generated by the OpenAPI Generator project:

  • API version: 1.6.0
  • Package version: 1.6.0
  • Build package: org.openapitools.codegen.languages.PhpClientCodegen

Requirements

PHP 5.5 and later

Installation & Usage

Composer

To install the bindings via Composer, add the following to composer.json:

{
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com//.git"
    }
  ],
  "require": {
    "/": "*@dev"
  }
}

Repo Organization

  • FirstData\FirstApi\Client\api: code auto-generated from api specification
  • FirstData\FirstApi\Client\simple: code manually created for simpler API

API Methods/Endpoints

All URIs are relative to https://cert.api.firstdata.com/gateway

Code Overview

MerchantCredentials

namespace FirstData\FirstApi\Client\Simple;

class MerchantCredentials {
  /**
   * @param string $apiSecret
   * @param string $apiKey
   */
  public function __construct($apiSecret, $apiKey);

  // ...
}

ClientContext

namespace FirstData\FirstApi\Client\Simple;

class ClientContext {
  /**
   * base path defaults to https://cert.api.firstdata.com/gateway
   *
   * @param MerchantCredentials $creds
   * @param string $apiBasePath    (optional)
   * @param string $defaultRegion  (optional)
   * @param string $defaultStoreId (optional)
   * @return ClientContext
   */
  public static function create(MerchantCredentials $creds, $apiBasePath = ClientContext::DEFAULT_BASE_PATH, $defaultRegion = null, $defaultStoreId = null);

  /**
   * @return ClientFactory
   */
  public function getFactory();

  /**
   * @param string $basePath
   */
  public function setApiBasePath($basePath);


  // ...
}

ClientFactory

namespace FirstData\FirstApi\Client\Simple;

class ClientFactory {
  /**
   * @return AuthenticationApi
   */
  public function getAuthenticationApi();

  /**
   * @return CardInfoLookupApi
   */
  public function getCardInfoLookupApi();

  /**
   * @return CardVerificationApi
   */
  public function getCardVerificationApi();

  /**
   * @return CurrencyConversionApi
   */
  public function getCurrencyConversionApi();

  /**
   * @return FraudDetectApi
   */
  public function getFraudDetectApi();

  /**
   * @return OrderApi
   */
  public function getOrderApi();

  /**
   * @return PaymentApi
   */
  public function getPaymentApi();

  /**
   * @return PaymentSchedulesApi
   */
  public function getPaymentSchedulesApi();

  /**
   * @return PaymentTokenApi
   */
  public function getPaymentTokenApi();

  /**
   * @return PaymentUrlApi
   */
  public function getPaymentUrlApi();


  // ...
}

AuthenticationApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\AccessTokenResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class AuthenticationApi {
  /**
   * @return AccessTokenResponse|ErrorResponse
   */
  public function authenticationAccessTokensPost();

  // ...
}

CardInfoLookupApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\CardInfoLookupRequest;
use FirstData\FirstApi\Client\Model\CardInfoLookupResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class CardInfoLookupApi {
  /**
   * @param CardInfoLookupRequest $payload
   * @param string $region (optional)
   * @return CardInfoLookupResponse|ErrorResponse
   */
  public function cardInfoLookup(CardInfoLookupRequest $payload, $region = null);

  // ...
}

CardVerificationApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\CardVerificationRequest;
use FirstData\FirstApi\Client\Model\TransactionResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class CardVerificationApi {
  /**
   * @param CardVerificationRequest $payload
   * @param string $region (optional)
   * @return TransactionResponse|ErrorResponse
   */
  public function verifyCard(CardVerificationRequest $payload, $region = null);

  // ...
}

CurrencyConversionApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\ExchangeRateRequest;
use FirstData\FirstApi\Client\Model\ExchangeRateResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class CurrencyConversionApi {
  /**
   * @param ExchangeRateRequest $payload
   * @param string $region (optional)
   * @return ExchangeRateResponse|ErrorResponse
   */
  public function getExchangeRate(ExchangeRateRequest $payload, $region = null);

  // ...
}

FraudDetectApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\ScoreOnlyRequest;
use FirstData\FirstApi\Client\Model\ScoreOnlyResponse;
use FirstData\FirstApi\Client\Model\ClientRegistration;
use FirstData\FirstApi\Client\Model\PaymentRegistration;
use FirstData\FirstApi\Client\Model\FraudRegistrationResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class FraudDetectApi {
  /**
   * @param ScoreOnlyRequest $payload
   * @param string $region (optional)
   * @return ScoreOnlyResponse|ErrorResponse
   */
  public function scoreOnly(ScoreOnlyRequest $payload, $region = null);

   /**
     * Operation Client Registration
     *
     * CLient Registration for fraud
     *
     * @param  ClientRegistration $payload payload (required)
     * @param  string $region The region where client wants to process the transaction (optional)
     *
     * @throws ApiException on non-2xx response
     * @throws InvalidArgumentException
     * @return FraudRegistrationResponse|ErrorResponse
     */

    public function fraudClientRegistrationPost(ClientRegistration $payload,$region = null);

     /**
     * Operation Payment Registration
     *
     * Payment Registration for fraud
     *
     * @param  PaymentRegistration $payload payload (required)
     * @param  string $region The region where client wants to process the transaction (optional)
     *
     * @throws ApiException on non-2xx response
     * @throws InvalidArgumentException
     * @return FraudRegistrationResponse|ErrorResponse
     */

    public function fraudPaymentRegistrationPost(PaymentRegistration $payload,$region = null);

  // ...
}

OrderApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\OrderResponse;
use FirstData\FirstApi\Client\Model\SecondaryTransaction;
use FirstData\FirstApi\Client\Model\TransactionResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class OrderApi {
  /**
   * @param string $orderId
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return OrderResponse|ErrorResponse
   */
  public function orderInquiry($orderId, $region = null, $storeId = null);

  /**
   * @param string $orderId
   * @param SecondaryTransaction $payload
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return TransactionResponse|ErrorResponse
   */
  public function submitSecondaryTransaction($orderId, SecondaryTransaction $payload, $region = null, $storeId = null);
}

PaymentApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\AuthenticationVerificationRequest;
use FirstData\FirstApi\Client\Model\PrimaryTransaction;
use FirstData\FirstApi\Client\Model\SecondaryTransaction;
use FirstData\FirstApi\Client\Model\TransactionResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class PaymentApi {
  /**
   * @param string $transactionId
   * @param AuthenticationResponseVerificationRequest $payload
   * @param string $region (optional)
   * @return TransactionResponse|ErrorResponse
   */
  public function finalizeSecureTransaction($transactionId, AuthenticationVerificationRequest $payload, $region = null);


  /**
   * @param PrimaryTransaction $payload
   * @param string $region (optional)
   * @return TransactionResponse|ErrorResponse
   */
  public function primaryPaymentTransaction(PrimaryTransaction $payload, $region = null);

  /**
   * @param string $transactionId
   * @param SecondaryTransaction $payload
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return TransactionResponse|ErrorResponse
   */
  public function secondaryPaymentTransaction($transactionId, SecondaryTransaction $payload, $region = null, $storeId = null);

  /**
   * @param string $transactionId
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return TransactionResponse|ErrorResponse
   */
  public function transactionInquiry($transactionId, $region = null, $storeId = null);


  // ...
}

PaymentSchedulesApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\PaymentSchedulesRequest;
use FirstData\FirstApi\Client\Model\PaymentSchedulesResponse;
use FirstData\FirstApi\Client\Model\RecurringPaymentDetailsResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class PaymentSchedulesApi {
  /**
   * @param string $orderId
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return PaymentSchedulesResponse|ErrorResponse
   */
  public function cancelPaymentSchedule($orderId, $region = null, $storeId = null);

  /**
   * @param PaymentSchedulesRequest $payload
   * @param string $region (optional)
   * @return PaymentSchedulesResponse|ErrorResponse
   */
  public function createPaymentSchedule(PaymentSchedulesRequest $payload, $region = null);

  /**
   * @param string $orderId
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return RecurringPaymentDetailsResponse|ErrorResponse
   */
  public function inquiryPaymentSchedule($orderId, $region = null, $storeId = null);

  /**
   * @param string $orderId
   * @param PaymentSchedulesRequest $payload
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return PaymentSchedulesResponse|ErrorResponse
   */
  public function updatePaymentSchedule($orderId, PaymentSchedulesRequest $payload, $region = null, $storeId = null);

  // ...
}

PaymentTokenApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\PaymentTokenizationRequest;
use FirstData\FirstApi\Client\Model\PaymentTokenizationResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class PaymentTokenApi {
  /**
   * @param PaymentTokenizationRequest $payload
   * @param string $authorization (optional)
   * @param string $region (optional)
   * @return PaymentTokenizationResponse|ErrorResponse
   */
  public function createPaymentToken(PaymentTokenizationRequest $payload, $authorization = null, $region = null);

  /**
   * @param string $tokenId
   * @param string $authorization (optional)
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return PaymentTokenizationResponse|ErrorResponse
   */
  public function deletePaymentToken($tokenId, $authorization = null, $region = null, $storeId = null);

   /**
   * @param string $tokenId
   * @param string $authorization (optional)
   * @param string $region (optional)
   * @param string $storeId (optional)
   * @return PaymentTokenizationResponse|ErrorResponse
   */
  public function getPaymentTokenDetails($tokenId, $authorization = null, $region = null, $storeId = null)

  // ...
}

PaymentUrlApi

namespace FirstData\FirstApi\Client\Simple;
use FirstData\FirstApi\Client\Model\PaymentUrlRequest;
use FirstData\FirstApi\Client\Model\PaymentUrlResponse;
use FirstData\FirstApi\Client\Model\PaymentUrlDetailResponse;
use FirstData\FirstApi\Client\Model\ErrorResponse;

class PaymentUrlApi {
  /**
   * @param PaymentUrlRequest $payload
   * @param string $region (optional)
   * @return PaymentUrlResponse|ErrorResponse
   */
  public function createPaymentUrl(PaymentUrlRequest $payload, $region = null);

  /**
     * Operation deletePaymentUrl
     *
     * Delete a payment URL.
     *
     * @param  transactionId
     * @param  orderId
     * @param  paymentUrlId
     * @param  transactionTime
     * @param  storeId
     * @param  string $region The region where client wants to process the transaction (optional)
     *
     * @throws ApiException on non-2xx response
     * @throws InvalidArgumentException
     * @return PaymentUrlResponse|ErrorResponse
     */

    public function deletePaymentUrl($region = null,$storeId = null,$transactionId = null,$orderId = null,$paymentUrlId = null,$transactionTime = null);

    /**
     * Operation paymentUrlDetailResponse
     *
     * get detials of a payment URL.
     *
     * @param  fromDate(required)
     * @param  orderId
     * @param  toDate(required)
     * @param  merchantTransactionId
     * @param  status
     * @param  storeId
     * @param  string $region The region where client wants to process the transaction (optional)
     *
     * @throws ApiException on non-2xx response
     * @throws InvalidArgumentException
     * @return PaymentUrlResponse|ErrorResponse
     */

    public function paymentUrlDetail($region = null,$storeId = null,$fromDate,$toDate,$orderId = null,$merchantTransactionId = null,$status = null);

  // ...
}