Skip to content

Accept purchase

Request parameters

Parameters                        Type Mandatory Description
version string(10) optional Protocol version.
Default value: 1.0.1
Version 1.0 is deprecated
order_id string(1024) mandatory Order ID which is generated by merchant
merchant_id integer(12) mandatory Merchant unique ID. Generated by Flitt during merchant registration
order_desc string(1024) mandatory Order description. Generated by merchant in UTF-8 always
amount integer(12) mandatory Order amount without separator
currency string(3) mandatory Order currency. Supported values:
AMD — Armenian Dram
AZN — Azerbaijanian Manat
KZT — Tenge
MDL — Moldovian Leu
GEL - Georgian lari
UZS - Uzbekistan sum
Full list of supported currencies
response_url string(2048) optional Merchant site URL, where a customer will be redirected after payment completion
server_callback_url string(2048) optional Merchant site URL, where host-to-host callback will be sent after payment completion. See Callbacks for more details on callbacks.
signature string(40) mandatory Order signature. Required to verify merchant request consistency and authenticity. Signature generation algorithm please see at Signature generation for request and response
lifetime integer(9) optional Order lifetime in seconds. After this period of time, the order will change status to ‘expired’ if the client has not paid it
Default value: 36000
Maximum allowed value: 69120000
merchant_data string(2048) optional Any arbitrary set of data that a merchant wants to get back in the response to response_url or/and server_callback_url, and also in reports
preauth string(1) optional Parameter supported only for Visa/MasterCard payment method
N — the amount is debited from the customer’s card immediately and settled to the merchant account, in accordance with the rules of settlements.
Y — amount is held on the customer card account and not charged until the merchant sends a capture request to confirm.
Default value: N
sender_email string(256) optional Customer email
delayed string(1) optional Delayed order flag.
Y — allows the customer to pay the order during period sent by the merchant in lifetime parameter. Merchant must expect several host-to-host callbacks and browser redirects at the same order. Customer will have the possibility to try to pay the same order_id, if the previous attempt failed
N — after payment is declined order_id customer will be redirected to the merchant site to recreate the order. In this case, only one callback will be sent to server_callback_url
Default value: Y
lang string(2) optional Payment page language. Supported values:
az – Azerbaijani
da – Danish
nl – Dutch
fi – Finnish
ka – Georgian
ko – Korean
ru – Russian
zh – Chinese
uk – Ukrainian
en – English
lv – Latvian
fr – French
cs – Czech
ro – Romanian
it – Italian
sk – Slovak
pl – Polish
es – Spanish
hu – Hungarian
de – German
product_id string(1024) optional Merchant product or service id
required_rectoken string(1) optional Flag which indicates whether card token will be returned in response. See Recuring payment
Default value: N
verification string(1) optional If Y sent, order will be automatically reversed after successful approval
Default value: N
rectoken string(40) optional Card token for recurring transactions.
receiver_rectoken string(40) optional Card token for payout transactions.
design_id string(6) optional ID of checkout design which is set in merchant portal
subscription string(1) optional Y – enable scheduled payments
N – by default, disable scheduled payments
subscription_callback_url string(2048) optional Merchant site URL, where host-to-host callback will be sent after scheduled payment completion
chargeback_callback_url string(2048) optional Url for chargeback callbacks
cancel_url string(2048) optional The URL, where customer will be redirected if clicks "Cancel" button on checkout page
Parameters                        Type Description
order_id string(1024) Order ID which is generated by merchant.
merchant_id integer(12) Merchant unique ID. Generated by Flitt during merchant registration.
amount integer(12) Order amount in cents without separator
currency string(3) Order currency. Supported values: see Currencies
order_status string(50) Order processing status. Can contain the following values:
created — order has been created, but the customer has not entered payment details yet; merchant must continue to request the status of the order
processing — order is still in processing by payment gateway; merchant must continue to request the status of the order
declined — order is declined by Flitt payment gateway or by a bank or by an external payment system
approved — order completed successfully, funds are held on the payer’s account and soon will be credited of the merchant; merchant can provide the service or ship goods
expired — order lifetime expired.
reversed — previously approved transaction was fully reversed. In this case, parameter reversal_amount will be equal to actual_amount
response_status string(50) Request processing status. If parameters sent by merchant did not pass validation then failure, else success
signature string(40) Order signature. Required to verify merchant request consistency and authenticity. Signature generation algorithm please see at Signature generation for request and response
tran_type string(50) Supported values:
purchase
verification
p2p credit
p2p transfer
settlement — split payments
reverse
sender_cell_phone string(16) Customer mobile phone number
sender_account string(16) Customer payment account
masked_card string(19) Masked card number
card_bin integer(6) Card bin — usually first 6 digits 444444r
card_type string(50) Supported values:
VISA, MasterCard, Humo, UzCard
rrn string(50) Commonly not unique transaction ID returned by bank.
approval_code string(6) Commonly not unique authorization code returned by bank.
response_code integer(4) Order decline response code. Possible codes see in Response codes
response_description string(1024) Order response code description, see Response codes
reversal_amount integer(12) The total amount of all reversals for current order
settlement_amount integer(12) The settlement amount for current order
settlement_currency string(3) The currency of order settlement
order_time string(19) Order creation date DD.MM.YYYY hh:mm:ss
settlement_date string(10) Settlement date in format DD.MM.YYYY
eci integer(2) Ecommerce Indicator – parameter specifies whether 3DSecure authentication was performed or not. Supported values:
5 — full 3DSecure authentication performed
6 — merchant supports 3DSecure, but issuing bank does not
7 — neither merchant nor issuing bank supports 3DSecure
fee integer(12) Fee charged by Flitt
payment_system string(50) Payment system which was used for payment. Supported payment systems list see Supported payment systems
sender_email string(254) Customer email
payment_id integer(19) Unique payment ID generated by Flitt payment gateway
actual_amount integer(12) The actual amount held or charged from card.
actual_currency string(3) The actual currency authorized from card
product_id string(1024) Merchant product or service ID
merchant_data string(2048) Any arbitrary set of data that a merchant sends in a request
verification_status string(50) Code verification result.
Supported values:
verified — card successfully verified with code
incorrect — incorrect code entered but limit not exceeded yet
failed — allowed number of invalid attempts to enter code exceeded
created — verification code created but not entered yet
rectoken string(40) Flag which indicates whether Flitt must return card token — token to access card funds without cardholder interaction
rectoken_lifetime string(19) Token lifetime in format DD.MM.YYYY hh:mm:ss
additional_info string(20480) Additional field in JSON format
{
"bank_name": "Some bank in US country",
"bank_country": "US",
"bank_response_code": "decln_1000",
"card_product": "DEBIT",
"card_category": "CLASSIC",
"settlement_fee": 0.2,
"capture_status": "captured",
"client_fee": 0.3,
"ipaddress_v4": "8.8.8.8",
"capture_amount": 200,
"card_type": "VISA",
"reservation_data": null,
"bank_response_description": "General decline",
"transaction_id": 1058755083,
"timeend":"10.01.2018 11:21:30",
"card_number": "4444555566661111",
"payment_method": "apple" or "googlepay" or "card",
"schemeid":"M11111111111111"
}

