Недавно озадачился этим вопросом. После того как ты создал post запрос тебе приходит ответ в формате json. из этого ответа тебе нужно взять строку "payment_url" это и будет ссылка для пользователя, по которой он пройдёт(у меня сразу на сайте в фрейме грузится) для оплаты.
Использую python и у меня это выглядит так:
html:
<form action="../cgi-bin/btc/satoshi_transit.cgi" method="post" id="form">
<div id="text">
Логин:
</div>
<div id="input_login">
<input type="text" name="login">
</div><br>
<div id="text">
email:
</div>
<div id="input_login">
<input type="text" name="email">
</div><br>
<div id="text">
Сколько купить?:
</div>
<div id="input_pwd">
<input type="text" name="satoshi">
</div><br>
<div id="ibutton">
<input type="submit" value="Купить" class="button">
</div>
</div>
</form>
и обработчик на python:
#!/usr/bin/python
#--*--coding: utf-8--*--
import cgi
import json
from urllib2 import Request, urlopen
form = cgi.FieldStorage()
# присваиваем переменным имена с формы
login = form.getfirst("login", "")
email = form.getfirst("email", "")
satoshi = form.getfirst("satoshi", "")
login = cgi.escape(str(login))
email = cgi.escape(str(email))
satoshi = (float(satoshi))
values = {
"settled_currency": "BTC",
"return_url": "http://mysite.ru/buy/thankyou.html",
"notify_url": "https://mysite.ru/cgi-bin/btc/order-received.cgi",
"notify_email": "myemai@mail.ru",
"price": satoshi,
"currency": "BTC",
"reference": {
"customer_name": login,
"order_number": 123,
"customer_email": email
},
"item": "la2coin",
"description": "buy la2coin"
}
data = json.dumps(values)
headers = {
'Content-Type': 'application/json',
'Authorization': 'Token your_key_here'
}
request = Request('https://www.bitcoinpay.com/api/v1/payment/btc',
data=data, headers=headers)
response_body = urlopen(request).read()
responce = json.loads(response_body)
url = responce["data"]["payment_url"]
print "Content-Type: text/html; charset=utf-8"
print ""
print "<meta http-equiv=\"refresh\" content=\"1;URL=%s\" />" % url
Проверки на введенные в форму значения опустил.