This page provides an overview of the payments methods provided by the Connexpay PCI adapter in the IXOPAY platform. It also includes a full list of all configuration options available to you when integrating Connexpay PCI within your payments landscape, as well as an overview of the parameters required when submitting a transaction via IXOPAY's API.
Payment Methods
| Payment Method | Transaction Flows | Transaction Types |
|---|
| Creditcard | iFrame Form & payment.js Integration | Debit, Preauthorize, Capture, Void, Refund, Register |
Cardholder & Billing Data
Standard IXOPAY customer fields are forwarded to ConnexPay as Card.Customer on Debit and Preauthorize transactions. No extraData is needed — populate the standard customer object in the transaction request.
| IXOPAY field | ConnexPay wire field | Info |
|---|
| customer.identification | CustomerID | Merchant-defined customer identifier passed to ConnexPay as a top-level field (max 100 chars). Use this to link the transaction to a customer record in your system. |
| customer.firstName | Card.Customer.FirstName | Max 50 chars. |
| customer.lastName | Card.Customer.LastName | Max 50 chars. |
| customer.email | Card.Customer.Email | Max 100 chars. |
| customer.phone | Card.Customer.Phone | Max 20 chars. |
| customer.address1 | Card.Customer.Address1 | Max 100 chars. Required for AVS — see note below. |
| customer.address2 | Card.Customer.Address2 | Max 100 chars. |
| customer.city | Card.Customer.City | Max 50 chars. |
| customer.state | Card.Customer.State | Max 3 chars (e.g. NY). |
| customer.country | Card.Customer.Country | ISO 3166-1 alpha-2 (e.g. US). Non-2-letter values are dropped. |
| customer.zip | Card.Customer.Zip | Max 12 chars. Required for AVS — see note below. |
AVS note: ConnexPay forwards Address1 and Zip to the card network for Address Verification (AVS). To receive a meaningful addressVerificationCode in the response (e.g. Y = full match, Z = ZIP only, A = address only), both fields must be populated. Omitting them results in addressVerificationCode: "0" / "Unavailable". AVS is a US-market feature — international issuers typically return "Unavailable" regardless.
Additional Parameters
Merchants can pass optional parameters to ConnexPay via extraData. Each parameter applies to specific transaction types as noted.
Order & Statement Fields
| Field | Type | Applies To | Required | Info |
|---|
| extraData.OrderNumber | string | Debit, Preauth, Void, Refund | false | Merchant order/reference number. Max 50 chars, alphanumeric + . _ / -. Links the transaction to a merchant-side order; also accepted on Void and Refund to correlate the reversal back to the original order. |
| extraData.StatementDescription | string | Debit, Preauth | false | Descriptor shown on the cardholder's statement. Max 25 chars, no spaces. |
| extraData.SendReceipt | boolean | Debit, Preauth | false | When true, ConnexPay emails a receipt to the cardholder if an email address is on file. |
Customer Linkage
| Field | Type | Applies To | Required | Info |
|---|
| extraData.AssociationId | string | Debit, Preauth | false | Merchant-defined association ID linking multiple transactions (e.g. a subscription). Max 100 chars. |
Void-Specific Fields
| Field | Type | Applies To | Required | Info |
|---|
| extraData.VoidReason | string | Void | false | ConnexPay void reason code. One of: POST_AUTH_USER_DECLINE, DEVICE_TIMEOUT, DEVICE_UNAVAILABLE, PARTIAL_REVERSAL, TORN_TRANSACTIONS, POST_AUTH_CHIP_DECLINE. |
Risk Data — Travel Vertical
The ConnexPay risk engine requires RiskData.FlightData for travel-vertical merchants (mandatory for those whose ConnexPay risk profile requires it). Send these via extraData on Debit / Preauthorize only. All four required Flight fields must be supplied together if any one is set — partial flight data is rejected with a validation error.
| Field | Type | Required | Info |
|---|
| extraData.FlightAirline | string | conditional | IATA 2-letter airline code (e.g. AA). All four Flight fields below must be supplied together if any is set. |
| extraData.FlightDepartureAirport | string | conditional | IATA 3-letter departure airport code (e.g. JFK). |
| extraData.FlightDestinationAirport | string | conditional | IATA 3-letter destination airport code (e.g. ATL). |
| extraData.FlightDepartureDate | string | conditional | Format MM/DD/YYYY. |
| extraData.FlightRoute | string | false | Free-form route descriptor (e.g. Direct). Optional even when the four required fields are set. |
Risk Data — Product Fields
Optional top-level RiskData fields for non-travel risk submissions. Apply to Debit / Preauthorize only. Can be sent with or without Flight fields.
| Field | Type | Required | Info |
|---|
| extraData.ProductType | string | false | Free-form product type (e.g. Hotel). |
| extraData.ProductDesc | string | false | Free-form product description. |
| extraData.ProductItem | string | false | Free-form item code. |
| extraData.ProductQuantity | integer | false | Quantity. |
| extraData.ExpectedPayments | integer | false | Risk-engine hint: number of follow-up payments expected on this card. Defaults to 0 (single-shot) or 1 for INITIAL indicator. Merchant can override (e.g. supply 12 for a 12-month subscription on an INITIAL debit). |
If no Flight or Product extraData is supplied, transactions proceed without a RiskData block — appropriate for merchants whose ConnexPay risk profile does not require it.
Transaction Indicators
| IXOPAY Indicator | Connexpay Behavior |
|---|
| SINGLE | Card.IsRecurring=false, ExpectedPayments=0 |
| INITIAL | Card.IsRecurring=true, ExpectedPayments=1 (override via extraData) |
| RECURRING | Card.IsRecurring=true |
| CARDONFILE (CIT) | Card.IsRecurring=false |
| CARDONFILE_MERCHANT (MIT) | Card.IsRecurring=true |
| MOTO | CardDataSource=PHONE (Connexpay's MOTO signal — not eci=99) |
3D Secure (Provider 3DS)
ConnexPay runs its own EMV-3DS flow (provider 3DS). No special connector config flag is required — 3DS is triggered automatically when the transaction's threeDSecure field is set to mandatory or optional (and browser data is present). The adapter calls ConnexPay's POST /api/v1/3ds before the actual sale/auth and handles the response:
| ConnexPay 3DS outcome | Adapter action |
|---|
| 200 Frictionless approved | Attaches ECI/CAVV to card, proceeds with sale/auth inline |
| 202 Pending Fingerprint | Returns ThreeDV2MethodResponse — gateway loads fingerprint iframe |
| 202 Pending Challenge | Returns ThreeDV2ChallengeResponse — gateway redirects browser to ACS |
| Declined | Returns error (card_3d_secure_error) |