Title: Could someone explain how to implement bitcoinpayflow.com Post by: BrannigansLaw on January 15, 2012, 03:58:50 PM I need a basic step by step really, I have no idea where to put the code :-\ There will be a small reward for the best answer.
http://www.bitcoinpayflow.com/dashboard Creating Orders POST /orders Request { "foreign_order_id" : "1234", "total_amount" : "23.223", "custom_field" : "foobar", "auth_token" : auth_token } Response { "order" : { "bitcoin_address" : "1F2vgWSRcfRzZz1LetFxrk6qfWhpTeW32s"} } view raw gistfile1.txt This Gist brought to you by GitHub. Handling Payment Notifications We send payment notifications to the URL you specify. It is important for you to verify the post is from us. 1) Create a string with parameter pairs under "Payment Notification" in alphabetical order, it should look like this: param1=v1params2=v2.... Do not include the signature. 2) Add your access token in front of the string 3) Perform a SHA2 hash function Post http://yourwebsite.com/payment_notification Parameters { "Payment Notification" : { "foreign_order_id" : "A1234", "amount" : "2.20", "transaction_fee" : 0.0, "bitcoin_address" : "1AFZ6Cv8q96rFaS9T8fR1y2j2CjNDcTIVD", "number_of_confirmations" : 1, "transaction_timestamp" : 1307671121, "category" : "receive"/"send", "order_status" : "satisfied"/"open", "signature" : "unique signature for this request" } } You can send yourself a test payment notification using this link: http://www.bitcoinpayflow.com/test_pn view raw gistfile1.txt This Gist brought to you by GitHub. Creating Additional Access Tokens We provide you with your primary access token upon signup. Additional access tokens can be created to provide order and payment notifications for individual customers. For example, if you are building a Bitcoin marketplace, an access token can be created for each individual seller. We handle tracking of each order, and forward payments directly to the seller. POST /tokens Request { "auth_token" : "Your primary access token" "token" : { "bitcoin_address" : "Bitcoin address associated with this token" } } Response { "token" : { "hash_id" : "43a7441a186d22266a0456842bca1934" } } view raw gistfile1.txt This Gist brought to you by GitHub. Implementation Examples Ruby example for creating an order: require "rubygems" require "net/http" @base_url = "https://www.bitcoinpayflow.com" @access_token = "yourtoken" # create an order: uri = URI.parse("#{@base_url}/orders") http = Net::HTTP.new(uri.host, uri.port) request = Net::HTTP::Post.new(uri.request_uri) request.set_form_data({"auth_token" => @access_token, "foreign_order_id" => "order123", "total_amount" => 0.01, "custom_field" => "blah blah blah"}) response = http.request(request) puts "Response: #{response.body}" |