Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

edgarspaberzs
Regular Visitor

Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

Hi!

 

Registered a card using 

https://sandbox.api.visa.com/vctc/customerrules/v1/consumertransactioncontrols

 

Enabled transaction controls for the card via https://sandbox.api.visa.com/vctc/customerrules/v1/consumertransactioncontrols/{documentID}/rules using request:

 

{
"globalControls":[
{
"shouldDeclineAll": false,
"isControlEnabled": true
}
],
"transactionControls": [
{
"controlType": "TCT_ATM_WITHDRAW",
"isControlEnabled": true,
"shouldDeclineAll": true
}
]
}

 

Now trying to pre-evaluate transaction via

https://sandbox.api.visa.com/vctc/validation/v1/preevaluations

using request:

 

{
"pointOfServiceInfo": {
"securityCondition": "IDENTIFICATION_VERIFIED",
"terminalClass": {
"isAttended": true,
"howOperated": "CUSTOMER_OPERATED",
"deviceLocation": "ON_PREMISE"
},
"presentationData": {
"isCardPresent": true,
"howPresented": "CUSTOMER_PRESENT"
},
"terminalEntryCapability": "KEY_ENTERED",
"terminalType": "ATM"
},
"cardholderBillAmount": 100,
"messageType": "0100",
"processingCode": "000000",
"decisionType": "PREEVAL",
"primaryAccountNumber": "401814524306xxxx",
"retrievalReferenceNumber": "000000000001",
"merchantInfo": {
"city": "Highlands Ranch",
"countryCode": "USA",
"postalCode": "80130",
"merchantCategoryCode": "0001",
"name": "POS at ",
"addressLines": [
"6675 Business Center Dr"
],
"region": "CO",
"currencyCode": "840"
},
"dateTimeLocal": "0920130000"
}

 

and I'm expecting to receive response like 

"decisionResponse": {
"shouldDecline": true,
"decisionResponseTimeStamp": "2022-09-20 08:43:05",
"declineRuleCategory": "PCT_TRANSACTION",
"declineRuleType": "TCT_ATM_WITHDRAW"
}

 

While was playing with  pre-evaluation request (tried different combinations of data), didn't manage to get negative decision with TCT_ATM_WITHDRAW rule type.

 

Could You help? How request to authorization decision API should look like, so in response would be negative decision with TCT_ATM_WITHDRAW rule type?  Which data from request is used to evaluate TCT_ATM_WITHDRAW rules?

 

Br,

  Edgar

 

 

 

 

 

7 REPLIES 7
jenn_kh
Community Moderator

Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

Hi, Thank you for reaching out, @edgarspaberzs! An agent is looking for a solution and will get back to you soon. In the meantime, if anyone else is able to assist, please reply to Edgar here.  -Jenn

I_Doroteo3
Visa Developer Support Specialist

Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

Hi @edgarspaberzs

 

Have you tried to run this with the VTC test data provided under "Integrated Test Data" in your project dashboard? 

 

I will also look into this further and get back to you.

 

Thanks, 

Illana

I_Doroteo3
Visa Developer Support Specialist

Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

also, are you able to copy and paste the response that you received?

edgarspaberzs
Regular Visitor

Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

Hi!

 

Sorry for delay

 

Enrolled a card:

 

{"primaryAccountNumber":"4018145243060003"}

 

and in response receiving:

 

{
"receivedTimestamp": "2022-10-17 09:19:50.076",
"processingTimeinMs": 8,
"resource": {
"globalControls": [ {
"shouldDeclineAll": false,
"isControlEnabled": true
}],
"transactionControls": [
{
"shouldDeclineAll": false,
"isControlEnabled": true,
"controlType": "TCT_BRICK_AND_MORTAR"
},
{
"shouldDeclineAll": true,
"shouldAlertOnDecline": false,
"isControlEnabled": true,
"shouldTargetSpecificCard": false,
"controlType": "TCT_ATM_WITHDRAW"
},
{
"shouldDeclineAll": false,
"isControlEnabled": true,
"controlType": "TCT_E_COMMERCE"
},
{
"shouldDeclineAll": false,
"isControlEnabled": true,
"controlType": "TCT_CROSS_BORDER"
},
{
"shouldDeclineAll": false,
"isControlEnabled": true,
"controlType": "TCT_AUTO_PAY"
},
{
"shouldDeclineAll": false,
"isControlEnabled": true,
"controlType": "TCT_CONTACTLESS"
}
],
"lastUpdateTimeStamp": "2022-10-17 09:19:15",
"documentID": "ctc-vd-7289bdb9-462c-409d-a1ba-059149a1c57a",
"createdOnDate": "2022-10-17 09:19:14.303"
}
}

 

