Как правильно составить подпись в api Cryptomus?
def create_invoice(self, amount, currency):
json_data = {
'currency': currency,
'amount': amount,
'merchant': self.merchant_id,
'order_id': ''.join(random.choice(string.ascii_uppercase) for _ in range(10))
}
data = json.dumps(json_data)
data_base64 = base64.b64encode(data.encode('utf-8')).decode('utf-8')
sign = hashlib.md5((data_base64 + self.token).encode('utf-8')).hexdigest()
json_data['sign'] = sign
resp = self.session.post(f'{self.api_url}/v1/payment', headers=self.session.headers, json=json_data)
print(resp.json())
документация: https://doc.cryptomus.com/getting-started/request-format
Возвращает такой ответ:
{'message': 'Invalid Sign.'}
Источник: Stack Overflow на русском