ACI integration guide

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

Services and compatibility

Supported payment types
  • Card
Supported transaction types
  • Sale (saved card token or full card number) ( API )
  • Auth Only (saved card token or full card number) ( API )
  • Capture (partial) ( API )
  • Void ( API )
  • Refund (partial or full only) ( API )
Supported processing currenciesAED, ALL, ARS, AUD, AWG, BBD, BDT, BGN, BHD, BND, BOB, BRL, BWP, CAD, CHF, CLP, CNY, COP, CRC, CZK, DKK, DOP, EGP, EUR, GBP, GHS, GTQ, HKD, HNL, HUF, IDR, ILS, INR, ISK, JMD, JOD, JPY, KES, KRW, KWD, KYD, KZT, LKR, MOP, MUR, MXN, MYR, MZN, NAD, NGN, NIO, NOK, NZD, PAB, PEN, PHP, PKR, PLN, PYG, QAR, RON, RUB, SAR, SEK, SGD, THB, TRY, TTD, TWD, UAH, USD, UYU, VND, XCD, ZAR
3D Secure 1.x supportedYes
3D Secure 2.x supportedYes
External 3D Secure supportedNo
Installments supportedNo

Gateway-specific information

  • paymentType is supported.
  • There are several different ACI connections and processors, which may impact what features are available and what fields are required.
  • The aci_planet and aci_planet_mcp connections do not immediately settle. The system settles transactions after 24 hours. The aci_auto connection does immediately settle.
  • aci_planet_mcp supports multi-currency pricing.

Configuration

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

  • User ID
  • Password
  • Entity ID

In addition, there are different types of ACI integrations. Work with Integrations Support to add the type or types that you need:

  • aci_auto - This connector is used when you need transactions to settle immediately.
  • aci_planet - This is the default connector for most integrations.
  • aci_planet_mcp - This connector is used when the account has the multi-currency pricing feature.

Required fields

The following fields are required when processing a payment request with ACI:

  • card.cardHolderName (not required for aci_planet_mcp)
  • data.amount
  • data.currency
  • processingOptions.paymentType

For ACI, if you provide orderNumber, it must be unique. Also, orderNumber cannot be longer than 25 characters.

Some ACI processors may require additional parameters. For example, a Brazilian one requires data.customer.nationalIdentificationNumber. Check with ACI for more information, and check the error response (HTTP error 400 with Nexio error code 436--See Common errors) that lists any missing required fields.

Testing data

Use the following test card information to test your ACI configuration.

ConnectorBrandCard numberExpiration dateSecurity codeCardholder nameMobileSMS code3DSTransaction result
aci_autoVisaAny future date111AnyN/ASuccess
aci_planetMastercard5451408260008261Any future date123AnyN/ASuccess
aci_planet_mcpVisa405170000000392612/123AnyN/ASuccess
aci_planet_mcpMastercard520473000000840412/123AnyN/ASuccess
aci_planet_mcpAmex37395319235100412/1234AnyN/ASuccess
aci_planet_mcpJCB356600002755237112/123AnyN/ASuccess
UnionPay(credit card)625094700000001412/33123+852 11112222111111N/ASuccess
UnionPay(credit card)622282123456001712/33123+86 13012345678111111N/ASuccess
UnionPay(debit card)6216261000000000018+852 13552535506111111N/ASuccess
UnionPay(credit card)6250946000000016+852 13688888888111111N/ASuccess

Status workflows

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

SaleWhen isAuthOnly is false, successful sale transactions will have the following statuses:
  • pending* or authorized
  • settled
Auth onlyWhen isAuthOnly is true, successful sale transactions will have the following status:
  • authOnly
CaptureSuccessful capture transactions will have the following statuses:
  • pending* or authorized
  • settled
VoidSuccessful void transactions will have the following status:
  • voided
RefundSuccessful refund transactions will have the following statuses:
  • 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.