DataFlex / GP-API Collection / TRA_4.0 Refund for prev sale auth
Back to Collection Items
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoHttp
Boolean iSuccess
Variant vResp
Handle hoResp
String sTemp1
Integer iTemp1
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
Send ComSetRequestHeader To hoHttp "Content-Type" "application/json"
Send ComSetRequestHeader To hoHttp "X-GP-Version" "{{version}}"
// Adds the "Authorization: Bearer {{token}}" header.
Set ComAuthToken Of hoHttp To "{{token}}"
Send ComSetRequestHeader To hoHttp "Accept" "application/json"
Get ComQuickRequest Of hoHttp "POST" "https://{{url}}/ucp/transactions/{{sale_trn_id}}/refund" 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
Get ComStatusCode Of hoResp To iTemp1
Showln iTemp1
Get ComBodyStr Of hoResp To sTemp1
Showln sTemp1
Send Destroy of hoResp
End_Procedure
Curl Command
curl -X POST
-H "Content-Type: application/json"
-H "Authorization: Bearer {{token}}"
-H "Accept: application/json"
-H "X-GP-Version: {{version}}"
https://{{url}}/ucp/transactions/{{sale_trn_id}}/refund
Postman Collection Item JSON
{
"name": "TRA_4.0 Refund for prev sale auth",
"event": [
{
"listen": "test",
"script": {
"exec": [
"var jsonData = JSON.parse(responseBody);\r",
"postman.setEnvironmentVariable(\"refund_trn_id\", jsonData.id);\r",
"\r",
"pm.test(\"Successful POST request\", function () {\r",
" pm.expect(pm.response.code).to.be.oneOf([400]);\r",
"});\r",
"\r",
"pm.test(\"Status code name has string\", function () {\r",
" pm.response.to.have.status(\"Bad Request\");\r",
"});\r",
"\r",
"\r",
"tests[\"Response time is acceptable\"] = _.inRange(responseTime, 100, 1500); \r",
"\r",
"pm.test(\"Body matches string\", function () {\r",
" pm.expect(pm.response.text()).to.include(\"40010\");\r",
"});"
],
"type": "text/javascript"
}
}
],
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"value": "application/json",
"disabled": true
},
{
"key": "Authorization",
"value": "Bearer {{token}}"
},
{
"key": "Accept",
"value": "application/json"
},
{
"key": "X-GP-Version",
"type": "text",
"value": "{{version}}"
}
],
"body": {
"mode": "raw",
"raw": "",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "https://{{url}}/ucp/transactions/{{sale_trn_id}}/refund",
"protocol": "https",
"host": [
"{{url}}"
],
"path": [
"ucp",
"transactions",
"{{sale_trn_id}}",
"refund"
]
},
"description": "This request is for refunding a previous sale transaction. It uses the sale_trn_id from most recent sale transaction. You can only refund a transaction that has the status 'CAPTURED' ie. you can not process a refund for a transaction that is being captured at a later stage.\r\n\r\nFor more details on a refund request, visit: https://developer.globalpay.com/api/transactions#/Refund/post_transactions__id__refund"
},
"response": [
]
}