Creating a payment (easy way)
Last updated
Last updated
If your website was created using CMS please take a look at the list of our modules.
To initiate a payment through a single form of payment, you just need to direct the user to a special URL and transfer a number of required parameters.
GET
https://unitpay.ru/pay/PUBLICKEY?sum&account&desc&signature
The request is used to initialize a payment
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Example:
****
PUBLIC KEY: The value of the project public key can be found on the project page in the special Payment Form section of your personal account.
Request digital signature
For additional security of your payments, we perform mandatory verification of the digital signature when creating a payment. The signature guarantees protection against the substitution of the transmitted values (e.g., changing the payment amount or order number).
Example of creating a digital signature in PHP:
Default payment method
You can define the payment system that will be used for the user by default. To do this, add parameter / system_code corresponding to the alphabetic code of the payment system at the end of the URL of your payment form (for example: https://unitpay.money/pay/demo\).
Return to the store's website
After initializing the payment, the user goes to the receipt page where the payment status is tracked. After users have received a successful or error status, they are redirected to the partner's site (Fail URL/Success URL fields in the personal account settings) with GET parameters:
publickey
string
public key. You can find it under the Settings tab of your project
backurl
string
The user's return address from the payment form without making a purchase; the project address is used by default. The project domain must be used in the address. Examples: https://redirect.<project domain>/?someParams", "https://<project domain>/redirect/
locale
string
It is mandatory to specify the payment form language, acceptable values: ru, en. By default, the form language is determined based on the country that the user's IP address belongs to
currency
string
The order currency according to ISO 4217 (RUB, UAH, BYN, EUR, USD etc. Currency codes https://help.unitpay.ru/v/master/book-of-reference/payment-system-codes). If the payment system does not support the required currency, the amount will be converted to the payment system currency
signature
string
It protects you from hackers: substituting the description or price of the order, placing a link to the payment on the resources of fraudsters.
desc
string
Order description. It is used only for informing when making a payment
account
string
Subscriber ID in your system (for example, email or order number).
sum
number
Payment amount. In rubles by default. See the additional currency parameter
Value
Description
signature
line
Digital signature. It is formed as sha256( account + "{up}" + currency + "{up}" + desc + "{up}" + sum + "{up}" + secretKey), where sha256 is the hashing method; {up} is the parameter separator in the hash function; account, sum, currency, desc are the payment initialization parameters described above; secretKey is the secret key of the project (available in your personal account);
Important Note. If you do not transmit currency to the payment form, this parameter should not be used in signature generation.
Value
Description
account
text
Subscriber ID in the partner's system (for example, the subscriber's login or email)
paymentId
number
Payment number in the UnitPay system