YooMoney API
Old versions of the API
Help
Sign up for YooMoney
Form for email notifications

This is an old version of the API. Switch to the YooMoney API.

Payment form parameters
Address for form submission
https://yoomoney.ru/eshop.xml
Parameters
ParameterTypeDescription
Required parameters
shopIdlongThe merchant ID issued when activating YooMoney.
scidlongThe merchant’s number, issued when activating YooMoney.
sumCurrencyAmountOrder amount.
customerNumber
normalizedString,
128 characters
Customer ID used by merchant. The ID can be the customer’s contract number, username, or other.
The same customer ID can be used repeatedly in payments.
Optional parameters
orderNumber
normalizedString,
64 characters
Unique number in the merchant’s system. YooMoney ensures that this number is unique in conjunction with the shopId parameter.
If a payment with the same order number was already successfully processed, YooMoney will decline repeat payment attempts.
shopArticleIdlongProduct ID. Issued when activating YooMoney. Used if the store has multiple payment forms for various products.
shopSuccessURLstring, URL path,
250 characters
The URL for the Back to store link on the successful payment page. You must enable dynamic URL processing with YooMoney (ask your manager) for this parameter to be processed.
shopFailURLstring, URL path,
250 characters
The URL for the Back to store link on the payment error page. You must enable dynamic URL processing with YooMoney (ask your manager) for this parameter to be processed.
cps_email
string,
100 characters
Payer’s email address. If it is passed, the corresponding field on the payment confirmation page will be pre-filled (step 3 on the payment flow).
You can transmit only email address (we check it).
cps_phonestring,
15 characters, digits only
Payer’s mobile phone number. If passed, the corresponding box on the payment confirmation page will be pre-filled (step 3 in the payment process). The phone number is used for paying cash via payment kiosks.
paymentType
normalizedString,
5 characters
Payment method. We recommend passing an empty value in this field so that the payment method will be selected in YooMoney.
Examples:
  • PC — payment from a YooMoney for Shopping wallet;
  • AC — payment from any bank card or via Mir Pay (for mobile devices on Android).

If the payment form specifies a payment method that the merchant doesn’t allow, the customer can’t complete the payment.

custNamestringPayer’s full name
custAddrstringDelivery address or the payer’s home address
custEmailstringPayer’s email address, only for sending email notifications
orderDetailsstringOrder details: a list of purchased products, quantities, payment designation, and so on.
ym_merchant_receipt
string
Details for creating a receipt in the JSON format.
The parameter is transmitted and presents as mandatory if you set up interaction with your online sales register via YooMoney and transmits the details for creating the receipt in the payment form.
topped_up_phonestring,
max 15 characters, digits only

For those who add money to phone balance (MCC 4814) only

The phone number to be topped up. Example: 79110000000.
Required parameter when you process payments made from bank card (paymentType="AC"), via YooMoney wallet (paymentType="PC"), or if a payment method was selected on the YooMoney's side (paymentType="").

The page Email notifications of payments shows how payment form parameters correspond to fields from payment notifications. This page also has an example of an email notification.

Examples
Example of the payment form
HTML
<form action="https://yoomoney.ru/eshop.xml" method="post">
    <input name="shopId" value="1234" type="hidden"/>
    <input name="scid" value="4321" type="hidden"/>
    <input name="sum" value="100.50" type="hidden"/>
    <input name="customerNumber" value="abc000" type="hidden"/>
    <input name="shopArticleId" value="567890" type="hidden"/>
    <input name="paymentType" value="AC" type="hidden"/>
    <input name="orderNumber" value="abc1111111" type="hidden"/>
    <input type="text" name="cps_email" value="user@domain.com" />
    <input type="text" name="cps_phone" value="79009009090" />
    <input name="custName" value="Ivanov Petr Sidorovich" type="hidden"/>
    <input name="custEmail" value="user@domain.com" type="hidden"/>
    <input name="custAddr" value="Moscow, p/o 100" type="hidden"/>
    <input name="orderDetails" value="Happiness for everyone. Bagged, in bulk." type="hidden"/>
    <input type="submit" value="Pay"/>
</form>
Example of the payment form for adding money to phone balance
HTML
<form action="https://yoomoney.ru/eshop.xml" method="post">
    <input name="shopId" value="1234" type="hidden"/>
    <input name="scid" value="4321" type="hidden"/>
    <input name="sum" value="100.50" type="hidden"/>
    <input name="customerNumber" value="abc000" type="hidden"/>
    <input name="paymentType" value="AC" type="hidden"/>
    <input name="orderNumber" value="abc1111111" type="hidden"/>
    <input name="cps_phone" value="79110000000" type="hidden"/>
    <input name="cps_email" value="user@domain.com" type="hidden"/>
    <input required name="topped_up_phone" value="79000000000" type="hidden">
    <input type="submit" value="Pay"/>
</form>
See also
Email notifications of payments Test payment