· 5 years ago · Jan 07, 2020, 05:24 PM
1import hashlib
2
3def get_url(currency, amount, secret_key, merchant_id, vk_user_id, anypay_merchant_url):
4	# Формирование контрольной подписи в форме оплаты
5	# Склеиваются параметры currency, amount, секретный ключ, merchant_id и pay_id
6	# Разделяются ':'
7	# От полученной строки получается md5
8
9	sign_md5 = hashlib.md5(f'{currency}:'
10						   f'{amount}:'
11						   f'{secret_key}'
12						   f':{merchant_id}'
13						   f':{vk_user_id}'.encode('utf-8')).hexdigest()
14
15	anypay_url = f'{anypay_merchant_url}' \
16				 f'?currency={currency}' \
17				 f'&merchant_id={merchant_id}' \
18				 f'&amount={amount}' \
19				 f'&pay_id={vk_user_id}' \
20				 f'&sign={sign_md5}'
21
22	return anypay_url