C Languages API Documentation

From Cloud9 Payment Processing Gateway Documentation
Revision as of 19:33, 3 January 2018 by Zorrik (talk | contribs)

Jump to: navigation, search




Cloud9 Payment Gateway Documentation. This site can also be reached at http://docs.cloud9paymentgateway.com

Step One

Please, review the Developer Guide to determine the best integration approach, before diving into the API Documentation below.

Elements

The library has two basic elements:

Connection
Client can either connect directly to
a)Cloud9 Server Payment Web Controller (PWC) - this is a good option is local hardware payment terminals are not used
b)Local Payment Device Controller (PDC), which controls the payment terminal.
Payment Processing Transaction Session
an object that holds description of the transaction and it's result. There is one transaction per session

Connection Type

Template:ConnectionType

Basic Flow

  1. Initialize
  2. Connect
    repeat as many times as necessary
  3. Create New Transaction Session
  4. Set Transaction Parameters (uses simple Set String and Set Value commands)
  5. Send Transaction Request
  6. Get Transaction Response (uses simple Get String and Get Value commands)
  7. Close the Session
    go back to create a new transaction session, if more transactions needed
  8. Disconnect

Detailed Flow with C Examples

  1. Initialize the library
    PgcInit("PgcSample");
  2. Connect to the Payment Web Controller (PWC - direct Cloud9 Server connection) or local Payment Device Controller (PDC) Server
    1. Create Connection Handle
      int nConn = PgcNewConn(PGC_SVC_C9PG_PDC, "Name", "Token", PGC_TIMEO_TXN_UI, "PgcSample", ""); //USE PGC_SVC_C9PG_PWE_TEST for PWE
    2. Open the Connection, specified by Connection Handle
      int nErr = PgcConnect(nConn);
  3. Create New Transaction Session
    int nSess = PgcNewSess(nConn, 1);
  4. Set Session Parameters
    1. Set MID/TID/PWD
      PgcSetStr(nSess, 0, PGC_GWKEY_GMID, "1001396250"); // Gateway merchant ID
      PgcSetStr(nSess, 0, PGC_GWKEY_GTID, "GT1001396253"); // Gateway terminal ID
      PgcSetStr(nSess, 0, PGC_GWKEY_GMPW, "123"); // Gateway merchant password
    2. Set Transaction Type
      PgcSetStr(nSess, 0, PGC_GWKEY_TXNACT, PGC_GWVAL_TXNACT_AUTH); // Transaction action type -> authorization
    3. Set Transaction Medium (e.g. Credit Card)
      PgcSetStr(nSess, 0, PGC_GWKEY_MDM, PGC_GWVAL_MDM_CREDIT); // Payment medium -> credit card
    4. Set Transaction Parameters (e.g. Amount, Tax, Trace#)
      PgcSetAmt(nSess, 0, PGC_GWKEY_MAINAMT, 123); // Main amount -> $1.23
      PgcSetAmt(nSess, 0, PGC_GWKEY_INCTAXAMT, 8); // Included tax amount -> $0.08
      PgcSetStr(nSess, 0, PGC_GWKEY_SRCTRACENUM, "123456"); // Source trace number; will be returned for matching
  5. Send Transaction Request
    int nErr = PgcRequest(nSess);
  6. Get Transaction Response and Approval Code
    PgcGetStr(nSess, 0, PGC_GWKEY_STATUS, sStatus, 256); // Transaction status, indicating if it is successful
    ...
    PgcGetStr(nSess, 0, PGC_GWKEY_RSPCODE, sRspCode, 256); // Response code returned from the host
    ...
    PgcGetStr(nSess, 0, PGC_GWKEY_RSPTEXT, sRspText, 256); // Response text returned from the host
    ...
    PgcGetStr(nSess, 0, PGC_GWKEY_AUTHCODE, sAuthCode, 256); // Auth code
  7. Close the Transaction Session
    PgcFreeSess(nSess);
  8. Disconnect from Server
    PgcDisconnect(nConn); // Disconnecting from the controller; will be called automatically upon closing
    PgcFreeConn(nConn); // Closing connection to the controller; called once per connection
  9. Un-Initialize
    PgcUninit("PgcSample"); // Uninitializing library; called once per application upon exit

Online Documentation: Payment Gateway Client Library ver 17.08.14 documentation

Live Sample Companions

NOTE: It is highly recommended that you use the live PDC API Sample or WEB API Sample,
which have real time source code windows to help you understand the API.

Using API Documentation

  • There are two main files of interest:
PgcClient.h
contains functions
PgcKey.h
contains parameter definitions for the key pairs

You can use the File List and File Member functions like so, to get more detail on what is available.
You can also use Search to find a function


Doxygen1.jpg

Doxygen1a.jpg


This is how you can browse the parameter definitions


Doxygen3.jpg

Cloud9 Payment Gateway Documentation

Please, see Payment Gateway C-languages Documentation





From the makers of Cloud9 Payment Processing Gateway and Creditline Credit Card Processing Software