Next calling /vctc/validation/v1/preevaluations with request:

 

{
"pointOfServiceInfo" : {
"securityCondition" : "IDENTIFICATION_VERIFIED",
"terminalClass" : {
"isAttended" : true,
"howOperated" : "CUSTOMER_OPERATED",
"deviceLocation" : "ON_PREMISE"
},
"presentationData" : {
"isCardPresent" : true,
"howPresented" : "CUSTOMER_PRESENT"
},
"terminalEntryCapability" : "MANUAL",
"terminalType" : "ATM"
},
"cardholderBillAmount" : 100,
"messageType" : "0100",
"processingCode" : "000000",
"decisionType" : "PREEVAL",
"primaryAccountNumber" : "4018145243060003",
"retrievalReferenceNumber" : "000000000001",
"merchantInfo" : {
"city" : "Foster City",
"countryCode" : "USA",
"postalCode" : "94404",
"merchantCategoryCode" : "5310",
"name" : "TestMerchant",
"addressLines" : [
"TestAddressLines"
],
"region" : "CA",
"currencyCode" : "840"
},
"dateTimeLocal" : "1017100000"
}

 

And response is:

 

{
"receivedTimestamp": "2022-10-17 09:28:20.251",
"processingTimeinMs": 83,
"resource": {
"decisionID": "ctc-vd-801c94f7-76aa-49c9-b4cb-f7719c94f096",
"decisionResponse": {
"shouldDecline": false,
"decisionResponseTimeStamp": "2022-10-17 09:28:20"
}
}
}

 

response "shouldDecline": false , while expecting to receive "shouldDecline": true.

 

Response headers:

X-CORRELATION-ID: 1665998900_167_1633325900_-56467c7c2_VDP_WS

X-Global-Transaction-ID: 69536f0d634d20340492dd6f

 

 

Br,

  Edgar

 

 

 

 

edgarspaberzs
Regular Visitor

Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

Hi! Sorry for delay

 

Here is response from https://sandbox.api.visa.com/vctc/validation/v1/preevaluations

{
"receivedTimestamp": "2022-10-17 09:28:20.251",
"processingTimeinMs": 83,
"resource": {
"decisionID": "ctc-vd-801c94f7-76aa-49c9-b4cb-f7719c94f096",
"decisionResponse": {
"shouldDecline": false,
"decisionResponseTimeStamp": "2022-10-17 09:28:20"
}
}
}

 

X-Global-Transaction-ID: 69536f0d634d20340492dd6f

X-CORRELATION-ID: 1665998900_167_1633325900_-56467c7c2_VDP_WS

 

 

I_Doroteo3
Visa Developer Support Specialist

Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

Hi @edgarspaberzs

 

Before I open a technical support ticket to look into your inquiry, have you tried setting a decline threshold? 

 

Please see the API reference for the Authorization Decision API as well as the Visa Transaction Controls API Reference that is available for download at the top of the API reference page for more information.

 

Thanks, 

Illana

sree08
Occasional Visitor

Re: Visa Transaction Controls - TCT_ATM_WITHDRAW control type testing via Authorization decision API

Hi @edgarspaberzs ,

 

Did you find a solution for this?

 

@I_Doroteo3 I am also having the same problem. I set 

"declineThreshold":5000, and I tried 'request a decision' API. but its giving me below response
 
"decisionID": "ctc-vd-9f16bafd-22fd-4502-899c-b4c04e0bed8d",
"decisionResponse": {
"shouldDecline": false,
"decisionResponseTimeStamp": "2022-11-14 17:23:54"
}
 
I was expecting "shouldDecline": true, since my threshold was 5000 and the request API I gave 
"cardholderBillAmount": 11000.
 
Thanks
Sree