Authorize.net integration guide

Authorize.net Authorize.net is a gateway that allows you to collect card payments. This guide is intended to help you implement Authorize.net based on your preferred integration workflow.

Services and compatibility

Supported payment types<ul style={{ marginTop: "-5px", marginBottom: "-5px" }}>
  • Card
  • Supported transaction types<ul style={{ marginTop: "-5px", marginBottom: "-5px" }}>
  • Sale (saved card token) ( API / API with iframe / Tutorial )
  • Auth Only (saved card token) ( API / Tutorial )
  • Capture (partial and greater than) ( API / Dashboard )
  • Void ( API / Dashboard )
  • Refund (partial and multiple) ( API / Dashboard )
  • Supported processing currenciesAUD, CAD, CHF, DKK, EUR, GBP, NOK, NZD, PLN, SEK, USD
    3D Secure 1.x supportedNo
    3D Secure 2.x supportedNo
    External 3D Secure supportedNo
    Installments supportedNo

    Gateway-specific information

    • Authorize.net does not settle batches immediately.
    • paymentType is not supported.

    Configuration

    Work with Integrations Support to add Authorize.net as a connection. You will need the following credentials from Authorize.net:

    • login ID
    • API key

    Required fields

    There are no additional required fields.

    If you are having issues with transactions that are rejected by Authorize.net because of potential fraud, include the clientIp parameter in the payment request and explicitly set the value as the IP address of the device where the customer is submitting the payment information. If you do not explicitly set a value, it looks to Authorize.net as if the exact same IP address is sending out an inordinate amount of traffic and it is not possible to separate out the valid and invalid requests.

    Testing data

    Use the following test card information to test your Authorize.net configuration.

    BrandCard numberExpiration dateSecurity codeCardholder namePostal codeTransaction result
    Visa4111111111111111Any future dateAnyAnyAnySuccess
    Mastercard5424000000000015Any future dateAnyAnyAnySuccess
    American Express370000000000002Any future dateAny (Ex: 1234)AnyAnySuccess
    Discover6011000000000012Any future dateAnyAnyAnySuccess
    Any of the aboveCorresponding numberAny future dateAnyAny46282Decline

    Status workflows

    The status of a successful transaction with Authorize.net varies, depending on the options you choose.

    SaleWhen isAuthOnly is false, successful sale transactions will have the following statuses:<ul style={{ marginTop: "-5px", marginBottom: "-5px" }}>
  • pending* or authorized
  • settled
  • Auth onlyWhen isAuthOnly is true, successful sale transactions will have the following status:
    <ul style={{ marginTop: "-5px", marginBottom: "-5px" }}>
  • authOnly
  • CaptureSuccessful capture transactions will have the following statuses:<ul style={{ marginTop: "-5px", marginBottom: "-5px" }}>
  • pending* or authorized
  • settled
  • VoidSuccessful void transactions will have the following status:<ul style={{ marginTop: "-5px", marginBottom: "-5px" }}>
  • voided
  • RefundSuccessful refund transactions will have the following statuses:<ul style={{ marginTop: "-5px", marginBottom: "-5px" }}>
  • pending* or authorized
  • settled
  • *Pending status displays as "authorized" or "AUTHORIZED" in the Nexio Dashboard; it displays as 10, meaning "authorized", in the response when querying transactions (for more information about transactionStatus, see the appropriate transactionStatus table).

    If you have any additional questions or feedback, contact us.

    See also