{"info":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","description":"<html><head></head><body><p>The 2D API Offers A Simple And Convenient Programmable Interface To Initiate Request To Pay \"Transaction Requests\" With The Added Function And Transaction Capability Similar To A Smart Contract Based On The Blockchain. The 2D Transact Process Turns Traditional Transactions Into Intelligent Transactions, Especially In The Payments And Settlement Space</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"11639743","collectionId":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","publishedId":"UzXVsYfi","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"29A5DC"},"publishDate":"2022-08-11T12:54:43.000Z"},"item":[{"name":"API Admin","item":[{"name":"Health Check","id":"1c470471-6a5f-45b6-8cd0-1a22fed5e1ea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{protocol}}://{{host}}/api/actuator/health","description":"<p>Will allow the user to do a check to see if the 2D Controller is up.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","actuator","health"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"fc0b2359-ebdd-48ff-8628-3309ca689f98","name":"Health Check","originalRequest":{"method":"GET","header":[],"url":"{{protocol}}://{{host}}/api/actuator/health"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"status\": \"UP\"\r\n}"}],"_postman_id":"1c470471-6a5f-45b6-8cd0-1a22fed5e1ea"},{"name":"Health Check 2","id":"cf9b9b24-0ad0-4fd3-9804-c3d64d95218c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"{{protocol}}://{{host}}/api/admin/v1/health","urlObject":{"protocol":"{{protocol}}","path":["api","admin","v1","health"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"0a16b09b-1f9c-419e-9504-d4594905bf1c","name":"Health Check 2","originalRequest":{"method":"GET","header":[],"body":{"mode":"raw","raw":""},"url":"{{protocol}}://{{host}}/api/admin/v1/health"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10548179374545975\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\"\r\n}"}],"_postman_id":"cf9b9b24-0ad0-4fd3-9804-c3d64d95218c"},{"name":"GetDeviceTypes","id":"2ee314a1-78f1-42b6-a1f8-907215c043f4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":false},"method":"GET","header":[],"url":"{{protocol}}://{{host}}/api/admin/v1/getDeviceTypes","description":"<p>Lists the current Device Types in in the 2D Controller; which are:</p>\n<p>Payee and Initiator</p>\n<p>Initiator's are devices that when created will create the ability for 2D Codes to be generated from that device/s.</p>\n<p>Payee's are devices that when created will create the ability for 2D Codes to be paid in that Controller, that have been generated by the Initiators.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["api","admin","v1","getDeviceTypes"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"50b64703-c156-4b2b-91a2-342b2639e17e","name":"GetDeviceTypes","originalRequest":{"method":"GET","header":[],"url":"{{protocol}}://{{host}}/api/admin/v1/getDeviceTypes"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10548186702110234\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"deviceTypes\": [\r\n        {\r\n            \"type\": \"Initiator\",\r\n            \"code\": \"001\"\r\n        },\r\n        {\r\n            \"type\": \"Payee\",\r\n            \"code\": \"002\"\r\n        }\r\n    ]\r\n}"}],"_postman_id":"2ee314a1-78f1-42b6-a1f8-907215c043f4"},{"name":"CreateDevice","id":"4a1120ff-b64e-4fa1-a912-5481d2dbe054","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":false},"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"identifier\": \"{{identifier}}\",\n\t\"deviceTypeCode\": \"{{deviceTypeCode}}\"\n}"},"url":"{{protocol}}://{{host}}/api/admin/v1/createDevice","description":"<p>The Device Types can be created on this call;</p>\n<p>Initiator Code = 001</p>\n<p>Payee Code = 002</p>\n<p>Its IMPORTANT to keep the secretKey safely for future use.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["api","admin","v1","createDevice"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"a93b5815-25b4-447f-b3d0-10c4b9086b52","name":"CreateDevice","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"identifier\": \"{{identifier}}\",\n\t\"deviceTypeCode\": \"{{deviceTypeCode}}\"\n}"},"url":"{{protocol}}://{{host}}/api/admin/v1/createDevice"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10548231165040056\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"secretKey\": \"813549d4-b875-4051-8184-b018bbdce699\",\r\n    \"message\": \"Keep this safe and do not lose it\"\r\n}"}],"_postman_id":"4a1120ff-b64e-4fa1-a912-5481d2dbe054"},{"name":"DisableDevice","id":"7dc82fd6-de64-4912-8865-c9e01faa8c10","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"identifier\": \"{{identifier}}\"\n}"},"url":"{{protocol}}://{{host}}/api/admin/v1/disableDevice","description":"<p>Created Devices can be disabled if they should no longer be used.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["api","admin","v1","disableDevice"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"33621654-85ba-44ce-8099-784e595c7331","name":"DisableDevice","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"identifier\": \"{{identifier}}\"\n}"},"url":"{{protocol}}://{{host}}/api/admin/v1/disableDevice"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":null}],"_postman_id":"7dc82fd6-de64-4912-8865-c9e01faa8c10"}],"id":"c509e081-439b-4c8b-b1d3-9ea772ea1499","description":"<p>In order to use the API you will need to be provided with a User Name and Password.</p>\n","_postman_id":"c509e081-439b-4c8b-b1d3-9ea772ea1499","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}}},{"name":"TwoD Transact","item":[{"name":"Admin","item":[{"name":"Create Account","event":[{"listen":"prerequest","script":{"id":"8ff115e6-4341-42d8-b4e7-e78791f47645","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_creator;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"7ce79410-2bb1-4bc9-8548-19ecfb7654bd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"firstName\":\"{{firstName}}\", \n\t\"lastName\":\"{{lastName}}\", \n\t\"gender\":\"{{gender}}\", \n\t\"idNumber\":\"{{idNumber}}\", \n\t\"mobileNumber\":\"{{mobileNumber}}\", \n\t\"email\":\"{{email}}\", \n\t\"telNumber\":\"{{telNumber}}\", \n\t\"faxNumber\":\"{{faxNumber}}\", \n\t\"community\":\"{{community}}\", \n\t\"streetAddress1\":\"{{streetAddress1}}\", \n\t\"streetAddress2\":\"{{streetAddress2}}\", \n\t\"streetAddress3\":\"{{streetAddress3}}\", \n\t\"accountType\":\"{{accountType}}\", \n\t\"dateOfBirth\":\"{{dateOfBirth}}\",\n\t\"dynamicFields\": [\n\t\t{\n\t\t\t\"group\": \"{{group}}\",\n\t\t\t\"name\": \"{{name}}\",\n\t\t\t\"value\": \"{{value}}\"\n\t\t},\n\t\t{\n\t\t\t\"group\": \"{{group}}\",\n\t\t\t\"name\": \"{{name}}\",\n\t\t\t\"value\": \"{{value}}\"\n\t\t}\n\t]\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{host}}/api/twod/v1/account/create/","description":"<p>Create accounts in the 2D Controller so that 2D codes can be created and Paid/Withdrawn or Deposited</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","account","create",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"56f506f2-7206-4e89-a212-8244b9db1990","name":"Create Account","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"firstName\":\"{{firstName}}\", \n\t\"lastName\":\"{{lastName}}\", \n\t\"gender\":\"{{gender}}\", \n\t\"idNumber\":\"{{idNumber}}\", \n\t\"mobileNumber\":\"{{mobileNumber}}\", \n\t\"email\":\"{{email}}\", \n\t\"telNumber\":\"{{telNumber}}\", \n\t\"faxNumber\":\"{{faxNumber}}\", \n\t\"community\":\"{{community}}\", \n\t\"streetAddress1\":\"{{streetAddress1}}\", \n\t\"streetAddress2\":\"{{streetAddress2}}\", \n\t\"streetAddress3\":\"{{streetAddress3}}\", \n\t\"accountType\":\"{{accountType}}\", \n\t\"dateOfBirth\":\"{{dateOfBirth}}\",\n\t\"dynamicFields\": [\n\t\t{\n\t\t\t\"group\": \"{{group}}\",\n\t\t\t\"name\": \"{{name}}\",\n\t\t\t\"value\": \"{{value}}\"\n\t\t},\n\t\t{\n\t\t\t\"group\": \"{{group}}\",\n\t\t\t\"name\": \"{{name}}\",\n\t\t\t\"value\": \"{{value}}\"\n\t\t}\n\t]\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{host}}/api/twod/v1/account/create/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":null}],"_postman_id":"7ce79410-2bb1-4bc9-8548-19ecfb7654bd"},{"name":"Settlement","event":[{"listen":"prerequest","script":{"id":"d3594135-a86c-48f6-91f0-eada4c8b9742","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_creator;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"5e05a89c-ceb6-4076-a630-3452c9ee8d11","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"amount\": \"{{amount}}\",\n    \"reference\": \"{{reference}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{host}}/api/twod/v1/account/settlement/","description":"<p>Account balances can be settled into Merchants bank accounts, the call can be used to create a settlement amount. i.e. the Merchant entire account balance doesnt have to be settled at once.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","account","settlement",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"0fb0662b-f4ea-479f-9c03-69ed569a458d","name":"Settlement","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"amount\": \"{{amount}}\",\n    \"reference\": \"{{reference}}\"\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{host}}/api/twod/v1/account/settlement/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10550100814552408\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4682\",\r\n    \"transactionId\": \"62316546516\",\r\n    \"amount\": \"500\",\r\n    \"balance\": \"500\"\r\n}"}],"_postman_id":"5e05a89c-ceb6-4076-a630-3452c9ee8d11"}],"id":"2f31aaf8-312d-42c8-bec9-643b25c575e2","_postman_id":"2f31aaf8-312d-42c8-bec9-643b25c575e2","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}}},{"name":"Creator","item":[{"name":"List Code Types","event":[{"listen":"prerequest","script":{"id":"5e4df009-c519-463a-9688-d9de48dd3b92","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_creator;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"61883785-b3ea-4930-a592-df0efcce777a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"identifier","value":"{{identifier_creator}}","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/listCodeTypes","description":"<p>Provides a list of available codes i.e. Pay Code 001, Withdraw Code 002 and Deposit Code 003.</p>\n<p>Note: A Pay code cannot be used to try and Withdraw it, for example.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","listCodeTypes"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"7a2dfd99-8868-409d-8917-a50dcd1b1100","name":"List Code Types","originalRequest":{"method":"GET","header":[{"key":"identifier","value":"{{identifier_creator}}","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/listCodeTypes"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549133748042264\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4660\",\r\n    \"transactionId\": \"1559595\",\r\n    \"codeTypes\": [\r\n        {\r\n            \"code\": \"001\",\r\n            \"description\": \"Pay\"\r\n        },\r\n        {\r\n            \"code\": \"002\",\r\n            \"description\": \"Withdraw\"\r\n        },\r\n        {\r\n            \"code\": \"003\",\r\n            \"description\": \"DEPOSIT\"\r\n        }\r\n    ]\r\n}"}],"_postman_id":"61883785-b3ea-4930-a592-df0efcce777a"},{"name":"Create Code","event":[{"listen":"prerequest","script":{"id":"40928bed-7e47-491a-b723-02089607b463","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_creator;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"8973028d-df57-40f5-a845-ddb342b15e31","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"description\": \"{{description}}\",\n\t\"amount\": \"{{amount}}\",\n    \"codeType\": \"{{codeType}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/create/","description":"<p>Used to create codes to Pay, Withdraw and Deposit. The codeType values determine which code is being created.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","create",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"2bd01e83-80c1-44dd-b4cc-abcbe51c74cc","name":"Create Code","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"description\": \"{{description}}\",\n\t\"amount\": \"{{amount}}\",\n    \"codeType\": \"{{codeType}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/create/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549169493578177\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4661\",\r\n    \"transactionId\": \"6464646\",\r\n    \"code\": \"701944662\",\r\n    \"timeToLive\": \"600000\"\r\n}"}],"_postman_id":"8973028d-df57-40f5-a845-ddb342b15e31"},{"name":"Query Code","event":[{"listen":"prerequest","script":{"id":"f06176f9-5409-42eb-85f6-ac43242e91a0","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_creator;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"cf942cdc-2af9-4ea8-a2f9-17155fced9a7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/query/","description":"<p>Used by a Merchant to query the status of a code, codes can be in one of the following states;</p>\n<p>Pending = awaiting payment</p>\n<p>Claimed = paid</p>\n<p>Expired = expired</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","query",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"85e0c3f0-1ae2-40d3-bd2c-53278f77c1f3","name":"Query Code","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"identifier","value":"{{identifier_creator}}","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/query/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549204157658700\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4662\",\r\n    \"transactionId\": \"54646464\",\r\n    \"status\": \"New\",\r\n    \"amount\": \"1000\",\r\n    \"timeToLive\": \"565107\",\r\n    \"description\": \"John\"\r\n}"}],"_postman_id":"cf942cdc-2af9-4ea8-a2f9-17155fced9a7"},{"name":"List Code States","event":[{"listen":"prerequest","script":{"id":"de358eec-71ab-4391-91eb-1481ac25fa34","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_creator;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"a9d81beb-765f-49b0-a6fa-0b012a7caba3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"identifier","value":"{{identifier_creator}}","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/listStates","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","listStates"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"bd4cd26f-0b4a-4dea-967b-1ec13e5f0e3a","name":"List Code States","originalRequest":{"method":"POST","header":[{"key":"identifier","value":"{{identifier_creator}}","type":"text"},{"key":"signature","value":"{{signature}}","type":"text"},{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/listStates"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549260122862652\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4664\",\r\n    \"transactionId\": \"65456546546546\",\r\n    \"codeStates\": [\r\n        \"ALL\",\r\n        \"Pending\",\r\n        \"Paid\",\r\n        \"Expired\",\r\n        \"Reversed\"\r\n    ]\r\n}"}],"_postman_id":"a9d81beb-765f-49b0-a6fa-0b012a7caba3"},{"name":"List Codes","event":[{"listen":"prerequest","script":{"id":"97c43be2-db40-452c-b6a1-24c327cc17f4","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_creator;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"e7b711cc-0eb0-41ff-9f4a-85ca70558e68","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"identifier","type":"text","value":"{{identifier_creator}}"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"fromDate\": \"yyyy-MM-dd HH:mm:ss.SSS\",\n\t\"toDate\": \"yyyy-MM-dd HH:mm:ss.SSS\",\n\t\"limit\": \"{{limit}}\",\n\t\"nextPageIndex\": \"{{nextPageIndex}}\",\n\t\"status\": \"{{status}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/listCodes","description":"<p>Returns a list of codes that have been created for a specified period for a specific state/s.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","listCodes"],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"5b2591f6-6ad8-4959-80c8-82b07c7fc1f8","name":"List Codes","originalRequest":{"method":"POST","header":[{"key":"identifier","type":"text","value":"{{identifier_creator}}"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"fromDate\": \"yyyy-MM-dd HH:mm:ss.SSS\",\n\t\"toDate\": \"yyyy-MM-dd HH:mm:ss.SSS\",\n\t\"limit\": \"{{limit}}\",\n\t\"nextPageIndex\": \"{{nextPageIndex}}\",\n\t\"status\": \"{{status}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/listCodes"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549416424230645\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4665\",\r\n    \"codes\": [\r\n        {\r\n            \"amount\": \"1000\",\r\n            \"code\": \"701944662\",\r\n            \"codeType\": \"Pay\",\r\n            \"description\": \"John\",\r\n            \"closedDate\": \"2022-07-25 15:20:36\",\r\n            \"createDate\": \"2022-07-25 15:19:26\",\r\n            \"createStan\": \"6464646\",\r\n            \"createStanley\": \"4661\",\r\n            \"state\": \"Claimed\"\r\n        }\r\n    ]\r\n}"}],"_postman_id":"e7b711cc-0eb0-41ff-9f4a-85ca70558e68"}],"id":"57822a3c-09a8-49aa-8b96-2fdd35c4c6be","_postman_id":"57822a3c-09a8-49aa-8b96-2fdd35c4c6be","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}}},{"name":"Payee","item":[{"name":"Lookup Code","event":[{"listen":"prerequest","script":{"id":"d7cc3554-556f-4446-8f7a-f7dc882e47f6","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_payee;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"a042581d-31b4-4bdd-91b4-5b5f36c6f388","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/find/","description":"<p>Used by Customer wanting to Pay/Withdraw or Desposit using a 2D Code, call will return the state of that Code.</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","find",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"2c480f65-a708-4133-b72c-38a5af2343bc","name":"Lookup Code","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/find/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549495527552524\",\r\n    \"responseCode\": \"074\",\r\n    \"responseDescription\": \"Code Expired/Claimed\",\r\n    \"authCode\": \"4669\",\r\n    \"status\": \"Claimed\",\r\n    \"amount\": \"1000\",\r\n    \"description\": \"John\"\r\n}"}],"_postman_id":"a042581d-31b4-4bdd-91b4-5b5f36c6f388"},{"name":"Pay Code","event":[{"listen":"prerequest","script":{"id":"3905bc07-328e-4407-8b52-043c410d9856","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_payee;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"6991c897-10d7-4203-8af5-7ede029692e0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\",\n\t\"amount\": \"{{amount}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/pay/","description":"<p>Used to Pay using a 2D Code</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","pay",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"9974b13e-1bed-409a-b85d-48e655d64c5b","name":"Pay Code","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\",\n\t\"amount\": \"{{amount}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/pay/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549239184883896\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4663\",\r\n    \"transactionId\": \"437859347\",\r\n    \"requestId\": \"6464646\",\r\n    \"description\": \"John\",\r\n    \"amount\": \"1000\"\r\n}"}],"_postman_id":"6991c897-10d7-4203-8af5-7ede029692e0"},{"name":"Withdraw Code","event":[{"listen":"prerequest","script":{"id":"93d29576-af6b-4c12-8bb4-e7661ead0fa4","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_payee;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"9051617e-9c3e-4080-85b9-e808ca0cffb4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\",\n\t\"amount\": \"{{amount}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/withdraw/","description":"<p>Used to Withdraw using a 2D Code</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","withdraw",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"54203646-c22b-4432-b1fe-6dd6f8b5f557","name":"Withdraw Code","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\",\n\t\"amount\": \"{{amount}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/withdraw/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549602996893014\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4672\",\r\n    \"transactionId\": \"546546546\",\r\n    \"requestId\": \"6464646\",\r\n    \"description\": \"John\",\r\n    \"amount\": \"1000\"\r\n}"}],"_postman_id":"9051617e-9c3e-4080-85b9-e808ca0cffb4"},{"name":"Deposit Code","event":[{"listen":"prerequest","script":{"id":"b7f0ca1f-96f6-4bd8-aae8-0d8631325a67","exec":["function getPath(url) {\r","    var pathRegex = /.+?\\:\\/\\/.+?(\\/.+?)(?:#|\\?|$)/;\r","    var result = url.match(pathRegex);\r","    return result && result.length > 1 ? result[1] : ''; \r","}\r"," \r","function getQueryString(url) {\r","    var arrSplit = url.split('?');\r","    return arrSplit.length > 1 ? url.substring(url.indexOf('?')+1) : ''; \r","}\r","\r","function getAuthHeader(httpMethod, requestUrl, requestBody) {\r","    // var CLIENT_KEY = 'JohnnyBoy';\r","    var SECRET_KEY = environment.secret_payee;\r","    // var SECRET_KEY = 'Test';\r","    var AUTH_TYPE = 'HMAC-SHA512';\r","         \r","    var requestPath = getPath(requestUrl);\r","    var queryString = getQueryString(requestUrl);\r","    if (httpMethod == 'GET' || !requestBody) {\r","        requestBody = ''; \r","    } else {\r","        //requestBody = JSON.stringify(requestBody);\r","    }\r","    console.log(\"requestBody: \" + requestBody);\r","         \r","    //var hashedPayload = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestBody));\r","    //console.log(\"hashedPayload: \" + hashedPayload);\r","         \r","    //var timestamp = new Date().toISOString().split('.')[0]+\"Z\";\r","    //console.log(\"timestamp: \" + timestamp);\r","    \r","    //var requestData = [httpMethod, requestPath, queryString, timestamp, hashedPayload].join(\"\\n\");\r","    //console.log(\"requestData: \" + requestData);\r","    \r","    //var hashedRequestData = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(requestData));\r","    //console.log(\"hashedRequestData: \" + hashedRequestData);\r","         \r","    //var hmacDigest = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(hashedRequestData, SECRET_KEY));\r","    var hmacDigest = CryptoJS.HmacSHA512(requestBody, SECRET_KEY);\r","    console.log(\"Signature: \" + hmacDigest);\r","    \r","    return hmacDigest;\r","}\r","\r","postman.setEnvironmentVariable('signature', getAuthHeader(request['method'], request['url'], request['data']));"],"type":"text/javascript"}}],"id":"d5442ec9-0b58-4d17-a683-0563689f750f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\",\n\t\"amount\": \"{{amount}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/deposit/","description":"<p>Used to Deposit using a 2D Code</p>\n","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}},"urlObject":{"protocol":"{{protocol}}","path":["api","twod","v1","deposit",""],"host":["{{host}}"],"query":[],"variable":[]}},"response":[{"id":"bae2036f-e3f7-4e1c-83d6-ecfc8faa2b47","name":"Deposit Code","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"},{"key":"signature","type":"text","value":"{{signature}}"},{"key":"identifier","type":"text","value":"{{identifier_payee}}"}],"body":{"mode":"raw","raw":"{\n\t\"transactionId\": \"{{transactionId}}\",\n\t\"code\": \"{{code}}\",\n\t\"amount\": \"{{amount}}\"\n}"},"url":"{{protocol}}://{{host}}/api/twod/v1/deposit/"},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"id\": \"10549540184242099\",\r\n    \"responseCode\": \"000\",\r\n    \"responseDescription\": \"Success\",\r\n    \"authCode\": \"4670\",\r\n    \"transactionId\": \"56465464664\",\r\n    \"requestId\": \"6464646\",\r\n    \"description\": \"John\",\r\n    \"amount\": \"1000\"\r\n}"}],"_postman_id":"d5442ec9-0b58-4d17-a683-0563689f750f"}],"id":"ba845652-8e89-431b-ab72-f01cd1aec821","_postman_id":"ba845652-8e89-431b-ab72-f01cd1aec821","description":"","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}}}],"id":"a57ce6e7-efe0-4b7c-8672-7357af89321b","description":"<p>Before any of these calls can be used the following steps need to be taken on the 2D Controller;</p>\n<p>-Ensure that an API Device has been created using this call</p>\n<p>{{protocol}}://{{host}}/api/admin/v1/createDevice</p>\n<p>-An Account must exist in 2D linking the API device (if a Device Account doesnt exist, one can be create via the Create Account call</p>\n<p>{{protocol}}://{{host}}/api/twod/v1/account/create/</p>\n","_postman_id":"a57ce6e7-efe0-4b7c-8672-7357af89321b","auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]},"isInherited":true,"source":{"_postman_id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","id":"fd9142a9-daec-4fc7-9a10-2302ff1e4a1f","name":"TwoDApi","type":"collection"}}}],"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"<username>"},{"key":"password","value":"<password>"}]}},"event":[{"listen":"prerequest","script":{"id":"a0663aa0-9250-41e5-ab57-99c1507a6c9b","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"7c2dc43b-0ae1-41d4-b65e-c569ad8f3a68","type":"text/javascript","exec":[""]}}]}