List of all members | Public Member Functions | Protected Member Functions
AuthorizeDotNetProcessor Class Reference

The implementation of Authorize.Net-specific credit card handling. More...

#include <authorizedotnetprocessor.h>

Public Member Functions

 AuthorizeDotNetProcessor ()
 
- Public Member Functions inherited from CreditCardProcessor
virtual ~CreditCardProcessor ()
 
virtual int authorize (const int pccardid, const QString &pcvv, const double pamount, double ptax, bool ptaxexempt, double pfreight, double pduty, const int pcurrid, QString &pneworder, QString &preforder, int &pccpayid, QString preftype, int &prefid)
 Processes pre-authorization transactions. More...
 
virtual int charge (const int pccardid, const QString &pcvv, const double pamount, const double ptax, const bool ptaxexempt, const double pfreight, const double pduty, const int pcurrid, QString &pneworder, QString &preforder, int &pccpayid, QString preftype, int &prefid)
 Processes charge transactions. More...
 
virtual int chargePreauthorized (const QString &pcvv, const double pamount, const int pcurrid, QString &pneworder, QString &preforder, int &pccpayid)
 Processes 'capture' transactions, or charges against a prior preauthorization. More...
 
virtual int credit (const int pccardid, const QString &pcvv, const double pamount, const double ptax, const bool ptaxexempt, const double pfreight, const double pduty, const int pcurrid, QString &pneworder, QString &preforder, int &pccpayid, QString preftype, int &prefid)
 Processes credit transactions. More...
 
virtual Q_INVOKABLE int defaultPort (bool=false)
 Return the default port expected by the subclass. More...
 
virtual Q_INVOKABLE QString defaultServer ()
 Return the default server expected by the subclass. More...
 
virtual Q_INVOKABLE bool handlesChecks ()
 Returns whether the subclass handles checks. More...
 
virtual Q_INVOKABLE bool isLive ()
 Returns whether credit card processing is configured in live mode. More...
 
virtual Q_INVOKABLE bool isTest ()
 Returns whether credit card processing is configured in test mode. More...
 
virtual Q_INVOKABLE void reset ()
 Reset error handling internal settings so previous transactions don't interfere with new transactions. More...
 
virtual int reversePreauthorized (const double pamount, const int pcurrid, QString &pneworder, QString &preforder, int &pccpayid, QString preftype, int prefid)
 Reverse a preauthorization. More...
 
virtual Q_INVOKABLE int testConfiguration ()
 Test whether common credit card processing configuration options are consistent. More...
 
virtual int voidPrevious (int &)
 Processes void transactions. More...
 

Protected Member Functions

virtual int buildCommon (const int pccardid, const QString &pcvv, const double pamount, const int pcurrid, QString &prequest, QString pordertype)
 
virtual int buildFollowup (const int pccpayid, const QString &ptransid, double &pamount, int &pcurrid, QString &prequest, QString pordertype)
 
virtual int doAuthorize (const int, const QString &pcvv, double &, const double, const bool, const double, const double, const int, QString &, QString &, int &, ParameterList &)
 Placeholder for subclasses to override. More...
 
virtual int doCharge (const int, const QString &pcvv, const double, const double, const bool, const double, const double, const int, QString &, QString &, int &, ParameterList &)
 Placeholder for subclasses to override. More...
 
virtual int doChargePreauthorized (const int, const QString &pcvv, const double, const int, QString &, QString &, int &, ParameterList &)
 Placeholder for subclasses to override. More...
 
virtual int doCredit (const int, const QString &pcvv, const double, const double, const bool, const double, const double, const int, QString &, QString &, int &, ParameterList &)
 Placeholder for subclasses to override. More...
 
virtual int doTestConfiguration ()
 Placeholder for subclasses to override. More...
 
virtual int doVoidPrevious (const int, const QString &pcvv, const double, const int, QString &, QString &, QString &, int &, ParameterList &)
 Placeholder for subclasses to override. More...
 
virtual int handleResponse (const QString &, const int, const QString &, const double, const int, QString &, QString &, int &, ParameterList &)
 
virtual bool handlesCreditCards ()
 Returns whether the subclass handles credit cards. More...
 
