We need you to create a working bubble payment plugin with parameters shown below. Project time frame around 3 weeks. After that you will give us 2 around weeks time to test the plug in. The payment will proceed after plug will be successfully tested and working.
Budget negotiable.
Structure of data request The plug-in should send data of the form in POST method. Address: https://www.paysera.com/pay/ There are always 2 fields sent: data and sign. Generating request fields from parameters 1. All parameters are joined to a URL-encoded string. For example: 2. ['param1' => 'abc', 'param2' => 'Some string with symbols %=&'] 3. 'param1=abc¶m2=Some+string+with+symbols+%25%3D%26' It should be the equivalent of the PHP function http_build_query 4. The result string is encoded in base64 encoding. For example: 5. 'param1=abc¶m2=Some+string+with+symbols+%25%3D%26' 6. 'cGFyYW0xPWFiYyZwYXJhbTI9U29tZStzdHJpbmcrd2l0aCtzeW1ib2xzKyUyNSUzRCUyNg==' It should be the equivalent of PHP function base64_encode 7. In the result string symbols "/" are replaced with "_", and symbols "+" with "-". We get similar to base64 encoding, which is safe to send in URL without further processing. For example: 8. 'MViDYlV7V0iHR2w2OkJjRFFpY11hizJDhk+EZjl/' 9. 'MViDYlV7V0iHR2w2OkJjRFFpY11hizJDhk-EZjl_' It should be the equivalent of PHP function str_replace or strtr. 10. The final result string is signed - the sign parameter is generated. Algorithm to generate sign parameter: sign = md5(data + password) Here md5 is the cryptographic hash function, data - encoded parameters, password - our project password which we should be able to enter in the plug-in.
Parameters we should be able to get from our database and input in the above:
ALL PARAMETERS ARE ALL THE TIME DIFFERENT, SO IT MUST TAKE EACH PARAMETER INDIVIDUALLY FROM THE DATABASE OR FROM THE INPUT BOX! Parameter – Length - Description projectid - 11 - Unique project number from our system. orderid – 40 - Order number from our system. accepturl – 255 - Full address (URL), to which the client is directed after a successful operation. cancelurl – 255 - Full address (URL), to which the client is directed after he clicks the link to return. callbackurl - 255 - Full address (URL), to which we will get information about performed payment. Script must return text "OK". version - 9 - The version number of system specification (API).
Link from payment provider: https://developers.paysera.com/en/checkout/integrations/integration-specification
NB! Our specification is a bit different so please don't use this link as the main source.