Installation
npm install node-authorize-net
Test
npm test
Usage
- Create a service by passing your apiLogin and your transaction key.
- You can then call any method listed on the api. These methods return Promises. See API documentation for further details.
var service=apilogingkey; service;
API
Global
AuthorizeNet
authCaptureTransaction(amount, cardNumber, expirationYear, expirationMonth, other)
submit a transaction request type authCaptureTransaction.
- will resolve with an json object representing the createTransactionResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Parameters
amount: string | number, the amount of the transaction
cardNumber: string | number, the card number used for the transaction
expirationYear: string | number, a four digits number for the expiration year of the card
expirationMonth: string | number, one or two digit for the expiration month of the card
other: object, a json object you want to mix with the transactionRequest field before transformation into xml. Note it will override already assigned properties
Returns: Promise,
authOnlyTransaction(amount, cardNumber, expirationYear, expirationMonth, other)
submit a transaction request type authOnlyTransaction.
- will resolve with an json object representing the createTransactionResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Parameters
amount: number, the amount of the transaction
cardNumber: string | number, the card number used for the transaction
expirationYear: number, a four digits number for the expiration year of the card
expirationMonth: one or two digit for the expiration month of the card
other: object, a json object you want to mix with the transactionRequest field before transformation into xml. Note it will override already assigned properties
Returns: Promise,
priorAuthCaptureTransaction(refTransId, amount, other)
submit a transaction request type priorAuthCaptureTransaction.
- will resolve with an json object representing the createTransactionResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Parameters
refTransId: String | number, the transaction reference id returned by the web service after the related authorize only transaction
amount: number, the amount of the transaction
other: object, a json object you want to mix with the transactionRequest field before transformation into xml. Note it will override already assigned properties
Returns: Promise,
refundTransaction(refTransId, amount, cardNumber, expirationYear, expirationMonth, other)
Refund an already settled transaction
Parameters
refTransId: a reference to the transaction to refund
amount: the amount to refund
cardNumber: the card number used to process the transaction
expirationYear: the expiration year of the card used to process the transaction
expirationMonth: the expiration month of the transaction card used to process the transaction
other: some other fields to merge with the request
Returns: Promise,
voidTransaction(refTransId, other)
submit a transaction request type voidTransaction.
- will resolve with an json object representing the createTransactionResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Parameters
refTransId: String | number, the transaction reference id (you want to void) returned by the web service.
other: object, a json object you want to mix with the transactionRequest field before transformation into xml. Note it will override already assigned properties
Returns: Promise,
getTransactionDetails(refTransId)
submit a getTransactionDetails request
- will resolve with an json object representing the getTransactionDetailResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Parameters
refTransId: String | number, the transaction reference id (you want to void) returned by the web service.
Returns: Promise,
getUnsettledTransactionList()
submit a getTransactionDetails request
- will resolve with an json object representing the getUnsettledTransactionListResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Returns: Promise,
getSettledBatchList(withStats, startDate, lastDate)
get a batch list of already settled transactions
- will resolve with an json object representing the getBatchListResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Parameters
withStats: boolean, if true the response will include detailed view of the statistics
startDate: Date, a date object to define the lower bound of the time window requested
lastDate: Date, a date object to define the higher bound of the time window requested
Returns: Promise,
getBatchStatistics(batchId)
get statistics for a particular batch
- will resolve with an json object representing the getBatchStatisticsResponse xml field of the web service response it the resultCode is
"Ok"
- will reject with an instance of AuthorizationNetError whose properties will be json version of the xml field createTransactionResponse if the resultCode is not
"Ok"
- will reject with an instance of HttpError if the http status code of the response is higher or equal to 400
- will reject with an instance of AssertionError if one of the mandatory field is falsy
- will reject with an instance of Error if any other error occurs (parsing, etc)
Parameters
batchId: string | number, the batch id requested
Returns: Promise,
License
node-authorize-net module is under MIT license:
Copyright (C) 2014 Laurent Renard.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.