iyzico one-off payment and installment easy payment integration Version: 1.0.11 iyzi teknoloji ve ödeme sistemleri A.Ş. iyzico one-off payment and installment 1
Release History Date Version Reason for Issue 15/06/2013 1.0.0 Initial Version 27/11/2013 1.0.1 Support new iyzico API 15/01/2014 1.0.2 Support installment 25/02/2014 1.0.3 New Template 15/05/2014 1.0.4 Add Platform solution support 30/07/2014 1.0.5 Updated urls and parameters as per new izico checkout 06/08/2014 1.0.6 Updated requests and response parameters 07/08/2014 1.0.7 Added error codes and example request 12/08/2014 1.0.8 Formatting 13/08/2014 1.0.9 Modified responses, form integration methods and added items group in request, new request parameters 21/08/2014 1.0.10 Updated error codes 21/08/2014 1.0.11 Updated document with RG support and new error codes 03/02/2015 1.0.12 Updated document with CP support iyzico one-off payment and installment 2
Preface iyzico one-off payment and installment Copyright 2014 iyzi teknoloji ve ödeme sistemleri A.Ş. - All rights reserved. The information contained in this document is intended only for the person or entity to which it is addressed and contains confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact iyzi teknoloji ve ödeme sistemleri A.Ş. and delete the material from any computer. iyzico one-off payment and installment 3
Contents 1. Introduction... 5 2. Generate a token for payment... 6 2.1 API User Group... 6 2.2 Transaction Group... 6 2.3 Payment Group... 7 2.4 Presentation Group... 8 2.5 Customer Information Group... 8 2.6 Address Group... 9 2.7 Contact Group... 10 2.8 Platform Group... 10 2.9 Items Information Group... 11 3. Let the shopper pay - build the payment form... 12 3.1 What does it mean: URL for redirecting the shopper after the payment?... 13 3.2 Get the status of the transaction... 13 4. Samples... 14 4.1 Generate a token for payment... 14 4.2 Let the shopper pay - build the payment form... 16 4.3 Capture... 19 5. Error codes... 20 5.1 General error codes... 21 5.2 Internal error codes... 27 iyzico one-off payment and installment 4
1. Introduction The iyzico Integration has two basic layers: 1) Processing of POST requests and responses 2) Transmission of POST parameters The complete iyzico integration specification was designed to be as easily understandable and polymorphic as possible. That means that all payment methods reuse the same tag set and coding scheme with very minor modifications. Thus the integration of an additional payment method just requires changes to the value of the code attribute in the form action by creating the payment form (chapter 3 Let the shopper pay - build the payment form). No further modifications are mandatory. iyzico one-off payment and installment 5
2. Generate a token for payment Prepare the payment request with all data that are not meant for the shopper to know or to change. Those data are typically your payment credentials and fixed values such as amount and currency. The preparation call is simply done with a POST request from the merchant's server to the payment server. The JSON response contains a token which you need in the second step for building the payment form. Do a server-to-server call and send POST data to the following URL Live & Test system: https://api.iyzico.com/v2/create Following parameters Groups can be sent to iyzico payment gateway. 2.1 API User Group The User Group contains the authentication information about the Merchants API ID and Secret Key. Parameter Data Type Length Mandatory Description api_id Alpha 32 YES API ID of the sending Merchant. secret Alpha 32 YES secret API key of the Merchant 2.2 Transaction Group The Transaction Group contains all information required to process a transaction. Parameter Data Type Length Mandatory Description mode Alpha 4 YES test Test system for credit cards live Live system transaction_id Alpha 12 No Transaction id of DB or PA transaction. Required on Capture/Refund request external_id Alpha 32 YES Transaction id, must be unique for each request iyzico one-off payment and installment 6
2.3 Payment Group The Payment Group determines which payment method and type to use and provides all monetary payment details of the transaction. Parameter Data Type Length Mandatory Description type Alpha 4 YES Transaction type (CC.DB, RG.DB, CC.PA, RG.PA, CC.CP) For normal debit transaction, pass type parameter as CC.DB and: 1. Register card with Debit transaction, pass type parameter as RG.DB and amount greater than 0. 2. Just register a card, pass type parameter as RG.DB and amount 0. For pre-authorization transaction, pass type parameter as CC.PA and: 1. Register card with pre-authorization transaction, pass type parameter as RG.DB and amount greater than 0. 2. Just register a card, pass type parameter as RG.PA and amount 0. For capture transaction request, pass type parameter as CC.CP iyzico one-off payment and installment 7
2.4 Presentation Group The presentation groups define the basket of the customer. All parameters within the Presentation Group are mandatory: Parameter Data Type Length Mandatory Description amount #000 1..10,2 YES Presentation Amount in currency of the Currency parameter. Do not use dot, (Send 100 for 1.00 TRY) currency Alpha 3 YES Currency code according to the ISO 4217 specification. The complete list of supported currencies: TRY USD EUR GBP customer_presentation_usage Alphanum. 0..128 YES Provides the dynamic part of the descriptor, which appears on the end customer s statement. Enables the end customer to associate the transaction on the statement to the online transaction. return_url Alphanum 0..128 YES Return url, result page for transaction eric installment Alpha 0..5 No Installment transaction, true or false. 2.5 Customer Information Group To identify the customer you can send the Company name, First and Last name from the customer. iyzico one-off payment and installment 8
Parameter Data Type Length Mandatory Description iyzi teknoloji ve ödeme sistemleri A.Ş. customer_name_company Alpha 2 50 NO Company name of the customer customer_first_name Alpha 2..50 NO First name of the end customer. customer_last_name Alpha 2..50 NO Last name name of the end customer. customer_language Alpha 2 NO Language, en or tr 2.6 Address Group For Retails payments please sent every time the billing address from the customer. Parameter Data Type Length Mandatory Description customer_shipping_address_line_1 Alphanumeric 5..50 NO Shipping street and street number of the end customer. customer_shipping_address_line_2 Alphanumeric 5..50 NO Second shipping address line. customer_shipping_address_zip Alphanumeric 5..10 NO Shipping ZIP code of the end customer s resivdence. customer_shipping_address_city Alpha 2..30 NO Shipping City or location where the end customer lives. customer_shipping_address_state Alpha 2..30 No Shipping State of end customer. customer_shipping_address_country Alpha 2 NO Shipping Country code according to the ISO 3166-1 specification. customer_billing_address_line_1 Alphanumeric 5..50 NO Billing street and street number of the end customer. customer_billing_address_line_2 Alphanumeric 5..50 NO Second billing address line. customer_billing_address_zip Alphanumeric 5..10 NO Billing ZIP code of the end customer s resivdence. customer_billing_address_city Alpha 2..30 NO Billing City or location where the end customer lives. customer_billing_address_state Alpha 2..30 No Billing State of end customer customer_billing_address_country Alpha 2 NO Billing Country code according to the ISO 3166-1 specification. iyzico one-off payment and installment 9
2.7 Contact Group For security reason please send iyzico the E-Mail and IP Address from the customer. Parameter Data Type Length Mandatory Description customer_contact_phone Numeric 15 NO Phone number of customer, used for risk management purposes customer_contact_mobile Numeric 15 NO GSM number of customer, used for risk management purposes customer_contact_email Alphanumeric 6..128 NO Used for risk management purposes and transmission of direct debit mandates. customer_contact_ip Alphanumeric 15 NO IP number of end customer. Used for risk management purposes. 2.8 Platform Group In relation to iyzico platform solution, iyzico provides parameter to identify and distribute. Parameter Data Type Length Mandatory Description platform_merchant_api_id Alpha 32 YES API ID of the platform s Merchant. platform_share_amount Numeric 15 YES Amount which the platform should get. Required if platform_merchant_api_id is present in request. platform_merchant_share_amount Alphanumeric 6..128 YES Amount for the platforms Merchant. Required if platform_merchant_api_id is present in request. iyzico one-off payment and installment 10
2.9 Items Information Group Item group contains the data of the items in the basket of the customer. NOTES: The following example fields are for the first item of the basket, for the 2nd item field names changes to 'item_id_2', 'item_name_2', 'item_unit_quantity_2' and 'item_unit_amount_2'. If you want to add more items just iterate the number char on the end. Parameter Required Type/Length Explanation item_id_1 Alpha/32 Item id on merchant end item_name_1 Alpha/100 Item name item_unit_quantity_1 Numeric/3 How many of this item item_unit_amount_1 Numeric/6 Gross cost iyzico one-off payment and installment 11
3. Let the shopper pay - build the payment form The shopper enters your checkout page, and you simply have to integrate only two lines of code into your html page. There are two ways to integrate the payment form: 1. Use the code snippet from the response In generate token response, you will get a code snippet with pre defined form and javascript. Just include that snippet in your html page. For example, if you are using PHP, <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> </head> <body> <!-- other contents --> <?php echo $response['code_snippet'];?> <!-- other contents --> </body> </html> 2. Load javascript library with the version, mode, installment, language, token parameter and form tag. Live system (One-off payment): https://www.iyzico.com/frontend/form/v1/widget.js?installment=false&language=tr&mode=live&token={token} Test system (One-off payment): https://www.iyzico.com/frontend/form/v1/widget.js?installment=false&language=tr&mode=test&token={token} Live system (Installment): https://www.iyzico.com/frontend/form/v1/widget.js?installment=true&language=tr&mode=live&token={token} Test system (Installment): https://www.iyzico.com/frontend/form/v1/widget.js?installment=true&language=tr&mode=test&token={token} Put the following form to the place where the shopper should choose between brands: <form class="iyzico-payment-form"></form> iyzico one-off payment and installment 12
For security reasons, it is important to host your live payment form on an HTTPS page. This will assure buyers of your identity and prevent some browsers from displaying errors. 3.1 What does it mean: URL for redirecting the shopper after the payment? After the payment is made, the shopper will be redirected to that specified URL (return_url parameter). The content of that URL contains either a script which asks for the status of the payment in order to redirect the shopper again to an error or a success page (see Step 3) or it contains simply a html "Thank you for paying" dialogue. You don't have a redirect url yet? Don't worry, for testing you can take any URL you want (e.g. http://www.google.com) 3.2 Get the status of the transaction After the payment is made, the shopper will be redirected to the specified URL with the json result added to the URL (&json={json}). The content of that URL contains either a script which asks for the status of the payment in order to redirect the shopper again to an error or success page, or it simply contains a html "Thank you for paying" dialogue. 3.2.1 Processing Group The processing group contains a summary of the result of the entire processing. The structure of the status and reason codes is hierarchical while the return code is an independent, internal value which is used for very specific return messages. Any merchant side matching should be performed on the processing code or status and reason codes only, but not on the respective messages associated to these statuses. The result derives from the status of the transaction, which means that a transaction which has the status REJECTED or FAILED has the result failed, while all other statuses result in an success. For each status there are one or several reasons. iyzico one-off payment and installment 13
Parameter Data Type Length Mandatory Description response[state] Alfa 10 YES failed or success response[error_code] Alfa 32 YES Error code (cc_transaction_reject) response[error_message] Alfa 3 YES In the case of the status REJECTED or FAILED the result is NOK (Not OK). In all other cases the result is ACK (Acknowledge). response[date_time] ###-##-## 20 YES Date and time of the transaction ##:##:## transaction_token Alphanumeric 32 YES Transaction token mode Alphanumeric 4 YES test / live code_snippet String -- YES HTML code with javascript and form tag. transaction[transaction_id] Alphnumeric 32 YES Transaction id transaction[external_id] Alphanumeric 32 YES Unique transaction id transaction[state] Alfa 10 YES Transaction state (paid, pending, ) transaction[amount] #.## 32 YES Clearing amount transaction[currency] Alfa 3 YES Currency in ISO standard (TRY, USD ) account[bin] Numeric 6 YES BIN number of credit card account[brand] Alpha 10 YES Credit card brand (VISA, MASTER,BONUS, CARDFINANS, MAXIMUM ) account[expiry_month] Numeric 2 YES Expiry month of credit card account[expiry_year] Numeric 4 YES Expiry year of credit card account[last_4_digits] Numeric 4 YES Last 4 digits of credit card installment[count] Numeric 2 YES No. of installments installment[amount] #.## 32 YES Clearing amount installment[final_amount] #.## 32 YES Installment amount iyzico one-off payment and installment 14
4. Samples 4.1 Generate a token for payment Parameter Required Example Value api_id X im523dc63b6bd6fid1j757vnphiylead secret X im523dc65eaad9askkcea5du304ag2g6 mode X test external_id X 12123123qwe type X CC.DB amount X 10000 currency X TRY return_url X https://www.yoursite.com/response/ customer_first_name John customer_last_name Doe customer_contact_email john@doe.com customer_name_company My Company customer_contact_mobile 1234567890 customer_contact_ip 127.0.0.1 Installment true customer_language tr Response: { "transaction_token":"723c0fa5e20aaa11863a78e80a17ba45", "response":{ "state":"success", "message":"payment token generated" }, "code_snippet": "<script src=" https://www.iyzico.com/frontend/form/v1/widget.js?installment=false&language=tr&mode=test&token= 723c0fa5e20aaa11863a78e80a17ba45"></script><form class="iyzico-payment-form"></form>" } iyzico one-off payment and installment 15
Sample error response: { } "response": { "state":"failed", "error_code":"invalid_parameter_genrate_token", "error_message":"token generation failed", "date_time":"2014-08-07 11:38:31" } 4.2 Let the shopper pay - build the payment form 1. Use the code snippet from the response <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> </head> <body> <!-- other contents --> <?php echo $response['code_snippet'];?> <!-- other contents --> </body> </html> 2. Load javascript library with the version, mode, installment, language, and token parameter. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/tr/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <script src="https://www.iyzico.com/frontend/form/v1/widget.js?installment=false&language=tr& mode=test&token= 723c0fa5e20aaa11863a78e80a17ba45"></script> </head> <body> <!-- other contents --> <form class="iyzico-payment-form"></form> iyzico one-off payment and installment 16
<!-- other contents --> </body> </html> Response: For single payment { } "response":{ "state":"success", "error_code":0, "error_message":"successful Processing", "date_time":"2014-08-07 11:29:44" }, "transaction_token":"4da0d804ffde80610c8a10c3891727b8", "mode":"test", "transaction":{ "transaction_id":"140739056476", "external_id":"12123123qwe", "reference_id":"4da0d804ffde80610c8a10c3891727b8", "state":"paid", "amount":"100", "currency":"try" }, "account":{ "bin":"411111", "brand":"visa", "expiry_month":"8", "expiry_year":"2014", "last_4_digits":"1111" } For installment payment response { "response":{ "state":"success", "error_code":0, "error_message":"successful Processing", "date_time":"2014-08-07 11:29:44" }, "transaction_token":"4da0d804ffde80610c8a10c3891727b8", "mode":"test", "transaction":{ "transaction_id":"140739056476", iyzico one-off payment and installment 17
} "external_id":"12123123qwe", "reference_id":"4da0d804ffde80610c8a10c3891727b8", "state":"paid", "amount":"100", "currency":"try" }, "account":{ "bin":"411111", "brand":"visa", "expiry_month":"8", "expiry_year":"2014", "last_4_digits":"1111" } installment :{ count : 2, amount : 100, final_amount : 110.50 } Sample error response: { } "response": { "date_time": "14-02-27 10:46:55", "error_code": "800.100.154", "error_message": "Transaction marked as invalid", "state": "failed" } iyzico one-off payment and installment 18
4.3 Capture Parameter Required Example Value api_id X im523dc63b6bd6fid1j757vnphiylead secret X im523dc65eaad9askkcea5du304ag2g6 mode X test transaction_id X 123456789101 external_id X 12123123qwe type X CC.CP amount X 10000 currency X TRY customer_language tr Response: { } "response":{ "state":"success", "date_time":"2014-02-02 13:49:09" }, "transaction_token":"e2095850c1b0a1d6a25c7e4210f98cd8", "transaction":{ "transaction_id":"850076088781", "external_id":"3873da37940aee72084cb76c8e3ec60f", "reference_id":"", "state":"paid", "amount":"100", "currency":"try" }, "account":{ "bin":"411111", "brand":"visa", "expiry_month":"8", "expiry_year":"2014", "last_4_digits":"1111" "holder":"xyz" } iyzico one-off payment and installment 19
Sample error response: { "response":{ "state":"failed", "error_code":"888.777.014", "error_message":"transaction id is not valid in case of capture\/refund request. (Invalid PA or DB transaction id)", "date_time":"2014-02-02 13:49:09" } } iyzico one-off payment and installment 20
5. Error codes If communication between the merchant's e-commerce system and the iyzicoapi POST is disturbed or a logical or technical error occurs, the iyzico system generates and sends a response. It contains detailed error messages which facilitate the localisation and eradication of the problem. 5.1 General error codes The most important error codes and their meaning are listed in the following: Code Description 000.000.000 Transaction succeeded 000.200.000 Transaction pending 100.396.101 Transaction canceled by user 100.395.101 Bank not supported for Giropay 100.395.102 Account not enabled for Giropay e.g. test account 100.396.201 Transaction canceled by merchant 100.397.102 Transaction declined by authorization system (updated) 100.397.101 Transaction cancelled by user (updated) 100.150.201 Registration is not confirmed yet 100.396.106 Not confirmed by user 100.100.100 Request contains no creditcard, bank account number or bank name 100.100.101 Invalid creditcard, bank account number or bank name 100.100.400 Request contains no cc/bank account holder 800.100.198 Transaction declined (invalid holder) 800.100.197 Transaction declined (registration canceled externally) 800.100.176 Transaction declined (account temporarily not available. Please try again later) 700.400.101 not supported by authorization system 100.550.401 Currency field is invalid iyzico one-off payment and installment 21
Code Description iyzi teknoloji ve ödeme sistemleri A.Ş. 100.700.801 Identity contains no or invalid identification value 100.800.501 Invalid country 100.900.500 Invalid reccurence mode 800.100.174 Amount field should not be empty 100.550.303 Amount format invalid (only two decimals allowed) 100.550.301 Amount is too large 700.100.200 Non matching reference amount 700.100.300 Invalid amount (probably too large) 800.100.155 Amount exceeds credit 700.300.300 Referenced tx can not be refunded, captured or reversed (already refunded, captured or reversed) 700.300.700 Referenced tx can not be reversed (reversal not possible anymore) 800.100.167 Referencing transaction does not match 800.100.170 Transaction not permitted 800.100.191 Transaction in wrong state on aquirer side 800.110.100 Duplicate transaction 800.100.151 Invalid card 800.100.159 Stolen card 800.100.160 Card blocked 800.100.165 Card lost 800.100.168 Restricted card 800.100.171 Pick up card 800.100.169 Card type is not processed by the authorization center 800.100.157 Wrong expiry date 800.100.153 Invalid CVV 800.100.166 Incorrect personal identification number 800.100.162 Limit exceeded 800.100.100 For unknown reason iyzico one-off payment and installment 22
Code Description 800.100.156 Format error 800.100.150 Refund on gambling tx not allowed 800.100.152 Transaction declined by authorization system 800.100.154 Transaction marked as invalid 800.100.158 Suspecting manipulation 800.100.161 Too many invalid tries 800.100.163 Maximum transaction frequency exceeded 800.100.164 Merchants limit exceeded 800.100.172 Account blocked 800.100.173 Invalid currency, not processed by authorization center 800.100.190 Invalid configuration data 800.100.192 Invalid CVV, amount is reserved on card for a few days 800.100.195 UserAccount Number/ID unknown 800.100.196 Registration error 800.200.101 Creditcard / bank account declined by clearing house 800.400.100 AVS Check Failed 800.400.110 AVS Check Failed. Amount is reserved on card for a few days! 100.395.502 Acquirer/Bank reported timeout on online transfer transaction 800.700.101 Family name too long 800.700.500 Company name too long 800.800.102 Invalid street 800.800.202 Invalid zip 800.100.402 cc/bank account holder not valid 800.400.200 Invalid Payer Authentication in 3DSecure transaction 800.400.500 Waiting for confirmation of non-instant payment. Denied for now. 800.800.302 Invalid city 800.900.101 Invalid email address (probably invalid syntax) iyzico one-off payment and installment 23
Code Description iyzi teknoloji ve ödeme sistemleri A.Ş. 800.900.200 invalid phone number (has to start with a digit or a "+", at least 7 and max 25 chars long) 800.900.401 Invalid IP number 800.900.450 Invalid birthdate 800.700.201 Given name too long 600.200.400 Unsupported Payment Type 600.200.100 Invalid Payment Method 900.100.100 Unexpected communication error with connector/acquirer 900.100.200 Error response from connector/acquirerc 900.100.201 Serious error on gateway 900.100.202 Invalid transaction flow, the requested function is not applicable for the referenced transaction. 900.100.300 No response from connector/acquirer [uncertain result] 900.100.400 Timeout at connectors/acquirer side 900.100.500 Timeout at connectors/acquirer side (try later) 100.380.401 User Authentication Failed 100.390.102 PARes Validation failed 100.390.103 PARes Validation failed - problem with signature 100.390.110 Cardholder Not Found - card number provided is not found in the ranges of the issuer 100.390.111 Communication Error to VISA/Mastercard Directory Server 100.390.112 Technical Error in 3D system 100.390.113 Unsupported User Device - Authentication not possible 000.400.101 Card not participating/authentication unavailable 000.400.102 User not enrolled 200.200.103 invalid format for processing by gateway (no reference id) 100.390.108 Transaction rejected because merchant not participating in 3DSecure program 900.100.600 Connector/acquirer currently down 900.300.600 User session timeout 900.200.100 Message Sequence Number of Connector out of sync iyzico one-off payment and installment 24
Code Description iyzi teknoloji ve ödeme sistemleri A.Ş. 100.200.103 Bank account has invalid bankcode/name account number combination 100.500.201 Payment type invalid 100.100.501 Invalid credit card brand 200.200.106 duplicate transaction. Please verify that the UUID is unique 200.100.103 Invalid Request Message. The request contains structural errors 200.100.101 Invalid Request Message. No valid XML. XML must be urlencoded! maybe it contains a not encoded ampersand or something similar. 888.100.101 Unknown reason, card holder should call the bank 888.100.102 Unknown reason, card holder should call PSP support 888.100.103 ConnectorTxId1 with the description "Isbank order Id" field size is out of limit. Please check and try again 888.100.104 ConnectorTxId2 with the description "Isbank transaction Id" field size is out of limit. Please check and try again 888.100.105 ConnectorTxId2 with the description "Isbank transaction Id" must be used only for reversal request 888.100.106 Installments value is not valid 888.100.107 Invalid merchant credentials 888.100.108 Insufficient parameter for reversal 888.100.109 Order has a waiting transaction 888.100.110 Invalid retry period unit 888.100.111 Recurring or futurerequest is not allowed to plan for long term 888.100.112 Installment is not allowed for recurring jobs. 888.100.113 There are multiple transactions in the order that can be voided. Use ConnectorTxId1 to identify the right. 888.100.114 The Request is not allowed, because of the merchants risk managment settings. 888.100.115 Duplicate ConnectorTxId1 with the description "Isbank order Id" found. 888.100.116 Wrong security code. 888.100.117 3D Secure Error 888.100.118 No transaction entry found forconnectortxid1 with the description "Garanti order Id" found. iyzico one-off payment and installment 25
Code Description iyzi teknoloji ve ödeme sistemleri A.Ş. 888.100.119 The order contains more than one transaction please specify. 888.100.120 Card transaction limit for this day is reached. 888.100.121 Customer ip transaction limit for this day is reached. 888.100.122 Internal error. 888.100.123 Wrong MerchantID, reference is mapped to an other MerchantID. 888.100.124 Card blacklisted. 800.160.120 Invalid payment data for configured Recurring Transaction Dispatching Type 500.100.203 Channel/Merchant is closed (no processing possible) 000.100.226 Cannot be settled 700.300.400 referenced tx can not be captured (cut off time reached) 700.400.200 cannot refund (refund volume exceeded or tx reversed or invalid workflow?) 700.400.100 cannot capture (PA value exceeded, PA reverted or invalid workflow?) 700.400.300 cannot reverse (already refunded reversed or invalid workflow?) 800.300.301 ip blacklisted 999.999.999 UNDEFINED CONNECTOR/ACQUIRER ERROR 888.777.001 One or more parameters are missing in request. 888.777.015 External Id was already used. 888.777.024 Failed to generate the transaction token. 888.777.025 Request is failed. 888.777.017 Requested amount and payment amount does not match. 888.777.018 Requested currency and payment currency does not match. 888.777.019 Invalid bank id. 888.777.020 Invalid installment number. 888.777.021 Invalid installment amount. 888.777.022 Bank is not enabled for merchant. 888.777.016 Transaction is invalid or same transaction already exists. iyzico one-off payment and installment 26
Code Description 888.777.002 Merchant type is invalid. 888.777.003 Platform merchant is invalid iyzi teknoloji ve ödeme sistemleri A.Ş. 888.777.009 Platform share amount and merchant platform share amount does not match with requested amount. 888.777.007 Invalid payment type. 888.777.006 Invalid platform merchant. 888.777.004 Merchant account is blocked, terminated or declined 888.777.005 API key and secret are invalid. 888.777.013 Invalid currency. 888.777.012 Refund amount exceeds original payment amount. 888.777.010 Partial refund within the same day is not allowed 888.777.008 Transaction mode is invalid. 888.777.014 Transaction id is not valid. 888.777.011 Capture amount exceeds original payment amount. 888.777.026 Return url is invalid. 5.2 Internal error codes Code Description 888.888.100 Missing element "Transaction". 888.888.101 Payment service not given. 888.888.102 Amount invalid. 888.888.103 Missing element "MerchantAccount". 888.888.104 Missing or invalid response from payment service. 888.888.105 Missing or invalid transaction mode. 888.888.106 Missing element "Payment". 888.888.107 3D did not receive the approval process. 888.888.108 Parameter dataload is not parseable. iyzico one-off payment and installment 27
Code Description 888.888.109 Missing element "CreditCardAccount". 888.888.110 Missing StoreKey 888.888.111 Missing or invalid currency. 888.888.112 Missing MerchantName. 888.888.113 Missing Password. 888.888.114 Missing MerchantId. 888.888.115 Missing Brand. 888.888.116 Missing expiry month. 888.888.117 Missing expiry year. 888.888.118 Missing or invalid verification. 888.888.119 Missing credit card number. iyzi teknoloji ve ödeme sistemleri A.Ş. 888.888.120 Serious error with payment service: <name>, contact support. 888.888.121 Payment Type: "CD" is not supported for YAPIKREDI. 888.888.122 Payment type invalid. 888.888.123 Wrong ReferencedTransaction type. 888.888.124 Yapi Kredi 3D process was not successful. 888.888.125 3D amount is different to the transaction amount. 888.888.126 MPI response invalid. 888.888.127 Token missmatch. 888.888.128 Missing element "Basket". 888.888.129 Invalid Reference Id. 888.888.130 Invalid Transaction Id. 888.888.131 Bank details not found for this merchant 888.888.132 Missing or invalid OrderId 888.888.133 Invalid item name 888.888.134 Bank details not found for this merchant 888.888.135 OrderId already used iyzico one-off payment and installment 28