Private
Payouts
Transfer of funds from the company account to any number of recipients on the card, account, email or phone

Transfer from store account to the Visa/Mastercard card or account number of any ukrainian bank and also to the recipient's card token.
Result of request execution is transfer of money funds from store account to the recipient's card.
Scheme of API payout
Forming a request to API for self-integration:
Example of using SDK:
#!/bin/bash
PUBLIC_KEY='your_public_key'
PRIVATE_KEY='your_private_key'
API_URL='https://www.liqpay.ua/api/request'
JSON="{ 
	\"action\" : \"p2pcredit\",
    \"version\" : 3,
    \"public_key\" : \"${PUBLIC_KEY}\", 
    \"amount\" : 1,
    \"currency\" : \"USD\",
    \"description\" : \"description text\",
    \"order_id\" : \"order_id_1\",
    \"receiver_card\" : \"4731195301524633\"
}"
# DATA is base64_encode result from JSON string
DATA=$(echo -n ${JSON} | base64)
# SIGNATURE is base64 encode result from sha1 binary hash from concatenate string ${PRIVATE_KEY}${DATA}${PRIVATE_KEY}
SIGNATURE=$(echo -n "${PRIVATE_KEY}${DATA}${PRIVATE_KEY}" | openssl dgst -binary -sha1 | base64)
# REQ is json response from liqpay
REQ=$(curl --silent -XPOST ${API_URL} --data-urlencode data="${DATA}" --data-urlencode signature="${SIGNATURE}")
echo "Result: ${REQ}"
$liqpay = new LiqPay($public_key, $private_key);
$res = $liqpay->api("request", array(
'action'         => 'p2pcredit',
'version'        => '3',
'amount'         => '1',
'currency'       => 'USD',
'description'    => 'description text',
'order_id'       => 'order_id_1',
'receiver_card'  => '4731195301524633',
'receiver_last_name'  => 'LastName',
'receiver_first_name'  => 'FirstName'
));
HashMap<String, String> params = new HashMap<String, String>();
params.put("action", "p2pcredit");
params.put("version", "3");
params.put("amount", "1");
params.put("currency", "USD");
params.put("description", "description text");
params.put("order_id", "order_id_1"); 
params.put("receiver_card", "4731195301524633");  
params.put("receiver_last_name", "LastName");
params.put("receiver_first_name", "FirstName");

LiqPay liqpay = new LiqPay(PUBLIC_KEY, PRIVATE_KEY);
HashMap<String, Object> res = liqpay.api("request", params);    
System.out.println(res.get("status"));
from liqpay import LiqPay

