| Red Hat Documentation |
CCVS Programmer's GuideVersion 3.3Revised February 15, 2025
Red Hat, Inc. Back to main Documentation page
Table of Contents
OverviewCCVS has a concept of a transaction. Whenever you want to do anything with CCVS, you create a transaction that describes the details of the operation you wish to perform, and then you tell the system what to do with that transaction.Creating a transactionCreating the transaction is done in several steps. First, you create a new, "empty" transaction, and give it a name (which we generally refer to as an "invoice number" or just "invoice"). Then you add various details, one at a time, to that transaction.For example, let's say someone wants to use their credit card to make a purchase. First, make a new transaction, named for example "ABCD0001". Then, one at a time, add the credit card number, expiration date and dollar amount to that transaction. That's all that's required, but you can add other things to the transaction, such as the cardholder's billing address (which will be matched against the credit card company's database, to prevent fraud). Once the transaction is ready, you tell the system what to do with it. If you want to let somebody pay for something with a credit card, the first thing you need to do is check for authorization, or issue an "auth" with the named transaction. This makes sure the funds are available, and puts them on hold. It does not move money. Issuing an authorizationWhen you issue an authorization request, you communicate with whoever provides your credit card service. CCVS is designed to allow many transactions to go over the same communications session with your provider. For this reason, you need to be able to issue a group of authorizations one after the other. You should not wait for the response to one before sending the next.Therefore, when you issue an authorization, you don't immediately get a response. The ccvsd daemon, which runs in the background, will handle the transaction and set its status when a result arrives. In order to see if the authorization is approved, you need to check the status of the transaction; if the status is "unauth" (meaning "no response yet"), you must check again later. You can check the status of the transaction at any time. Issuing a saleTo actually move money, you would then issue a "sale", and give it the name of the same transaction you previously did an "auth" on. This marks the transaction as ready for settlement at the end of the day. The end-of-day settlement transactions are handled by the cvupload program. (Speak to whoever installed CCVS at your site if you wish to know when this will be run.) When settlement does happen, it will be reflected in the transaction's status.MiscellaneousOther things you can do with a transaction include reversing a previous authorization, giving credit back to a cardholder with a return, or performing administrative tasks like deleting old transactions. There are a few things you can do with CCVS that don't involve a particular transaction. For example, you can count how many transactions are in each state (for example, "there are 5 transactions waiting to be processed, 2 have been denied, 1 is waiting for a human to review it, and 17 have been authorized").
Revised February 15, 2025
Red Hat, Inc. Back to main Documentation page <.php3> |
|
© 2001 Red Hat, Inc. All rights reserved. About Red Hat : Legal statement : Privacy statement : Y2K statement : Contact Red Hat |