- Protected Member Functions inherited from CreditCardProcessor
 CreditCardProcessor ()
 Construct and initialize a default CreditCardProcessor. More...
 
virtual FraudCheckResultavsCodeLookup (QChar pcode)
 
virtual QString buildURL (const QString, const QString, const bool)
 Construct a valid URL from the information in the configuration. More...
 
virtual int checkCreditCard (const int pccid, const QString &pcvv, QString &pccard_x)
 Check if the given credit card is consistent and active. More...
 
virtual int checkCreditCardProcessor ()
 
virtual FraudCheckResultcvvCodeLookup (QChar pcode)
 
virtual int doReversePreauthorized (const double pamount, const int pcurrid, QString &pneworder, QString &preforder, int pccpayid, ParameterList &pparams)
 Placeholder for subclasses to override. More...
 
virtual int fraudChecks ()
 Handle fraud checking as determined by the system configuration. More...
 
virtual int sendViaHTTP (const QString &, QString &)
 Send an HTTP request to the configured credit card service and wait for its response. More...
 
virtual int updateCCPay (int &, ParameterList &)
 Insert into or update the ccpay table based on parameters extracted from the credit card processing service' response to a transaction request. More...
 

Additional Inherited Members

- Public Types inherited from CreditCardProcessor
enum  CCTransaction {
  Authorize, Reverse, Capture, Charge,
  Credit, Void
}
 
enum  FraudCheck {
  Match = 0x0000, NoMatch = 0x0001, NotAvail = 0x0002, Address = 0x0004,
  PostalCode = 0x0008, Name = 0x0010, NotProcessed = 0x0020, Invalid = 0x0040,
  ServiceUnavailable = 0x0080, IssuerNotCertified = 0x0100, Suspicious = 0x0200, Unsupported = 0x0400
}
 
- Static Public Member Functions inherited from CreditCardProcessor
static Q_INVOKABLE ParameterList authorize (const ParameterList &)
 Processes pre-authorization transactions. More...
 
static Q_INVOKABLE ParameterList charge (const ParameterList &)
 Processes charge transactions. More...
 
static Q_INVOKABLE ParameterList chargePreauthorized (const ParameterList &)
 Captures preauthorized transactions. More...
 
static Q_INVOKABLE ParameterList credit (const ParameterList &)
 Processes credit transactions. More...
 
static Q_INVOKABLE QString errorMsg ()
 Returns the most recent error message set by CreditCardProcessor or one of its subclasses. More...
 
static Q_INVOKABLE QString errorMsg (const int)
 Returns the error message associated with the given pcode. More...
 
static Q_INVOKABLE CreditCardProcessorgetProcessor (const QString=QString())
 Get a new instance of a specific CreditCardProcessor subclass. More...
 
static Q_INVOKABLE int printReceipt (const int)
 Print the CCReceipt report for a credit card transaction. More...
 
static Q_INVOKABLE QString typeToCode (CCTransaction ptranstype)
 
static Q_INVOKABLE ParameterList voidPrevious (const ParameterList &)
 Processes void transactions. More...
 
- Protected Attributes inherited from CreditCardProcessor
QList< FraudCheckResult * > _avsCodes
 
QString _company
 
QList< FraudCheckResult * > _cvvCodes
 
int _defaultLivePort
 
QString _defaultLiveServer
 
int _defaultTestPort
 
QString _defaultTestServer
 
QList< QPair< QString, QString > > _extraHeaders
 
QHttp * _http
 
bool _ignoreSslErrors
 
bool _passedAvs
 
bool _passedCvv
 
QString _plogin
 
QString _ppassword
 
QString _pport
 
QString _pserver
 
- Protected Slots inherited from CreditCardProcessor
void sslErrors (const QList< QSslError > &errors)
 
- Static Protected Member Functions inherited from CreditCardProcessor
static double currToCurr (const int, const int, const double, int *=0)
 Convert between two currencies. More...
 
- Static Protected Attributes inherited from CreditCardProcessor
static QString _errorMsg = ""
 
static QHash< int, QString > _msgHash
 

Detailed Description

The implementation of Authorize.Net-specific credit card handling.

Constructor & Destructor Documentation

