Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Paynow.pl -- Make a Payment RequestMake a payment request POST with prepared message on Paynow payment request endpoint. For more information, see https://docs.paynow.pl/#section/Payments/Make-a-payment
Use ChilkatAx-win32.pkg Procedure Test Handle hoHttp Boolean iSuccess Variant vJson Handle hoJson String sMyApiAccessKey String sMySigCalcKey Handle hoCrypt String sMessageBody String sSignature Variant vResp Handle hoResp Handle hoJsonResp String sRedirectUrl String sPaymentId String sStatus String sTemp1 Boolean bTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End // Implements the following CURL command: // curl --request POST 'https://api.sandbox.paynow.pl/v1/payments' \ // -H 'Content-Type: application/json' \ // -H 'Api-Key: c12c386b-650b-43db-9430-d84fc05d9433' \ // -H 'Signature: aYPCytCoc+/wFgqHZJjgBCi20omXTn0yzm9LysJgnFo=' \ // -H 'Idempotency-Key: 59c6dd26-f905-487b-96c9-fd1d2bd76885' \ // --data-raw '{ // "amount": 45671, // "externalId": "234567898654", // "description": "Test transaction", // "buyer": { // "email": "jan.kowalski@melements.pl" // } // }' // Use the following online tool to generate HTTP code from a CURL command // Convert a cURL Command to HTTP Source Code // Use this online tool to generate code from sample JSON: // Generate Code to Create JSON // The following JSON is sent in the request body. // { // "amount": 45671, // "externalId": "234567898654", // "description": "Test transaction", // "buyer": { // "email": "jan.kowalski@melements.pl" // } // } Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Get ComUpdateInt Of hoJson "amount" 45671 To iSuccess Get ComUpdateString Of hoJson "externalId" "234567898654" To iSuccess Get ComUpdateString Of hoJson "description" "Test transaction" To iSuccess Get ComUpdateString Of hoJson "buyer.email" "jan.kowalski@melements.pl" To iSuccess Move "c12c386b-650b-43db-9430-d84fc05d9433" To sMyApiAccessKey Move "b758f20d-ba92-44fa-acca-f57e99787b9d" To sMySigCalcKey // Calculate the Signature header. Get Create (RefClass(cComChilkatCrypt2)) To hoCrypt If (Not(IsComObjectCreated(hoCrypt))) Begin Send CreateComObject of hoCrypt End Set ComMacAlgorithm Of hoCrypt To "hmac" Set ComEncodingMode Of hoCrypt To "base64" Get ComSetMacKeyString Of hoCrypt sMySigCalcKey To iSuccess Set ComHashAlgorithm Of hoCrypt To "SHA-256" Get ComEmit Of hoJson To sMessageBody Get ComMacStringENC Of hoCrypt sMessageBody To sSignature Get ComGenerateUuid Of hoCrypt To sTemp1 Send ComSetRequestHeader To hoHttp "Idempotency-Key" sTemp1 Send ComSetRequestHeader To hoHttp "Api-Key" sMyApiAccessKey Send ComSetRequestHeader To hoHttp "Signature" sSignature Send ComSetRequestHeader To hoHttp "Content-Type" "application/json" Set ComAccept Of hoHttp To "application/json" Get pvComObject of hoJson to vJson Get ComPostJson3 Of hoHttp "https://api.sandbox.paynow.pl/v1/payments" "application/json" vJson To vResp If (IsComObject(vResp)) Begin Get Create (RefClass(cComChilkatHttpResponse)) To hoResp Set pvComObject Of hoResp To vResp End Get ComLastMethodSuccess Of hoHttp To bTemp1 If (bTemp1 = False) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Showln "Response body:" Get ComBodyStr Of hoResp To sTemp1 Showln sTemp1 // Sample response: // { // "redirectUrl": "https://paywall.sandbox.paynow.pl/NOA0-YJ9-Y1P-29V?token=eyJraWQiOiJhMD ... L60wk", // "paymentId": "NOA0-YJ9-Y1P-29V", // "status": "NEW" // } Get Create (RefClass(cComChilkatJsonObject)) To hoJsonResp If (Not(IsComObjectCreated(hoJsonResp))) Begin Send CreateComObject of hoJsonResp End Get ComBodyStr Of hoResp To sTemp1 Get ComLoad Of hoJsonResp sTemp1 To iSuccess Get ComStringOf Of hoJson "redirectUrl" To sRedirectUrl Get ComStringOf Of hoJson "paymentId" To sPaymentId Get ComStringOf Of hoJson "status" To sStatus End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.