> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://ixopay.ferndocs.com/developer-hub/documentation/adapters/simulator-testing-connector/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://ixopay.ferndocs.com/_mcp/server. # Simulator (Testing connector) This page provides an overview of the payments methods provided by the Simulator (Testing connector) adapter in the IXOPAY platform. It also includes a full list of all configuration options available to you when integrating Simulator (Testing connector) within your payments landscape, as well as an overview of the parameters required when submitting a transaction via IXOPAY's API. The Simulator is an adapter for integration & testing purposes only. No real transaction will be performed at any payment provider. ## Test data ### Credit cards | Brand | Number | Result | | ---------- | --------------------- | ------- | | Visa | `4111 1111 1111 1111` | Success | | Visa | `4242 4242 4242 4242` | Failure | | Mastercard | `5555 5555 5555 4444` | Success | | Mastercard | `5105 1051 0510 5100` | Failure | | Diners | `3800 000000 0006` | Success | | Amex | `3782 8224631 0005` | Success | | Discover | `6011 1111 1111 1117` | Success | Additionally, you can simulate an SCA Soft-Decline error code by sending amount `65.00` (any currency). ### Extended 3D-Secure Testing If extended 3D-Secure Testing is enabled on the Simulator, you can use the following card numbers (resp. cardholder names for 3DS version 1) to simulate the given results: **3DS 2.x Simulation** | Number | Method Fingerprinting | ARes Result | | --------------------- | ---------------------- | ---------------------------------- | | `4000 0010 0000 0000` | **true** | Frictionless - Fully Authenticated | | `4111 1111 1111 1111` | **true** | Frictionless - Fully Authenticated | | `5555 5555 5555 4444` | **true** | Frictionless - Fully Authenticated | | `4000 0020 0000 0008` | false | Frictionless - Fully Authenticated | | `4000 0010 0000 0216` | **true** | Frictionless - Attempted | | `4000 0020 0000 0016` | false | Frictionless - Attempted | | `4000 0010 0000 0109` | **true** | Challenge | | `5000 0010 0000 0007` | **true** | Challenge | | `4000 0020 0000 0024` | false | Challenge | | `4000 0010 0000 0307` | **true** | Not Authenticated | | `4000 0020 0000 0032` | false | Not Authenticated | | `4000 0010 0000 0208` | **true** | Rejected | | `4000 0020 0000 0040` | false | Rejected | | `4000 0030 0000 0006` | Error: Not Enrolled | | | `4000 0030 0000 0014` | Error: Network Timeout | | | `4000 0030 0000 0022` | Error: Network Error | | | `4000 0030 0000 0030` | Error: Invalid card | | | `4000 0040 0000 0004` | false | Error: Access Denied | | `4000 0040 0000 0012` | false | Error: Transient System Error | | `4000 0040 0000 0020` | false | Error: Invalid Format | | `4000 0040 0000 0038` | false | Error: Network Timeout | | `4000 0040 0000 0046` | false | Error: Network Error | | `4000 0040 0000 0053` | false | Error: Configuration missing | | `4000 0040 0000 0061` | false | Error: Configuration incomplete | **3DS 1.x Simulation** | Cardholder Name | Result | | ---------------------- | ------------------------------- | | 3DS1\_CONFIG\_ERROR | Error: Invalid Configuration | | 3DS1\_NETWORK\_TIMEOUT | Error: Network Timeout | | 3DS1\_NETWORK\_ERROR | Error: Network Error | | 3DS1\_DS\_TIMEOUT | Error: Directory Server Timeout | | 3DS1\_UNAUTHENTICATED | Not authenticated | | 3DS1\_NOT\_ENROLLED | Not enrolled | | 3DS1\_ENROLLED | Enrolled, PaReq Redirect | ### Direct Debit IBANs You can use any IBAN you like. The last four digits will control the result: | Last 4 digits | Result | | ------------- | -------------------- | | 1111 | Success | | 2222 | Pending | | 2003 | Transaction Declined | | 2006 | Insufficient funds | ***Example:*** `AT00 0000 0000 0000 1111` => Successful transaction Alternatively you may override the outcome via extra data `extraData.outcome` | `outcome` value | Result | | --------------- | ------- | | 1111 | Success | | 2222 | Pending | | success | Success | Defining `outcome` will overrule the behaviour based on the last 4 digits of the given IBAN. ***Example:*** `AT00 0000 0000 0000 2222` + `outcome = success` => Successful transaction ## Simulate pending status change You may simulate a transaction status change by adding the extraData `pendingOutcome`. Do note that this simulation may only be evoked by submitting an IBAN with outcome `pending` (ending with 2222) via the simulator payment page. The status will change in approx. 5 minutes after submission. | Extra Data | Value | Result | | -------------- | -------------- | ---------------------------------------------- | | pendingOutcome | success | Status will change from `pending` to `success` | | pendingOutcome | anyOtherString | Status will change from `pending` to `error` |