marko001 Posted February 6 Share Posted February 6 I needed to integrate Paypal "Buy Now" buttons into my applications, in order to give my customer opportunity to directly purchase them without sending them to a merchant website. So, and thanks to @mistersquirrle and @TheXman I developed a .au3 that includes most important API calls to Paypal in order to Request Token Create a "buy now" direct link Monitor order until processed and payed Capture money and release funds to own PayPal account Surely this .au3 could be improved but it can be a good starting point to integrate PayPal in your own applications. I'm including also json.au3 and BinaryCall.au3 needed to decode Json data. How it works: Example.au3, included, gives you an overview of functionality. Basically you need: To Identify yourself with Paypal and receive a Token to use on further calls $sToken = _PayPalGetToken($sURL, $EndPoint_GetToken, $ClientId, $SecretId) To create a Pay Now link, containing details on your product (name, price, currency) and landing pages after payment is complete or canceled (you can also avoid these pages but it will show a bad 404 error to customer after he finished the purchase or cancel it) $aReturn = _PaypalCreateOrder($sURL, $sToken, $EndPoint_Orders, $Currency, $Price, $product, "en-US", $URL_Complete, $URL_Cancel) $aReturn returns a link to shellexecute() in order to bring customer to paying page This is an example of product ; # PRODUCT INFO Global $Currency = "EUR" Global $Price = "0.5" Global $product = "Test Product" Global $URL_Complete = "https://example.com/complete.php" Global $URL_Cancel = "https://example.com/cancel.php" ; # PRODUCT INFO To wait customer to pay. This is achieved by polling Paypal every 10 seconds for 5 minutes (or until "Abort" is pressed") to verify if customer payed $sOrderStatus = _PaypalOrderDetails($sToken, $EndPoint_Orders, $sOrderId) To free on-hold payment and release it to your Paypal account $FinalAnswer = _PaypalOrderCapture($sURL, $sToken, $EndPoint_Orders, $sOrderId, $ReqId) Then you will have money in your wallet and decide what else to do (personally I grant access to customer after payment). Feel free to integrate, update, comment it, it's a pleasure to share with the community. Marco BinaryCall.au3 Example.au3 JSON.au3 PayPal.au3 Link to comment Share on other sites More sharing options...
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!Register a new account
Already have an account? Sign in here.Sign In Now