Во многих случаях удобно загружать форму оплаты стандартными средствами языка программирования вашего сервера. Сделать это можно с использованием обычного POST запроса. Ниже мы рассмотрим пример загрузки и отображения формы на PHP.
По аналогии с IFRAME-формой или HTML-формой можно использовать форму со свободной суммой.
В этом случае достаточно сделать POST запрос без параметров на следующий URL:
			https://demo.paykeeper.ru/form/inline/, где 
			demo.paykeeper.ru необходимо заменить на адрес вашего сервера. Обычно он имеет вид 
			https://example.server.paykeeper.ru
Пример загрузки и отображения формы на PHP:
| 1 2 3 | <?php    echo file_get_contents("https://demo.paykeeper.ru/form/inline/"); ?> | 
Результатом будет форма следующего вида:

Вид формы оплаты на сайте
Настройка полей формы производятся в личном кабинете PayKeeper в разделе «Настройка формы оплаты».

Настройка формы оплаты
В случае, если предполагается, что в дальнейшем сумму оплаты изменить нельзя, то загрузка формы должна быть произведена POST запросом по URL: https://demo.paykeeper.ru/order/inline/, где demo.paykeeper.ru необходимо заменить на адрес Вашего сервера.
В эту форму оплаты нужно предварительно передать POST параметры: сумму заказа, номер заказа, идентификатор плательщика.
| Параметр | Назначение | 
| Параметр:clientid | Назначение:Идентификатор пользователя в системе предприятия. Например, логин на сайте, id в базе данных и т.п. | 
| Параметр:sum | Назначение:Сумма заказа в рублях. Допустимы дробные значения. | 
| Параметр:orderid | Назначение:Номер заказа в системе предприятия. | 
| Параметр:client_phone | Назначение:Номер телефона пользователя. | 
Ниже приведён пример на PHP с передачей параметров в форму и отображением формы:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php  $client_login="Иванов Иван"; $orderid="9933413";   $order_sum="1530";   $optional_phone="9183331122";    $payment_parameters = http_build_query(array( "clientid"=>$client_login,                 "orderid"=>$orderid,                 "sum"=>$order_sum,                 "client_phone"=>$optional_phone));   $options = array("http"=>array(                 "method"=>"POST",                 "header"=>                 "Content-type: application/x-www-form-urlencoded",                 "content"=>$payment_parameters                    ));   $context = stream_context_create($options);   echo file_get_contents("https://demo.paykeeper.ru/order/inline/",FALSE, $context);   # Вместо demo.paykeeper.ru нужно указать адрес вашего сервера paykeeper ?> | 
 
Можно также, при необходимости, указать корзину товаров, которая будет использоваться для формирования чека по 54-ФЗ:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | <?php  $client_login="Иванов Иван"; $orderid="9933413";     $optional_phone="9183331122";   /* Массив товаров в заказе */ $basket = array( 	array( 		'name'  => 'Тортилья, 20 см, 756 г', 		'count' => '5', 		'price' => '381.00' 	) ); /* Собираем массив товаров для paykeeper */ /* https://docs.paykeeper.ru/onlain-kassa-54-fz/tovary-v-cheke-54-fz-full/ */ $total = 0; $prods  = array(); foreach ($basket as $row) { 	$prods[] = array( 		'name'      => $row['name'], 		'price'     => $row['price'], 		'quantity'  => $row['count'], 		'sum'       => $row['price'] * $row['count'], 		'tax'       => 'none', 		'item_type' => 'goods', 	); 	$total += $row['price'] * $row['count']; } /* Доставка */ $prods[] = array( 	'name'      => 'Доставка', 	'price'     => 300, 	'quantity'  => 1, 	'sum'       => 300, 	'tax'       => 'none', 	'item_type' => 'service', ); $total += 300;  $payment_parameters = http_build_query(array( "clientid"=>$client_login,                 "orderid"=>$orderid,                 "sum"=>$total,                 "client_phone"=>$optional_phone,                 "cart"=>json_encode($prods)));   $options = array("http"=>array(                 "method"=>"POST",                 "header"=>                 "Content-type: application/x-www-form-urlencoded",                 "content"=>$payment_parameters                    ));   $context = stream_context_create($options);   echo file_get_contents("https://demo.paykeeper.ru/order/inline/",FALSE, $context);   # Вместо demo.paykeeper.ru нужно указать адрес вашего сервера paykeeper ?> | 
 
Если все проделано правильно, форма будет выглядеть следующим образом:

Вид формы оплаты на сайте
Менеджер перезвонит вам и расскажет про детали подключения