# CCVS API Functions [deprecated]

## Introduction

These functions interface the CCVS API, allowing you to work directly with CCVS from your PHP scripts. CCVS is » RedHat's solution to the "middle-man" in credit card processing. It lets you directly address the credit card clearing houses via your *nix box and a modem. Using the CCVS module for PHP, you can process credit cards directly through CCVS via your PHP Scripts. The following references will outline the process.

> Note: CCVS has been discontinued by Red Hat and there are no plans to issue further keys or support contracts. Those looking for a replacement can consider » MCVE by Main Street Softworks as a potential replacement. It is similar in design and has documented PHP support!
> This extension has been removed from PHP and is no longer available as of PHP 4.3.0. If you want to use credit card processing features you can use MCVE instead.

## Installation

To enable CCVS Support in PHP, first verify your CCVS installation directory. You will then need to configure PHP with the --with-ccvs option. If you use this option without specifying the path to your CCVS installation, PHP will attempt to look in the default CCVS Install location (/usr/local/ccvs). If CCVS is in a non-standard location, run configure with: --with-ccvs=[DIR], where DIR is the path to your CCVS installation. Please note that CCVS support requires that DIR/lib and DIR/include exist, and include cv_api.h under the include directory and libccvs.a under the lib directory.

Additionally, a ccvsd process will need to be running for the configurations you intend to use in your PHP scripts. You will also need to make sure the PHP Processes are running under the same user as your CCVS was installed as (e.g. if you installed CCVS as user 'ccvs', your PHP processes must run as 'ccvs' as well.)

## See Also

RedHat has discontinued support for CCVS; however, a slightly outdated manual is still available at » http://www.redhat.com/docs/manuals/ccvs/.

## Table of Contents

- ccvs_add — Add data to a transaction
- ccvs_auth — Perform credit authorization test on a transaction
- ccvs_command — Performs a command which is peculiar to a single protocol, and thus is not available in the general CCVS API
- ccvs_count — Find out how many transactions of a given type are stored in the system
- ccvs_delete — Delete a transaction
- ccvs_done — Terminate CCVS engine and do cleanup work
- ccvs_init — Initialize CCVS for use
- ccvs_lookup — Look up an item of a particular type in the database #
- ccvs_new — Create a new, blank transaction
- ccvs_report — Return the status of the background communication process
- ccvs_return — Transfer funds from the merchant to the credit card holder
- ccvs_reverse — Perform a full reversal on an already-processed authorization
- ccvs_sale — Transfer funds from the credit card holder to the merchant
- ccvs_status — Check the status of an invoice
- ccvs_textvalue — Get text return value for previous function call
- ccvs_void — Perform a full reversal on a completed transaction