liqpay = LiqPay(public_key, private_key)
res = liqpay.api("request", {
"action"         : "p2pcredit",
"version"        : "3",
"amount"         : "1",
"currency"       : "USD",
"description"    : "description text",
"order_id"       : "order_id_1",
"receiver_card"  : "4731195301524633",
"receiver_last_name"  : "LastName",
"receiver_first_name" : "FirstName"
})
liqpay = Liqpay::Liqpay.new(
:public_key  => 'public_key',
:private_key => 'private_key'
)
res = liqpay.api("request", {
:action         => "p2pcredit",
:version        => "3",
:amount         => "1",
:currency       => "USD",
:description    => "description text",
:order_id       => "order_id_1",
:receiver_card  => "4731195301524633",
:receiver_last_name  => "LastName",
:receiver_first_name => "FirstName"
})
LiqPay = liqpay:init(PublicKey, PrivateKey),
Res = liqpay:api("request", [
{<<"action">>, <<"p2pcredit">>},
{<<"version">>, <<"3">>}, 
{<<"amount">>, <<"1">>}, 
{<<"currency">>, <<"USD">>}, 
{<<"description">>, <<"description text">>}, 
{<<"order_id">>, <<"order_id_1">>}, 
{<<"receiver_card">>, <<"4731195301524633">>}, 
{<<"receiver_last_name">>, <<"LastName">>}, 
{<<"receiver_first_name">>, <<"FirstName">>}
], LiqPay)
var LiqPay = require('liqpay');
var liqpay = new LiqPay(public_key, private_key);
liqpay.api("request", {
"action"         : "p2pcredit",
"version"        : "3",
"amount"         : "1",
"currency"       : "USD",
"description"    : "description text",
"order_id"       : "order_id_1",
"receiver_card"  : "4731195301524633",
"receiver_last_name"  : "LastName",
"receiver_first_name" : "FirstName"
}, function( json ){
console.log( json.status );
});
my $liqpay = Liqpay->new($public_key,$private_key);
my $res = $liqpay->api("request",
{
'action'         => 'p2pcredit',
'version'        => '3',
'amount'         => '1',
'currency'       => 'USD',
'description'    => 'description text',
'order_id'       => 'order_id_1',
'receiver_card'  => '4731195301524633',
'receiver_last_name'  => 'LastName',
'receiver_first_name' => 'FirstName'
}
);
Init("my_public_key", "my_private_key")
Api("request", map[string]interface{}{
    "action": "p2pcredit",
    "version": 3,
    "public_key": PublicKey,
    "amount": 1,
    "currency": "UAH",
    "description": "Test payment",
    "order_id": "order_id_1",
    "receiver_card": "4731195301524633",
})
Options for generating data:
Main
Parameter Required Type Description
version Required Number Version API. Current value - 3
public_key Required String Public key - the store identifier. You can get the key in the store settings
action Required String p2pcredit
amount Required Number Payment amount. For example: 5, 7.34
currency Required String Payment currency. Possible values: USD, EUR, RUB, UAH
description Required String Payment description.
ip Required String Client IP
order_id Required String Unique purchase ID in your shop. Maximum length is 255 symbols.
language Optional String Customer's language ru, uk, en
server_url Optional String URL API in your store for notifications of payment status change (server->server). Maximum length is 510 symbols. Learn more
taxed Optional String
Sign of payment of taxes from the payment. Valid Values: Дохід не підлягає оподаткуванню
Parameters for transfer to the current account
receiver_account Required String Recipient's account number.
receiver_mfo Required String Recipient's account MFI.
receiver_okpo Required String Recipient's account OKPO.
receiver_company Required String Name of recipient's current account.
Parameters for transfer to the card
receiver_card Required String Recipient's card number
Parameters for transfer to the card's token
receiver_card_token Required String Recipient's card token. For example: B5BВB0D00B88B00ED00A00D0D
Parameters for transfer via phone number
receiver_phone Required String Recipient's phone number.
Parameters for transfer via email
receiver_email Required String Recipient's email
Sender parameters
sender_address NEW Optional String Sender's address
sender_city Optional String Sender's city
sender_country_code Optional String Country code of the sender. Digital ISO 3166-1 code
sender_first_name Optional String Sender's first name
sender_last_name Optional String Sender's last name
sender_postal_code Optional String Sender's zip code
Receiver parameters
receiver_first_name Optional String Recipient first name
receiver_last_name Optional String Recipient last name
Other parameters
customer Optional String Unique customer ID in your shop. Max length 100 symbols.
info Optional String Information to add details to payment. For example: "External information for payments"
Example response:
{
  "action": "p2pcredit",
  "payment_id": 165189,
  "status": "success",
  "version": 3,
  "type": "p2pcredit",
  "public_key": "i000000000",
  "acq_id": 414963,
  "order_id": "98R1U1OV1485849059893399",
  "liqpay_order_id": "NYMK3AE61501685438251925",
  "description": "description text",
  "amount": 0.1,
  "currency": "UAH",
  "sender_commission": 0.0,
  "receiver_commission": 0.0,
  "agent_commission": 0.0,
  "amount_debit": 0.1,
  "amount_credit": 0.1,
  "commission_debit": 0.0,
  "commission_credit": 0.0,
  "currency_debit": "UAH",
  "currency_credit": "UAH",
  "sender_bonus": 0.0,
  "amount_bonus": 0.0,
  "mpi_eci": "7",
  "is_3ds": false,
  "create_date": 1501687336377,
  "end_date": 1501687336377,
  "transaction_id": 165189
}
Response parameters
Parameter Type Description
acq_id Number Acquirer ID
action String Transaction type. Possible values: pay - payment, hold - amount of hold on sender's account, paysplit - splitting payments, subscribe - creation of a regular payment, paydonate - donation, auth - card preauth, regular - regular payment
agent_commission Number Agent comission in payment currency
amount Number Payment amount
amount_bonus Number Payer bonus amount in payment currency debit
amount_credit Number Payment amount for credit in currency of currency_credit
amount_debit Number Payment amount for debit in currency of currency_debit
commission_credit Number Commission from the receiver in currency_credit
commission_debit Number Commission from the sender in currency_debit
create_date String Date of payment creation
currency String Payment currency
currency_credit String Transaction currency of credit
currency_debit String Transaction currency of debit
description String Payment description
end_date String Date of payment edition/end
is_3ds Boolean Possible values:
true - transaction passed with 3DS,
false - transaction passed without 3DS
liqpay_order_id String Payment order_id in LiqPay system
mpi_eci Number Possible values: 5 - the transaction passed with 3DS (issuer and acquirer support 3d Secure technology), 6 - the issuer of the payer card does not support 3d Secure technology, 7 - the operation passed without 3d Secure
order_id String Order_id payment
payment_id Number Payment id in LiqPay system
public_key String Shop public key
receiver_commission Number Receiver comission in payment currency
redirect_to String The link to which a customer has to be redirected to confirm the payment with 3D-Secure
sender_bonus Number Sender's bonus in the payment currency
sender_commission Number Commission from the sender in the payment currency
status String Payment status.
Available values:
Final payment statuses
error Failed payment. Data is incorrect
failure Failed payment
success Successful payment
transaction_id Number Id transactions in the LiqPay system
type String Payment type
version Number Version API. Present value - 3