AuthorizeDotNetProcessor::AuthorizeDotNetProcessor ( )

Member Function Documentation

int AuthorizeDotNetProcessor::buildCommon ( const int  pccardid,
const QString &  pcvv,
const double  pamount,
const int  pcurrid,
QString &  prequest,
QString  pordertype 
)
protectedvirtual

Build a basic outgoing request for an initial transaction - that is, one that can stand alone and does not depend on the success of a prior transaction.

See also
buildFollowup
int AuthorizeDotNetProcessor::buildFollowup ( const int  pccpayid,
const QString &  ptransid,
double &  pamount,
int &  pcurrid,
QString &  prequest,
QString  pordertype 
)
protectedvirtual

Build an outgoing request for a follow-on transaction - that is, one that requires a previous transaction to be meaningful (e.g. capturing a pre-auth requires a valid pre-auth). These require less data and are slightly more secure than full messages.

Parameters
pamountmay be changed if Authorize.Net is configured to convert currencies
pcurridmay be changed if Authorize.Net is configured to convert currencies
See also
buildCommon
int AuthorizeDotNetProcessor::doAuthorize ( const int  pccardid,
const QString &  pcvv,
double &  pamount,
const double  ptax,
const bool  ptaxexempt,
const double  pfreight,
const double  pduty,
const int  pcurrid,
QString &  pneworder,
QString &  preforder,
int &  pccpayid,
ParameterList &  pParams 
)
protectedvirtual

Placeholder for subclasses to override.

See also
authorize

Reimplemented from CreditCardProcessor.

int AuthorizeDotNetProcessor::doCharge ( const int  pccardid,
const QString &  pcvv,
const double  pamount,
const double  ptax,
const bool  ptaxexempt,
const double  pfreight,
const double  pduty,
const int  pcurrid,
QString &  pneworder,
QString &  preforder,
int &  pccpayid,
ParameterList &  pParams 
)
protectedvirtual

Placeholder for subclasses to override.

See also
charge

Reimplemented from CreditCardProcessor.

int AuthorizeDotNetProcessor::doChargePreauthorized ( const int  pccardid,
const QString &  pcvv,
const double  pamount,
const int  pcurrid,
QString &  pneworder,
QString &  preforder,
int &  pccpayid,
ParameterList &  pParams 
)
protectedvirtual

Placeholder for subclasses to override.

See also
chargePreauthorized

Reimplemented from CreditCardProcessor.

int AuthorizeDotNetProcessor::doCredit ( const int  pccardid,
const QString &  pcvv,
const double  pamount,
const double  ptax,
const bool  ptaxexempt,
const double  pfreight,
const double  pduty,
const int  pcurrid,
QString &  pneworder,
QString &  preforder,
int &  pccpayid,
ParameterList &  pParams 
)
protectedvirtual

Placeholder for subclasses to override.

See also
credit

Reimplemented from CreditCardProcessor.

int AuthorizeDotNetProcessor::doTestConfiguration ( )
protectedvirtual

Placeholder for subclasses to override.

See also
testConfiguration

Reimplemented from CreditCardProcessor.

int AuthorizeDotNetProcessor::doVoidPrevious ( const int  pccardid,
const QString &  pcvv,
const double  pamount,
const int  pcurrid,
QString &  pneworder,
QString &  preforder,
QString &  papproval,
int &  pccpayid,
ParameterList &  pParams 
)
protectedvirtual

Placeholder for subclasses to override.

See also
voidPrevious

Reimplemented from CreditCardProcessor.

int AuthorizeDotNetProcessor::handleResponse ( const QString &  presponse,
const int  pccardid,
const QString &  ptype,
const double  pamount,
const int  pcurrid,
QString &  pneworder,
QString &  preforder,
int &  pccpayid,
ParameterList &  pparams 
)
protectedvirtual
bool AuthorizeDotNetProcessor::handlesCreditCards ( )
protectedvirtual

Returns whether the subclass handles credit cards.

Reimplemented from CreditCardProcessor.


The documentation for this class was generated from the following files:

Generated on Fri Oct 7 2016 15:41:35 xTuple ERP Programmer Reference, Version 4.6.0 doxygen 1.8.10