Examples

{
  "request": {
    "version": "1.0.1",
    "order_id": "TestOrder2",
    "merchant_id": 1549901,
    "order_desc": "Test payment",
    "amount": 1000,
    "currency": "USD",
    "response_url": "http://myshop/thank_you_page",
    "server_callback_url": "http://myshop/callback/",
    "signature": "91ea7da493a8367410fe3d7f877fb5e0ed666490"
  }
}
{
  "response": {
    "rrn": "111111111111",
    "masked_card": "444455XXXXXX1111",
    "sender_cell_phone": "",
    "sender_account": "",
    "currency": "UAH",
    "fee": "",
    "reversal_amount": "0",
    "settlement_amount": "0",
    "actual_amount": "200",
    "response_description": "",
    "sender_email": "test@test.com",
    "order_status": "approved",
    "response_status": "success",
    "order_time": "13.07.2024 01:23:59",
    "actual_currency": "UAH",
    "order_id": "test33694502191",
    "tran_type": "purchase",
    "eci": "5",
    "settlement_date": "",
    "payment_system": "card",
    "approval_code": "123456",
    "merchant_id": 1549901,
    "settlement_currency": "",
    "payment_id": 805243692,
    "card_bin": 444455,
    "response_code": "",
    "card_type": "VISA",
    "amount": "200",
    "signature": "b7884b5c4906956fbac4d20390388d913a78c0b0",
    "product_id": "",
    "merchant_data": "Test merchant data",
    "rectoken": "",
    "rectoken_lifetime": "",
    "verification_status": "",
    "parent_order_id": "",
    "fee_oplata": "0",
    "additional_info": "{\"capture_status\": null, \"capture_amount\": null, \"reservation_data\": \"{}\", \"transaction_id\": 1994930931, \"bank_response_code\": null, \"bank_response_description\": null, \"client_fee\": 0.0, \"settlement_fee\": 0.0, \"bank_name\": null, \"bank_country\": null, \"card_type\": \"VISA\", \"card_product\": \"empty_visa\", \"card_category\": null, \"timeend\": \"13.07.2024 01:24:08\", \"ipaddress_v4\": \"178.54.60.26\", \"payment_method\": \"card\", \"version_3ds\": 1, \"is_test\": true}",
    "response_signature_string": "**********|200|UAH|{\"capture_status\": null, \"capture_amount\": null, \"reservation_data\": \"{}\", \"transaction_id\": 1994930931, \"bank_response_code\": null, \"bank_response_description\": null, \"client_fee\": 0.0, \"settlement_fee\": 0.0, \"bank_name\": null, \"bank_country\": null, \"card_type\": \"VISA\", \"card_product\": \"empty_visa\", \"card_category\": null, \"timeend\": \"13.07.2024 01:24:08\", \"ipaddress_v4\": \"178.54.60.26\", \"payment_method\": \"card\", \"version_3ds\": 1, \"is_**********\": true}|200|123456|444455|VISA|UAH|5|0|444455XXXXXX1111|Test merchant data|1549901|**********33694502191|approved|13.07.2024 01:23:59|805243692|card|success|0|111111111111|**********@**********.com|0|purchase"
  }
}
{
    "response": {
        "error_code": 1011,
        "error_message": "Parameter `amount` is missing",
        "request_id": "5htKi0wf7zEHn",
        "response_status": "failure"
    }
}