Skip to content

Payment Integration Services

Desired values are posted and transactions are redirected to Nkolay Hosted Payment page. Card information goes directly to Nkolay servers, security is provided by Nkolay. iFrame integration can be done within the site.

Payment link is sent to the card user via SMS or email. User clicks the link and is redirected to Nkolay Hosted Payment page, transactions are performed here.

3. API - Structure Where Card Information is Collected by Merchant

Section titled “3. API - Structure Where Card Information is Collected by Merchant”

Merchant collects card information on their own page and processes transactions via Nkolay API. In this structure, since card information is collected by the merchant, PCI DSS requirements belong to the merchant.

Test environment information

sx (Token): 118591467|bScbGDYCtPf7SS1N6PQ6/+58rFhW1WpsWINqvkJFaJlu6bMH2tgPKDQtjeA5vClpzJP24uA0vx7OX53cP3SgUspa4EvYix+1C3aXe++8glUvu9Oyyj3v300p5NP7ro/9K57Zcw==
sx list: 118591467|bScbGDYCtPf7SS1N6PQ6/+58rFhW1WpsWINqvkJFaJlu6bMH2tgPKDQtjeA5vClpzJP24uA0vx7OX53cP3SgUspa4EvYix+1C3aXe++8glUvu9Oyyj3v300p5NP7ro/9K57Zcw==|3hJpHVF2cqvcCZ4q6F7rcA==
sx cancel: 118591467|bScbGDYCtPf7SS1N6PQ6/+58rFhW1WpsWINqvkJFaJlu6bMH2tgPKDQtjeA5vClpzJP24uA0vx7OX53cP3SgUspa4EvYix+1C3aXe++8glUvu9Oyyj3v300p5NP7ro/9K57Zcw==|yDUZaCk6rsoHZJWI3d471A/+TJA7C81X
Merchant Secret Key: _YckdxUbv4vrnMUZ6VQsr
URL: https://paynkolaytest.nkolayislem.com.tr/Vpos

To receive payments, the values given specifically to you are sent by posting to the Test environment URL: https://paynkolaytest.nkolayislem.com.tr/Vpos using HTTP POST method.

Production environment URL is: https://paynkolay.nkolayislem.com.tr/Vpos

The parameters you can POST to the service are as follows. All parameters must be sent in the request body using standard HTML Form Post method.

Application Flow:

  • Validity check is performed on the information you send in the form, if there is missing or incorrect information, an error message is returned and the flow ends.
  • The information you send in the form is checked. If it is not correct, the flow ends with an error message.
  • If the information you send in the form is correct, the form where credit card information will be entered is displayed.
  • After entering credit card information in the form, installment options are displayed when leaving this field. Single payment is selected as default.
  • After entering all credit card information and selecting the appropriate installment option, the payment transaction is performed by pressing the “Complete Payment” button.
  • If the payment transaction will be 3D, the flow is redirected to the 3D page, if not 3D, it is directly concluded.
  • If the payment transaction is successfully concluded, successful result values are posted to the “successUrl” page and redirected.
  • If the transaction fails, failed transaction information is posted to the “failURL” page.
NameTypeDescriptionRequiredExample Value
sxstringLogin code required for Web Service. Required parameters are encrypted within the code. This field will be provided to you by the Payment organization. (Also referred to as Token value)*Required114488219
amountdecimalPayment amount. Decimal separator should be . (dot).*Required1280.10 (dot should be used as decimal separator)
clientRefCodestringYour own reference number. (Should not contain Turkish characters. Can be up to 1024 characters.)*RequiredExample: 5231As-FE2A36
successUrlstringWe post the result of successful transactions to this page.*Requiredhttps://yourdomain.com.tr/success
failUrlstringWe post the result of unsuccessful transactions to this page.*Requiredhttps://yourdomain.com.tr/fail
secondstringIf you want to show the remaining time in your cart (session timeout period) in the Virtual POS, you can post the remaining seconds. We show the remaining seconds for your cart as a countdown on our page. When time expires, we disable the payment button.Optional600
cardcampaignstringIf desired, you can run campaigns for Visa, Master Cards. You need to send parameter 4 for Visa cards, 5 for MasterCard. If the customer’s credit card number is not the relevant digit, the customer is warned and only cards starting with the card number you want are allowed for payment.Optional4 (Visa) or 5 (Master Card)
binstringIf desired, you can only accept transactions from specific card bins. (First 6 digits of the card.) You can send a single card bin, or multiple bins separated by pipesign.Optional
languagestringFor language option, “en” for English, “ru” for Russian should be entered. If no parameter is sent, the language is Turkish.Optionalen
detailstringIf sent as “true” to the hosted payment page, input fields that you can get from your customer (Name Surname (inputNamesurname), TC Identity No (inputTckn), Mobile Phone (inputPhone), Email Address (inputEmail), Description (inputDescription) and Address (inputAddress)) will appear on the hosted payment page. If you POST these input fields to us with other variables, we automatically fill the Description fields. If you send this information via API, parameter names should be as follows: (tckn,email,address,phone,namesurname,description) It is not mandatory to send these fields filled. You can access the information sent via API from your panel.Optionaltrue
agentCodestringIf the transaction is made through a sub-dealer, you can send your sub-dealer’s code with this value.Optional7683323
use3DstringIf “true” is sent, it performs the transaction as 3D secure regardless of the 3D secure limit. If sent empty, the current 3D transaction limit is applied.*Requiredtrue
transactionTypestringYou can process as “sales” or “presales” provision.*Requiredsales
rndstringYou need to send us the transaction date with the DateTime.Now function. (This value will be posted back to you in the transaction result.)*Required09-08-2021 15:24:22
instalmentsstringIf installments are entered, the payment transaction will be made with that number of installments. For example: entering 2 is 2 installments. If 1 is entered, payment transactions will be made as single payment (no installments) If left empty, installments will come according to default payment settings.Optional
hashDatastringWith PHP: $hashstr = $sx . $clientRefCode . $amount . $successUrl . $failUrl . $rnd . $merchantSecretKey; $hashData = base64_encode(pack(‘H*‘,sha1($hashstr))); .net calculation is given in Hash Request and Response pages in the left menu.*RequiredBH51O7coM4dtd/WoRMNg4o8H2XPI=
hashDataV2stringWith PHP: $hashstr = $sx . "" . $clientRefCode . "" . $amount . "
MerchantCustomerNostringWith MerchantCustomerNo you can send your dealer or sub-member merchant number to the virtual pos. You can search your transactions by this number under the Customer Number heading from your Pay N Kolay panel. (It is useful to use when clientRefCode is long and complex.)Optional93423410
customerKeystringThis value must be sent to enable card storage with the hosted payment page. If the cardholder makes their transaction with “Pay and Save Card”, the card is saved and the tranId value is given in the service response.Optional13813813813
ECOMM_PLATFORMstringIf you are developing software as B2B, you can write the name of your own platform.OptionalCetvel Software
pIsCommissionPaidByCustomerstringIf 0 is sent, bank commission is reflected to the customer, if 1 is sent, it is reflected to the merchant.Optional1
currencyCodestringIf this value is not sent, the transaction is performed in Turkish Lira (TL) by default. If you want to accept payment in foreign currency, you can send ‘840’ for USD, ‘978’ for EUR. The default currency code is ‘949’ for TL. To process in foreign currency, you must have a foreign currency account with Aktif Bank.Optional1