API Reference

Documentation

Virtual Terminal

  • Card Numbers Tokenized and Stored for Future Transactions
  • Set Up Recurring Payments
  • Email and SMS Invoicing
  • Cash Discount / Surcharging Features Available
  • Level 2 and Level 3 Payment Options
  • Dynamic Descriptor Improves Transaction Descriptions on Customer Bank Statements
  • Inventory Management
  • E-Commerce Integrations with OpenCart and WooCommerce
  • Easy to Use Mobile App Available on IOS and Android

Objective

A list of API in order to validate, initiate/add/edit/delete subscription and also freeze the subscription duration.
Also Gives a reporting API details to find the transaction details and status of the subscription

Connections

The following are the sandbox credentials, Email: support@valorpaytech.com for production credentials

  • Protocol: Https
  • Port: 4430
  • Method: POST
  • URL: URL
  • Please email to support@valorpaytech.com to get the following auth credentials
  • APP_ID
  • AUTH_TOKEN
  • AUTH_KEY

Note: Client has to whitelist their IP address

Validate API

This API is used to find the given Merchant API ID and API Key is valid or not

https://vt-staging.valorpaytech.com:4430/?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=5.05&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=3&cvv=999&pan=4111111111111111&expiry_date=1224&subscription_start_date=20221212&s_customerName=zxcvx&b_customerName=zxcvx&epi=2226388434&avs=2&recursivePayment=true&username=Test&s_street_no=zxcvxz&s_street_name=xcvxzcvxcvc&s_unit=zxcvx&s_city=CHESAPEAKE&s_state=VA&s_zip=23323&b_street_no=zxcvxz&b_street_name=xcvxzcvxcvc&b_unit=zxcvx&b_city=CHESAPEAKE&b_state=VA&b_zip=23323&validateCard=1&userid=13241&validat=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=5.05&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=3&cvv=999&pan=4111111111111111&expiry_date=1224&subscription_start_date=20221212&s_customerName=zxcvx&b_customerName=zxcvx&epi=2226388434&avs=2&recursivePayment=true&username=Test&s_street_no=zxcvxz&s_street_name=xcvxzcvxcvc&s_unit=zxcvx&s_city=CHESAPEAKE&s_state=VA&s_zip=23323&b_street_no=zxcvxz&b_street_name=xcvxzcvxcvc&b_unit=zxcvx&b_city=CHESAPEAKE&b_state=VA&b_zip=23323&validateCard=1&userid=13241&validat=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#2rs2dlncr2qhx'); sdk.validateapi({ app_id: '464DA39FCFB44D54F6C1D22CEF9098E5', auth_token: '8E1DDE8DE369812732E88C583B14D0C4', auth_key: '15B8BCFDB337428792608354A1444050', mtype: '0200', amount: '5.05', food_amount: '0', tax: '0', city_tax: '0', reduced_tax: '0', surchargeIndicator: '1', custom_fee: '3', cvv: '999', pan: '4111111111111111', expiry_date: '1224', subscription_start_date: '20221212', s_customerName: 'zxcvx', b_customerName: 'zxcvx', epi: '2226388434', avs: '2', recursivePayment: 'true', username: 'Test', s_street_no: 'zxcvxz', s_street_name: 'xcvxzcvxcvc', s_unit: 'zxcvx', s_city: 'CHESAPEAKE', s_state: 'VA', s_zip: '23323', b_street_no: 'zxcvxz', b_street_name: 'xcvxzcvxcvc', b_unit: 'zxcvx', b_city: 'CHESAPEAKE', b_state: 'VA', b_zip: '23323', validateCard: '1', userid: '13241', validat: '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=5.05&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=3&cvv=999&pan=4111111111111111&expiry_date=1224&subscription_start_date=20221212&s_customerName=zxcvx&b_customerName=zxcvx&epi=2226388434&avs=2&recursivePayment=true&username=Test&s_street_no=zxcvxz&s_street_name=xcvxzcvxcvc&s_unit=zxcvx&s_city=CHESAPEAKE&s_state=VA&s_zip=23323&b_street_no=zxcvxz&b_street_name=xcvxzcvxcvc&b_unit=zxcvx&b_city=CHESAPEAKE&b_state=VA&b_zip=23323&validateCard=1&userid=13241&validat="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=5.05&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=3&cvv=999&pan=4111111111111111&expiry_date=1224&subscription_start_date=20221212&s_customerName=zxcvx&b_customerName=zxcvx&epi=2226388434&avs=2&recursivePayment=true&username=Test&s_street_no=zxcvxz&s_street_name=xcvxzcvxcvc&s_unit=zxcvx&s_city=CHESAPEAKE&s_state=VA&s_zip=23323&b_street_no=zxcvxz&b_street_name=xcvxzcvxcvc&b_unit=zxcvx&b_city=CHESAPEAKE&b_state=VA&b_zip=23323&validateCard=1&userid=13241&validat="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=5.05&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=3&cvv=999&pan=4111111111111111&expiry_date=1224&subscription_start_date=20221212&s_customerName=zxcvx&b_customerName=zxcvx&epi=2226388434&avs=2&recursivePayment=true&username=Test&s_street_no=zxcvxz&s_street_name=xcvxzcvxcvc&s_unit=zxcvx&s_city=CHESAPEAKE&s_state=VA&s_zip=23323&b_street_no=zxcvxz&b_street_name=xcvxzcvxcvc&b_unit=zxcvx&b_city=CHESAPEAKE&b_state=VA&b_zip=23323&validateCard=1&userid=13241&validat=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=5.05&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=3&cvv=999&pan=4111111111111111&expiry_date=1224&subscription_start_date=20221212&s_customerName=zxcvx&b_customerName=zxcvx&epi=2226388434&avs=2&recursivePayment=true&username=Test&s_street_no=zxcvxz&s_street_name=xcvxzcvxcvc&s_unit=zxcvx&s_city=CHESAPEAKE&s_state=VA&s_zip=23323&b_street_no=zxcvxz&b_street_name=xcvxzcvxcvc&b_unit=zxcvx&b_city=CHESAPEAKE&b_state=VA&b_zip=23323&validateCard=1&userid=13241&validat=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "success_url": true, "error_code": "00", "amount": "5.05", "tax": "0", "customfee": "3", "msg": "APPROVED", "desc": " NO MATCH ", "additional_info": null, "clerk_id": null, "clerk_name": null, "clerk_label": null, "additionalKeyOne": null, "additionalKeyTwo": null, "additionalValueOne": null, "additionalValueTwo": null, "approval_code": "TAS105", "rrn": "328509500127", "txnid": "5217188", "tran_no": 11, "stan": 89, "is_partial_approve": 0, "partial_amount": "000000000505", "pan": "XXXX1111", "card_type": null, "phone_number": null, "email_id": null, "zip": null, "card_holder_name": null, "expiry_date": "12/24", "address": null, "epi": "2226388434", "channel": "VT", "token": "D0E08BD11878031C8457ADA39650C853D17433D9", "card_brand": "Visa", "netamt": 8.05 }
Field Type Length Mandatory/Optional Example Value Description uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com mtype Numeric 4 Mandatory 0200 Message type 0100 epi Numeric 10 Mandatory 2536419865 10 digit number will be generated as a part of merchant boarding amount Numeric 10 Mandatory 100.50 Transaction amount (Maximum amount 99,999.99) food_amount Numeric 4 Optional 10.00 Currency (Ex. 00.00) - Food amount should be less than to transaction amount tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) city_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) reduced_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) surchargeIndicator Numeric 1 Mandatory 0 or 1 To enable or disable the surcharge fee (0 or 1) custom_fee Numeric 4 Optional 4.00 Custom fee/surcharge fee if any - Optional cvv Numeric 4 Optional 523 or 4251 3 or 4 digits number card_holder_name String 25 Optional Jackson Name of the cardholder pan Numeric 19 Mandatory 4012881888818888 Customer card number 15 to 19 digits expiry_date date 5 Mandatory 1225 Card expiry date, Accepted expiry MMYY or MM/YY subscription_start_date date 0 Mandatory 2023-04-05 Customer subscription start date - YYYY-MM-DD s_customerName String 25 Optional Jackson Shipping address customer name b_customerName String 25 Optional Jackson Billing address customer name recursivePaymentId Numeric 4 Optional 7129 Customer unique recursive payment id avs String 10 Optional 13 Address verification service (zip, street address) recursivePayment Boolean 5 Optional true or false Is recursive payment true or false phone Number 10 Optional 8965342569 Customer phone number - 10 digit email String 50 Optional test@valor.com Customer email id - Varchar 255 username String 25 Optional test002 Customer user name ip_address String 20 Optional 8.8.8.8 Merchant IP address- (Ex. 0.0.0.0) s_street_no String 25 Optional 12-35 Shipping address street number - Number with hyphen s_street_name String 25 Optional Corner Street Shipping address street name - Alphanumeric s_unit Numeric 25 Optional 25 Ex. block no, apartment no s_city Numeric 25 Optional New York Shipping address city - 15 chars s_state String 25 Optional NY Shipping address state (2 chars capital) b_street_no String 25 Optional 12-35 Billing address street number - Number with hyphen b_street_name String 25 Optional Corner Street Billing address street name - Alphanumeric b_unit Numeric 25 Optional 25 Ex. block no, apartment no b_city Numeric 25 Optional New York Billing address city - 15 chars b_state String 25 Optional NY Billing address state (2 chars capital). b_zip Numeric 5 Optional 52468 Billing address zip - 5 digit orderId Numeric 12 Optional sale or auth Order id for sale and auth invoicenumber String 12 Optional 253647896512 Alphanumeric 12 chars dataset_id Numeric 4 Optional 0 Line item against created dataset id orderdescription String 50 Optional Ex.Comments Description of the order validateCard int 1 Optional set 0 or 1 To validate the card userid Numeric 4 Optional 13241 It is the userid of the merchant to be updated s_zip Numeric 5 Optional 85364 Shipping address zip - 5 digit

AuthOnly API

Authonly transaction performs the authorization by getting the card number and other details, settlement can be manually done on each transaction

https://vt-staging.valorpaytech.com:4430/?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0100&amount=567.67&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0&cvv=999&pan=4111111111111111&expiry_date=1223&avs=1&epi=2313185814&recursivePayment=false&validateCard=0&userid=15625&surchargeRemoved=0&/?authonly=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0100&amount=567.67&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0&cvv=999&pan=4111111111111111&expiry_date=1223&avs=1&epi=2313185814&recursivePayment=false&validateCard=0&userid=15625&surchargeRemoved=0&/?authonly=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#4p5423lnn4s57h'); sdk.authonlyApi({ app_id: '464DA39FCFB44D54F6C1D22CEF9098E5', auth_token: '8E1DDE8DE369812732E88C583B14D0C4', auth_key: '15B8BCFDB337428792608354A1444050', mtype: '0100', amount: '567.67', food_amount: '0', tax: '0', city_tax: '0', reduced_tax: '0', surchargeIndicator: '1', custom_fee: '0', cvv: '999', pan: '4111111111111111', expiry_date: '1223', avs: '1', epi: '2313185814', recursivePayment: 'false', validateCard: '0', userid: '15625', surchargeRemoved: '0', '/?authonly': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0100&amount=567.67&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0&cvv=999&pan=4111111111111111&expiry_date=1223&avs=1&epi=2313185814&recursivePayment=false&validateCard=0&userid=15625&surchargeRemoved=0&/?authonly="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0100&amount=567.67&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0&cvv=999&pan=4111111111111111&expiry_date=1223&avs=1&epi=2313185814&recursivePayment=false&validateCard=0&userid=15625&surchargeRemoved=0&/?authonly="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0100&amount=567.67&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0&cvv=999&pan=4111111111111111&expiry_date=1223&avs=1&epi=2313185814&recursivePayment=false&validateCard=0&userid=15625&surchargeRemoved=0&/?authonly=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0100&amount=567.67&food_amount=0&tax=0&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0&cvv=999&pan=4111111111111111&expiry_date=1223&avs=1&epi=2313185814&recursivePayment=false&validateCard=0&userid=15625&surchargeRemoved=0&/?authonly=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "success_url": true, "error_code": "00", "amount": "567.67", "tax": "0", "customfee": "0", "msg": "APPROVED", "desc": "APPROVAL TAS168 ", "additional_info": null, "clerk_id": null, "clerk_name": null, "clerk_label": null, "additionalKeyOne": null, "additionalKeyTwo": null, "additionalValueOne": null, "additionalValueTwo": null, "approval_code": "TAS168", "rrn": "328510502516", "txnid": "5217512", "tran_no": 9, "stan": 105, "is_partial_approve": 0, "partial_amount": "000000056767", "pan": "XXXX1111", "card_type": null, "phone_number": null, "email_id": null, "zip": null, "card_holder_name": null, "expiry_date": "12/23", "address": null, "epi": "2313185814", "channel": "VT", "token": "1A49C2448DF860E0D5457C6672C2A38B3DE2D941", "card_brand": null, "netamt": 567.67 }
Field Type Length Mandatory/Optional Example Value Description uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com mtype Numeric 4 Mandatory 0200 Message type 0100 epi Numeric 10 Mandatory 2536419865 10 digit number will be generated as a part of merchant boarding amount Numeric 10 Mandatory 100.50 Transaction amount (Maximum amount 99,999.99) food_amount Numeric 4 Optional 10.00 Currency (Ex. 00.00) - Food amount should be less than to transaction amount tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) city_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) reduced_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) surchargeIndicator Numeric 1 Mandatory 0 or 1 To enable or disable the surcharge fee (0 or 1) custom_fee Numeric 4 Optional 4.00 Custom fee/surcharge fee if any - Optional tip Numeric 4 Optional 5.00 TIP if any / Optional cvv Numeric 4 Optional 523 or 4251 3 or 4 digits number card_holder_name String 25 Optional Jackson Name of the cardholder pan Numeric 19 Mandatory 4012881888818888 Customer card number 15 to 19 digits expiry_date date 5 Mandatory 1225 Card expiry date, Accepted expiry MMYY or MM/YY subscription_start_date date 0 Mandatory 2023-04-05 Customer subscription start date - YYYY-MM-DD s_customerName String 25 Optional Jackson Shipping address customer name b_customerName String 25 Optional Jackson Billing address customer name recursivePaymentId Numeric 4 Optional 7129 Customer unique recursive payment id avs String 10 Optional 13 Address verification service (zip, street address) recursivePayment Boolean 5 Optional true or false Is recursive payment true or false phone Number 10 Optional 8965342569 Customer phone number - 10 digit email String 50 Optional test@valor.com Customer email id - Varchar 255 username String 25 Optional test002 Customer user name ip_address String 20 Optional 8.8.8.8 Merchant IP address- (Ex. 0.0.0.0) s_street_no String 25 Optional 12-35 Shipping address street number - Number with hyphen s_street_name String 25 Optional Corner Street Shipping address street name - Alphanumeric s_unit Numeric 25 Optional 25 Ex. block no, apartment no s_city Numeric 25 Optional New York Shipping address city - 15 chars s_state String 25 Optional NY Shipping address state (2 chars capital) b_street_no String 25 Optional 12-35 Billing address street number - Number with hyphen b_street_name String 25 Optional Corner Street Billing address street name - Alphanumeric b_unit Numeric 25 Optional 25 Ex. block no, apartment no b_city Numeric 25 Optional New York Billing address city - 15 chars b_state String 25 Optional NY Billing address state (2 chars capital). b_zip Numeric 5 Optional 52468 Billing address zip - 5 digit orderId Numeric 12 Optional sale or auth Order id for sale and auth invoicenumber String 12 Optional 253647896512 Alphanumeric 12 chars dataset_id Numeric 4 Optional 0 Line item against created dataset id orderdescription String 50 Optional Ex.Comments Description of the order validateCard int 1 Optional set 0 or 1 To validate the card userid Numeric 4 Optional 13241 It is the userid of the merchant to be updated s_zip Numeric 5 Optional 85364 Shipping address zip - 5 digit

Capture API

An Authonly transaction to be complete using this capture API

https://vt-staging.valorpaytech.com:4430/?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&epi=2226388434&rrn=328604501386&auth_code=TAS191&pos_entry_mode=12&surchargeIndicator=1&mtype=capture&tran_no=1&amount=67.77&stan=231&tax=0&city_tax=0&custom_fee=14&tip_amount=0&/?captureapi=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&epi=2226388434&rrn=328604501386&auth_code=TAS191&pos_entry_mode=12&surchargeIndicator=1&mtype=capture&tran_no=1&amount=67.77&stan=231&tax=0&city_tax=0&custom_fee=14&tip_amount=0&/?captureapi=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#4p5423lnn4s57h'); sdk.captureApi({ app_id: '464DA39FCFB44D54F6C1D22CEF9098E5', auth_token: '8E1DDE8DE369812732E88C583B14D0C4', auth_key: '15B8BCFDB337428792608354A1444050', epi: '2226388434', rrn: '328604501386', auth_code: 'TAS191', pos_entry_mode: '12', surchargeIndicator: '1', mtype: 'capture', tran_no: '1', amount: '67.77', stan: '231', tax: '0', city_tax: '0', custom_fee: '14', tip_amount: '0', '/?captureapi': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&epi=2226388434&rrn=328604501386&auth_code=TAS191&pos_entry_mode=12&surchargeIndicator=1&mtype=capture&tran_no=1&amount=67.77&stan=231&tax=0&city_tax=0&custom_fee=14&tip_amount=0&/?captureapi="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&epi=2226388434&rrn=328604501386&auth_code=TAS191&pos_entry_mode=12&surchargeIndicator=1&mtype=capture&tran_no=1&amount=67.77&stan=231&tax=0&city_tax=0&custom_fee=14&tip_amount=0&/?captureapi="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&epi=2226388434&rrn=328604501386&auth_code=TAS191&pos_entry_mode=12&surchargeIndicator=1&mtype=capture&tran_no=1&amount=67.77&stan=231&tax=0&city_tax=0&custom_fee=14&tip_amount=0&/?captureapi=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&epi=2226388434&rrn=328604501386&auth_code=TAS191&pos_entry_mode=12&surchargeIndicator=1&mtype=capture&tran_no=1&amount=67.77&stan=231&tax=0&city_tax=0&custom_fee=14&tip_amount=0&/?captureapi=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "success_url": true, "error_code": "00", "amount": "5.67", "tax": "0", "customfee": "14", "msg": "APPROVED", "desc": "APPROVAL TAS168 ", "additional_info": null, "clerk_id": null, "clerk_name": null, "clerk_label": null, "additionalKeyOne": null, "additionalKeyTwo": null, "additionalValueOne": null, "additionalValueTwo": null, "approval_code": "TAS168", "rrn": "328510502516", "txnid": "5217748", "tran_no": 9, "stan": 105, "is_partial_approve": 0, "partial_amount": "000000000567", "pan": "XXXX", "card_type": null, "phone_number": null, "email_id": null, "zip": null, "card_holder_name": null, "expiry_date": "/", "address": null, "epi": "2313185814", "channel": "VT", "token": null, "card_brand": null, "netamt": 19.67 }
Field Type Length Mandatory/Optional Example Value Description app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com auth_token String 32 Mandatory 8E1DDE8DE369812732E88C583B14D0C4 Authentication Token is a piece of information that verifies the identity of a user to a website uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit mtype Numeric 4 Mandatory 0200 Message type 0100 epi Numeric 10 Mandatory 2536419865 10 digit number will be generated as a part of merchant boarding rrn Numeric 12 Mandatory 307009169040 Retrieval reference number ( e-recpit ) userid Numeric 4 Optional 13241 It is the userid of the merchant to be updated auth_cod String 10 Mandatory TAS660 Authentication code pos_entry_mode Numeric 5 Optional 012 Mode of transaction in POS terminal email String 50 Optional test@valor.com Customer email id - Varchar 255 username String 25 Optional test002 Customer user name surchargeIndicator Numeric 1 Mandatory 0 or 1 To enable or disable the surcharge fee (0 or 1) ip_address String 20 Optional 8.8.8.8 Merchant IP address- (Ex. 0.0.0.0) tx_id Numeric 12 Mandatory 222919672184 Transaction id for auth mtype String 4 Mandatory 0200 Message type 0100 amount Numeric 4 Mandatory 100.50 Transaction amount (Maximum amount 99,999.99) stan Numeric 4 Optional 443 STAN Number food_amount Numeric 4 Optional 10.00 Currency (Ex. 00.00) - Food amount should be less than to transaction amount tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) city_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) reduced_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) tip_amount Numeric 4 Optional 4:00 TIP if any - optional custom_fee Numeric 10 Optional 4.00 Custom fee/surcharge fee if any - Optional binType Numeric 2 Optional set 0 or 1 Select the bin type (0 or 1) surchargeRemoved String 2 Optional set 0 or 1 To remove the surcharge fee to select 0 or 1

Sale API

Regular transaction request, charge the cardholder immediately as a part of auto/manual settlement

https://vt-staging.valorpaytech.com:4430/?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=11.11&food_amount=0&tax=0.44&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0.02&cvv=999&surchargeRemoved=0&pan=4111111111111111&expiry_date=1224&epi=2226388434&avs=1&recursivePayment=false&validateCard=0&/?saleapi=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=11.11&food_amount=0&tax=0.44&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0.02&cvv=999&surchargeRemoved=0&pan=4111111111111111&expiry_date=1224&epi=2226388434&avs=1&recursivePayment=false&validateCard=0&/?saleapi=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#4p5423lnn4s57h'); sdk.saleApi1({ app_id: '464DA39FCFB44D54F6C1D22CEF9098E5', auth_token: '8E1DDE8DE369812732E88C583B14D0C4', auth_key: '15B8BCFDB337428792608354A1444050', mtype: '0200', amount: '11.11', food_amount: '0', tax: '0.44', city_tax: '0', reduced_tax: '0', surchargeIndicator: '1', custom_fee: '0.02', cvv: '999', surchargeRemoved: '0', pan: '4111111111111111', expiry_date: '1224', epi: '2226388434', avs: '1', recursivePayment: 'false', validateCard: '0', '/?saleapi': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=11.11&food_amount=0&tax=0.44&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0.02&cvv=999&surchargeRemoved=0&pan=4111111111111111&expiry_date=1224&epi=2226388434&avs=1&recursivePayment=false&validateCard=0&/?saleapi="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=11.11&food_amount=0&tax=0.44&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0.02&cvv=999&surchargeRemoved=0&pan=4111111111111111&expiry_date=1224&epi=2226388434&avs=1&recursivePayment=false&validateCard=0&/?saleapi="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=11.11&food_amount=0&tax=0.44&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0.02&cvv=999&surchargeRemoved=0&pan=4111111111111111&expiry_date=1224&epi=2226388434&avs=1&recursivePayment=false&validateCard=0&/?saleapi=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=0200&amount=11.11&food_amount=0&tax=0.44&city_tax=0&reduced_tax=0&surchargeIndicator=1&custom_fee=0.02&cvv=999&surchargeRemoved=0&pan=4111111111111111&expiry_date=1224&epi=2226388434&avs=1&recursivePayment=false&validateCard=0&/?saleapi=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "success_url": true, "error_code": "00", "amount": "11.11", "tax": "0.44", "customfee": "0.02", "msg": "APPROVED", "desc": "APPROVAL TAS849 ", "additional_info": null, "clerk_id": null, "clerk_name": null, "clerk_label": null, "additionalKeyOne": null, "additionalKeyTwo": null, "additionalValueOne": null, "additionalValueTwo": null, "approval_code": "TAS849", "rrn": "328510500810", "txnid": "5217792", "tran_no": 13, "stan": 131, "is_partial_approve": 0, "partial_amount": "000000001111", "pan": "XXXX1111", "card_type": null, "phone_number": null, "email_id": null, "zip": null, "card_holder_name": null, "expiry_date": "12/24", "address": null, "epi": "2226388434", "channel": "VT", "token": "CE1B97D46F283B204C044DC474AAA70A749270AE", "card_brand": "Visa", "netamt": 11.569999999999999 }
Field Type Length Mandatory/Optional Example Value Description uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com auth_token String 32 Mandatory 8E1DDE8DE369812732E88C583B14D0C4 Authentication Token is a piece of information that verifies the identity of a user to a website mtype Numeric 4 Mandatory 0200 Message type 0100 epi Numeric 10 Mandatory 2536419865 10 digit number will be generated as a part of merchant boarding amount Numeric 10 Mandatory 100.50 Transaction amount (Maximum amount 99,999.99) food_amount Numeric 4 Optional 10.00 Currency (Ex. 00.00) - Food amount should be less than to transaction amount tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) city_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) reduced_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) surchargeIndicator Numeric 1 Mandatory 0 or 1 To enable or disable the surcharge fee (0 or 1) custom_fee Numeric 4 Optional 4.00 Custom fee/surcharge fee if any - Optional tip Numeric 4 Optional 5.00 TIP if any / Optional cvv Numeric 4 Optional 523 or 4251 3 or 4 digits number card_holder_name String 25 Optional Jackson Name of the cardholder pan Numeric 19 Mandatory 4012881888818888 Customer card number 15 to 19 digits expiry_date date 5 Mandatory 1225 Card expiry date, Accepted expiry MMYY or MM/YY subscription_start_date date 0 Mandatory 2023-04-05 Customer subscription start date - YYYY-MM-DD s_customerName String 25 Optional Jackson Shipping address customer name b_customerName String 25 Optional Jackson Billing address customer name recursivePaymentId Numeric 4 Optional 7129 Customer unique recursive payment id avs String 10 Optional 13 Address verification service (zip, street address) recursivePayment Boolean 5 Optional true or false Is recursive payment true or false phone Number 10 Optional 8965342569 Customer phone number - 10 digit email String 50 Optional test@valor.com Customer email id - Varchar 255 username String 25 Optional test002 Customer user name ip_address String 20 Optional 8:8:8:8 Merchant IP address- (Ex. 0.0.0.0) s_street_no String 25 Optional 12-35 Shipping address street number - Number with hyphen s_street_name String 25 Optional Corner Street Shipping address street name - Alphanumeric s_unit Numeric 25 Optional 25 Ex. block no, apartment no s_city Numeric 25 Optional New York Shipping address city - 15 chars s_state String 25 Optional NY Shipping address state (2 chars capital) s_zip Numeric 5 Optional 85364 Shipping address zip - 5 digit b_street_no String 25 Optional 12-35 Billing address street number - Number with hyphen b_street_name String 25 Optional Corner Street Billing address street name - Alphanumeric b_unit Numeric 25 Optional 25 Ex. block no, apartment no b_city Numeric 25 Optional New York Billing address city - 15 chars b_state String 25 Optional NY Billing address state (2 chars capital). b_zip Numeric 5 Optional 52468 Billing address zip - 5 digit orderId Numeric 12 Optional sale or auth Order id for sale and auth invoicenumber String 12 Optional 253647896512 Alphanumeric 12 chars dataset_id Numeric 4 Optional 0 Line item against created dataset id orderdescription String 50 Optional Ex.Comments Description of the order validateCard int 1 Optional set 0 or 1 To validate the card userid Numeric 4 Optional 13241 It is the userid of the merchant to be updated

Refund API

Refund transaction, used to give money back to the cardholder

https://vt-staging.valorpaytech.com:4430/?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=refund&amount=100&city_tax=0&reduced_tax=0&surchargeIndicator=0&cvv=999&binType=1&surchargeRemoved=0&pan=4111111111111111&expiry_date=1225&epi=2226388434&avs=3&recursivePayment=false&s_street_no=2nd%20Avenue&b_street_no=123%20Avenue&dataset_id=0&validateCard=0&terms_checked=1&otp_app_id=464DA39FCFB44D54F6C1D22CEF9098E5&otp_api_key=15B8BCFDB337428792608354A1444050&uuid=6eEUjwWX8ETFdUhEDnnFW9zuNwzaxqVq&otp=542654&/refundapi?direct=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=refund&amount=100&city_tax=0&reduced_tax=0&surchargeIndicator=0&cvv=999&binType=1&surchargeRemoved=0&pan=4111111111111111&expiry_date=1225&epi=2226388434&avs=3&recursivePayment=false&s_street_no=2nd%20Avenue&b_street_no=123%20Avenue&dataset_id=0&validateCard=0&terms_checked=1&otp_app_id=464DA39FCFB44D54F6C1D22CEF9098E5&otp_api_key=15B8BCFDB337428792608354A1444050&uuid=6eEUjwWX8ETFdUhEDnnFW9zuNwzaxqVq&otp=542654&/refundapi?direct=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const fetch = require('node-fetch'); const url = 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=refund&amount=100&city_tax=0&reduced_tax=0&surchargeIndicator=0&cvv=999&binType=1&surchargeRemoved=0&pan=4111111111111111&expiry_date=1225&epi=2226388434&avs=3&recursivePayment=false&s_street_no=2nd%20Avenue&b_street_no=123%20Avenue&dataset_id=0&validateCard=0&terms_checked=1&otp_app_id=464DA39FCFB44D54F6C1D22CEF9098E5&otp_api_key=15B8BCFDB337428792608354A1444050&uuid=6eEUjwWX8ETFdUhEDnnFW9zuNwzaxqVq&otp=542654&/refundapi?direct='; const options = {method: 'POST', headers: {accept: 'application/json'}}; fetch(url, options) .then(res => res.json()) .then(json => console.log(json)) .catch(err => console.error('error:' + err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=refund&amount=100&city_tax=0&reduced_tax=0&surchargeIndicator=0&cvv=999&binType=1&surchargeRemoved=0&pan=4111111111111111&expiry_date=1225&epi=2226388434&avs=3&recursivePayment=false&s_street_no=2nd%20Avenue&b_street_no=123%20Avenue&dataset_id=0&validateCard=0&terms_checked=1&otp_app_id=464DA39FCFB44D54F6C1D22CEF9098E5&otp_api_key=15B8BCFDB337428792608354A1444050&uuid=6eEUjwWX8ETFdUhEDnnFW9zuNwzaxqVq&otp=542654&/refundapi?direct="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=refund&amount=100&city_tax=0&reduced_tax=0&surchargeIndicator=0&cvv=999&binType=1&surchargeRemoved=0&pan=4111111111111111&expiry_date=1225&epi=2226388434&avs=3&recursivePayment=false&s_street_no=2nd%20Avenue&b_street_no=123%20Avenue&dataset_id=0&validateCard=0&terms_checked=1&otp_app_id=464DA39FCFB44D54F6C1D22CEF9098E5&otp_api_key=15B8BCFDB337428792608354A1444050&uuid=6eEUjwWX8ETFdUhEDnnFW9zuNwzaxqVq&otp=542654&/refundapi?direct="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=refund&amount=100&city_tax=0&reduced_tax=0&surchargeIndicator=0&cvv=999&binType=1&surchargeRemoved=0&pan=4111111111111111&expiry_date=1225&epi=2226388434&avs=3&recursivePayment=false&s_street_no=2nd%20Avenue&b_street_no=123%20Avenue&dataset_id=0&validateCard=0&terms_checked=1&otp_app_id=464DA39FCFB44D54F6C1D22CEF9098E5&otp_api_key=15B8BCFDB337428792608354A1444050&uuid=6eEUjwWX8ETFdUhEDnnFW9zuNwzaxqVq&otp=542654&/refundapi?direct=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=refund&amount=100&city_tax=0&reduced_tax=0&surchargeIndicator=0&cvv=999&binType=1&surchargeRemoved=0&pan=4111111111111111&expiry_date=1225&epi=2226388434&avs=3&recursivePayment=false&s_street_no=2nd%20Avenue&b_street_no=123%20Avenue&dataset_id=0&validateCard=0&terms_checked=1&otp_app_id=464DA39FCFB44D54F6C1D22CEF9098E5&otp_api_key=15B8BCFDB337428792608354A1444050&uuid=6eEUjwWX8ETFdUhEDnnFW9zuNwzaxqVq&otp=542654&/refundapi?direct=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "error_code": "00", "amount": "100.00", "msg": "APPROVED", "desc": " NO MATCH ", "additional_info": null, "epi": "2319914861", "channel": "VT", "rrn": "328911501243", "txnid": "5227750" }
Field Type Length Mandatory/Optional Example Value Description uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com auth_token String 32 Mandatory 8E1DDE8DE369812732E88C583B14D0C4 Authentication Token is a piece of information that verifies the identity of a user to a website mtype Numeric 4 Mandatory 0200 Message type 0100 epi Numeric 10 Mandatory 2536419865 10 digit number will be generated as a part of merchant boarding amount Numeric 10 Mandatory 100.50 Transaction amount (Maximum amount 99,999.99) food_amount Numeric 4 Optional 10.00 Currency (Ex. 00.00) - Food amount should be less than to transaction amount tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) city_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) reduced_tax Numeric 4 Optional 10.00 Currency - (Ex. 00.00) surchargeIndicator Numeric 1 Mandatory 0 or 1 To enable or disable the surcharge fee (0 or 1) custom_fee Numeric 4 Optional 4.00 Custom fee/surcharge fee if any - Optional tip Numeric 4 Optional 5.00 TIP if any / Optional cvv Numeric 4 Optional 523 or 4251 3 or 4 digits number card_holder_name String 25 Optional Jackson Name of the cardholder pan Numeric 19 Mandatory 4012881888818888 Customer card number 15 to 19 digits expiry_date date 5 Mandatory 1225 Card expiry date, Accepted expiry MMYY or MM/YY subscription_start_date date 0 Mandatory 2023-04-05 Customer subscription start date - YYYY-MM-DD s_customerName String 25 Optional Jackson Shipping address customer name b_customerName String 25 Optional Jackson Billing address customer name recursivePaymentId Numeric 4 Optional 7129 Customer unique recursive payment id avs String 10 Optional 13 Address verification service (zip, street address) recursivePayment Boolean 5 Optional true or false Is recursive payment true or false phone Number 10 Optional 8965342569 Customer phone number - 10 digit email String 50 Optional test@valor.com Customer email id - Varchar 255 username String 25 Optional test002 Customer user name ip_address String 20 Optional 8:8:8:8 Merchant IP address- (Ex. 0.0.0.0) s_street_no String 25 Optional 12-35 Shipping address street number - Number with hyphen s_street_name String 25 Optional Corner Street Shipping address street name - Alphanumeric s_unit Numeric 25 Optional 25 Ex. block no, apartment no s_city Numeric 25 Optional New York Shipping address city - 15 chars s_state String 25 Optional NY Shipping address state (2 chars capital) s_zip Numeric 5 Optional 85364 Shipping address zip - 5 digit b_street_no String 25 Optional 12-35 Billing address street number - Number with hyphen b_street_name String 25 Optional Corner Street Billing address street name - Alphanumeric b_unit Numeric 25 Optional 25 Ex. block no, apartment no b_city Numeric 25 Optional New York Billing address city - 15 chars b_state String 25 Optional NY Billing address state (2 chars capital). b_zip Numeric 5 Optional 52468 Billing address zip - 5 digit orderId Numeric 12 Optional sale or auth Order id for sale and auth invoicenumber String 12 Optional 253647896512 Alphanumeric 12 chars dataset_id Numeric 4 Optional 0 Line item against created dataset id orderdescription String 50 Optional Ex.Comments Description of the order validateCard int 1 Optional set 0 or 1 To validate the card userid Numeric 4 Optional 13241 It is the userid of the merchant to be updated otp_api_key Numeric 32 Mandatory 10C8BCVDB337428792608354A14440T0 Refund otp API key otp_app_id Numeric 32 Mandatory 864DA39FCFB44DR4F6C1D28CEF9098EJ Refund otp APP Id otp Numeric 6 Mandatory 253647 Refund Otp (6 digit)

Settlement API

The payment gateway settlement is the process where the payment gateway proceeds to pay merchants for transactions processing performed during a specific period.

https://vt-staging.valorpaytech.com:4430/?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=settlement&epi=2226388434&/?settlementapi=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=settlement&epi=2226388434&/?settlementapi=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#4p5423lnn4s57h'); sdk.settlementApi({ app_id: '464DA39FCFB44D54F6C1D22CEF9098E5', auth_token: '8E1DDE8DE369812732E88C583B14D0C4', auth_key: '15B8BCFDB337428792608354A1444050', mtype: 'settlement', epi: '2226388434', '/?settlementapi': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=settlement&epi=2226388434&/?settlementapi="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=settlement&epi=2226388434&/?settlementapi="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=settlement&epi=2226388434&/?settlementapi=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&mtype=settlement&epi=2226388434&/?settlementapi=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "error_code": "00", "amount": "0.00", "msg": "APPROVED", "desc": null, "additional_info": null, "epi": "2313185814", "channel": "VT" }
Field Type Length Mandatory/Optional Example Value Description app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_token String 32 Mandatory 8E1DDE8DE369812732E88C583B14D0C4 Authentication Token is a piece of information that verifies the identity of a user to a website auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit mtype Numeric 4 Mandatory 0100 Message type 0100 epi Numeric 10 Optional 2536419865 The unique id refers to a particular store of the merchant

Add/Edit Subscription API

Create a payment slot for each subscription

https://vt-staging.valorpaytech.com:4430/?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://demo.valorpaytech.com/api/virtualTerminal/virtualTerminalDetails', [ 'body' => '{"data":{"cardDetails":{"number":"4111 1111 1111 1111","cardType":"visa","name":"","expiry":"12/25","cvc":"999","cardTypeValue":"D"},"shippingAddress":{"customerName":"bevin","streetNo":"2nd Avenue","streetName":"Newland","streetUnit":"2","city":"","state":"","zipCode":"50001"},"billingAddress":{"customerName":"bevin","streetNo":"2nd Avenue","streetName":"Newland","streetUnit":"2","city":"","state":"","zipCode":"50001"},"orderDetails":{"orderId":"","invoiceNumber":"","description":""},"transactionEntry":{"amount":"123.33","foodAmount":"0.00","manualStateTax":"0.00","manualCityTax":"0.00","manualReducedTax":"0.00","purchaseAmount":"0.00","firstName":"","lastName":"","phoneNo":"","email":""},"ponumberData":[],"ponumberTab":false,"mtype":"0200","modifierData":[],"reduced_tax":"0.00","city_tax":"0.00","epi":"2226388434","isEdit":false,"cardEdit":false,"validateCard":"0","recursiveBill":true,"cardBrand":"visa","isAddress":true,"dayofmonth":20,"cardCharges":500,"paymentType":1,"chargeMonths":6,"upcomingpayment":"2023/11/02","StartDate":"2023/10/03","recurringType":2,"surchargeIndicator":2,"surchargeRemoved":"0","username":"John Smith","descriptor":"RENIO","avs":"2","tax":5.03,"customFee":3.5}}', 'headers' => [ 'accept' => 'application/json', 'app_id' => '3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt', 'auth_key' => 'fTEwjdq00catWyCksPo1Jso0zLtJOOI5', 'authtoken' => '048dcae0-31bf-11ee-ada7-d3c80876c7ed', 'content-type' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://demo.valorpaytech.com/api/virtualTerminal/virtualTerminalDetails" payload = { "data": { "cardDetails": { "number": "4111 1111 1111 1111", "cardType": "visa", "name": "", "expiry": "12/25", "cvc": "999", "cardTypeValue": "D" }, "shippingAddress": { "customerName": "bevin", "streetNo": "2nd Avenue", "streetName": "Newland", "streetUnit": "2", "city": "", "state": "", "zipCode": "50001" }, "billingAddress": { "customerName": "bevin", "streetNo": "2nd Avenue", "streetName": "Newland", "streetUnit": "2", "city": "", "state": "", "zipCode": "50001" }, "orderDetails": { "orderId": "", "invoiceNumber": "", "description": "" }, "transactionEntry": { "amount": "123.33", "foodAmount": "0.00", "manualStateTax": "0.00", "manualCityTax": "0.00", "manualReducedTax": "0.00", "purchaseAmount": "0.00", "firstName": "", "lastName": "", "phoneNo": "", "email": "" }, "ponumberData": [], "ponumberTab": False, "mtype": "0200", "modifierData": [], "reduced_tax": "0.00", "city_tax": "0.00", "epi": "2226388434", "isEdit": False, "cardEdit": False, "validateCard": "0", "recursiveBill": True, "cardBrand": "visa", "isAddress": True, "dayofmonth": 20, "cardCharges": 500, "paymentType": 1, "chargeMonths": 6, "upcomingpayment": "2023/11/02", "StartDate": "2023/10/03", "recurringType": 2, "surchargeIndicator": 2, "surchargeRemoved": "0", "username": "John Smith", "descriptor": "RENIO", "avs": "2", "tax": 5.03, "customFee": 3.5 } } headers = { "accept": "application/json", "app_id": "3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt", "auth_key": "fTEwjdq00catWyCksPo1Jso0zLtJOOI5", "authtoken": "048dcae0-31bf-11ee-ada7-d3c80876c7ed", "content-type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#1d2w1k16lnn6cakt'); sdk.addeditSubscriptionApi({ data: { cardDetails: { number: '4111 1111 1111 1111', cardType: 'visa', name: '', expiry: '12/25', cvc: '999', cardTypeValue: 'D' }, shippingAddress: { customerName: 'bevin', streetNo: '2nd Avenue', streetName: 'Newland', streetUnit: '2', city: '', state: '', zipCode: '50001' }, billingAddress: { customerName: 'bevin', streetNo: '2nd Avenue', streetName: 'Newland', streetUnit: '2', city: '', state: '', zipCode: '50001' }, orderDetails: { orderId: '', invoiceNumber: '', description: '' }, transactionEntry: { amount: '123.33', foodAmount: '0.00', manualStateTax: '0.00', manualCityTax: '0.00', manualReducedTax: '0.00', purchaseAmount: '0.00', firstName: '', lastName: '', phoneNo: '', email: '' }, ponumberData: [], ponumberTab: false, mtype: '0200', modifierData: [], reduced_tax: '0.00', city_tax: '0.00', epi: '2226388434', isEdit: false, cardEdit: false, validateCard: '0', recursiveBill: true, cardBrand: 'visa', isAddress: true, dayofmonth: 20, cardCharges: 500, paymentType: 1, chargeMonths: 6, upcomingpayment: '2023/11/02', StartDate: '2023/10/03', recurringType: 2, surchargeIndicator: 2, surchargeRemoved: '0', username: 'John Smith', descriptor: 'RENIO', avs: '2', tax: 5.03, customFee: 3.5 } }, { app_id: '3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt', auth_key: 'fTEwjdq00catWyCksPo1Jso0zLtJOOI5', authtoken: '048dcae0-31bf-11ee-ada7-d3c80876c7ed' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://demo.valorpaytech.com/api/virtualTerminal/virtualTerminalDetails"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); headers = curl_slist_append(headers, "app_id: 3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt"); headers = curl_slist_append(headers, "auth_key: fTEwjdq00catWyCksPo1Jso0zLtJOOI5"); headers = curl_slist_append(headers, "authtoken: 048dcae0-31bf-11ee-ada7-d3c80876c7ed"); headers = curl_slist_append(headers, "content-type: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"data\":{\"cardDetails\":{\"number\":\"4111 1111 1111 1111\",\"cardType\":\"visa\",\"name\":\"\",\"expiry\":\"12/25\",\"cvc\":\"999\",\"cardTypeValue\":\"D\"},\"shippingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"billingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"orderDetails\":{\"orderId\":\"\",\"invoiceNumber\":\"\",\"description\":\"\"},\"transactionEntry\":{\"amount\":\"123.33\",\"foodAmount\":\"0.00\",\"manualStateTax\":\"0.00\",\"manualCityTax\":\"0.00\",\"manualReducedTax\":\"0.00\",\"purchaseAmount\":\"0.00\",\"firstName\":\"\",\"lastName\":\"\",\"phoneNo\":\"\",\"email\":\"\"},\"ponumberData\":[],\"ponumberTab\":false,\"mtype\":\"0200\",\"modifierData\":[],\"reduced_tax\":\"0.00\",\"city_tax\":\"0.00\",\"epi\":\"2226388434\",\"isEdit\":false,\"cardEdit\":false,\"validateCard\":\"0\",\"recursiveBill\":true,\"cardBrand\":\"visa\",\"isAddress\":true,\"dayofmonth\":20,\"cardCharges\":500,\"paymentType\":1,\"chargeMonths\":6,\"upcomingpayment\":\"2023/11/02\",\"StartDate\":\"2023/10/03\",\"recurringType\":2,\"surchargeIndicator\":2,\"surchargeRemoved\":\"0\",\"username\":\"John Smith\",\"descriptor\":\"RENIO\",\"avs\":\"2\",\"tax\":5.03,\"customFee\":3.5}}"); CURLcode ret = curl_easy_perform(hnd);
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://demo.valorpaytech.com/api/virtualTerminal/virtualTerminalDetails"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); headers = curl_slist_append(headers, "app_id: 3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt"); headers = curl_slist_append(headers, "auth_key: fTEwjdq00catWyCksPo1Jso0zLtJOOI5"); headers = curl_slist_append(headers, "authtoken: 048dcae0-31bf-11ee-ada7-d3c80876c7ed"); headers = curl_slist_append(headers, "content-type: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\"data\":{\"cardDetails\":{\"number\":\"4111 1111 1111 1111\",\"cardType\":\"visa\",\"name\":\"\",\"expiry\":\"12/25\",\"cvc\":\"999\",\"cardTypeValue\":\"D\"},\"shippingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"billingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"orderDetails\":{\"orderId\":\"\",\"invoiceNumber\":\"\",\"description\":\"\"},\"transactionEntry\":{\"amount\":\"123.33\",\"foodAmount\":\"0.00\",\"manualStateTax\":\"0.00\",\"manualCityTax\":\"0.00\",\"manualReducedTax\":\"0.00\",\"purchaseAmount\":\"0.00\",\"firstName\":\"\",\"lastName\":\"\",\"phoneNo\":\"\",\"email\":\"\"},\"ponumberData\":[],\"ponumberTab\":false,\"mtype\":\"0200\",\"modifierData\":[],\"reduced_tax\":\"0.00\",\"city_tax\":\"0.00\",\"epi\":\"2226388434\",\"isEdit\":false,\"cardEdit\":false,\"validateCard\":\"0\",\"recursiveBill\":true,\"cardBrand\":\"visa\",\"isAddress\":true,\"dayofmonth\":20,\"cardCharges\":500,\"paymentType\":1,\"chargeMonths\":6,\"upcomingpayment\":\"2023/11/02\",\"StartDate\":\"2023/10/03\",\"recurringType\":2,\"surchargeIndicator\":2,\"surchargeRemoved\":\"0\",\"username\":\"John Smith\",\"descriptor\":\"RENIO\",\"avs\":\"2\",\"tax\":5.03,\"customFee\":3.5}}"); CURLcode ret = curl_easy_perform(hnd);
package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://demo.valorpaytech.com/api/virtualTerminal/virtualTerminalDetails" payload := strings.NewReader("{\"data\":{\"cardDetails\":{\"number\":\"4111 1111 1111 1111\",\"cardType\":\"visa\",\"name\":\"\",\"expiry\":\"12/25\",\"cvc\":\"999\",\"cardTypeValue\":\"D\"},\"shippingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"billingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"orderDetails\":{\"orderId\":\"\",\"invoiceNumber\":\"\",\"description\":\"\"},\"transactionEntry\":{\"amount\":\"123.33\",\"foodAmount\":\"0.00\",\"manualStateTax\":\"0.00\",\"manualCityTax\":\"0.00\",\"manualReducedTax\":\"0.00\",\"purchaseAmount\":\"0.00\",\"firstName\":\"\",\"lastName\":\"\",\"phoneNo\":\"\",\"email\":\"\"},\"ponumberData\":[],\"ponumberTab\":false,\"mtype\":\"0200\",\"modifierData\":[],\"reduced_tax\":\"0.00\",\"city_tax\":\"0.00\",\"epi\":\"2226388434\",\"isEdit\":false,\"cardEdit\":false,\"validateCard\":\"0\",\"recursiveBill\":true,\"cardBrand\":\"visa\",\"isAddress\":true,\"dayofmonth\":20,\"cardCharges\":500,\"paymentType\":1,\"chargeMonths\":6,\"upcomingpayment\":\"2023/11/02\",\"StartDate\":\"2023/10/03\",\"recurringType\":2,\"surchargeIndicator\":2,\"surchargeRemoved\":\"0\",\"username\":\"John Smith\",\"descriptor\":\"RENIO\",\"avs\":\"2\",\"tax\":5.03,\"customFee\":3.5}}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("accept", "application/json") req.Header.Add("app_id", "3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt") req.Header.Add("auth_key", "fTEwjdq00catWyCksPo1Jso0zLtJOOI5") req.Header.Add("authtoken", "048dcae0-31bf-11ee-ada7-d3c80876c7ed") req.Header.Add("content-type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://demo.valorpaytech.com/api/virtualTerminal/virtualTerminalDetails") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' request["app_id"] = '3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt' request["auth_key"] = 'fTEwjdq00catWyCksPo1Jso0zLtJOOI5' request["authtoken"] = '048dcae0-31bf-11ee-ada7-d3c80876c7ed' request["content-type"] = 'application/json' request.body = "{\"data\":{\"cardDetails\":{\"number\":\"4111 1111 1111 1111\",\"cardType\":\"visa\",\"name\":\"\",\"expiry\":\"12/25\",\"cvc\":\"999\",\"cardTypeValue\":\"D\"},\"shippingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"billingAddress\":{\"customerName\":\"bevin\",\"streetNo\":\"2nd Avenue\",\"streetName\":\"Newland\",\"streetUnit\":\"2\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"50001\"},\"orderDetails\":{\"orderId\":\"\",\"invoiceNumber\":\"\",\"description\":\"\"},\"transactionEntry\":{\"amount\":\"123.33\",\"foodAmount\":\"0.00\",\"manualStateTax\":\"0.00\",\"manualCityTax\":\"0.00\",\"manualReducedTax\":\"0.00\",\"purchaseAmount\":\"0.00\",\"firstName\":\"\",\"lastName\":\"\",\"phoneNo\":\"\",\"email\":\"\"},\"ponumberData\":[],\"ponumberTab\":false,\"mtype\":\"0200\",\"modifierData\":[],\"reduced_tax\":\"0.00\",\"city_tax\":\"0.00\",\"epi\":\"2226388434\",\"isEdit\":false,\"cardEdit\":false,\"validateCard\":\"0\",\"recursiveBill\":true,\"cardBrand\":\"visa\",\"isAddress\":true,\"dayofmonth\":20,\"cardCharges\":500,\"paymentType\":1,\"chargeMonths\":6,\"upcomingpayment\":\"2023/11/02\",\"StartDate\":\"2023/10/03\",\"recurringType\":2,\"surchargeIndicator\":2,\"surchargeRemoved\":\"0\",\"username\":\"John Smith\",\"descriptor\":\"RENIO\",\"avs\":\"2\",\"tax\":5.03,\"customFee\":3.5}}" response = http.request(request) puts response.read_body
{ "status": "OK", "message": "Successfully", "data": { "error_no": "S00", "success_url": true, "error_code": "00", "amount": "5.00", "tax": "0", "customfee": "0", "msg": "APPROVED", "desc": " NO MATCH ", "additional_info": null, "clerk_id": null, "clerk_name": null, "clerk_label": null, "additionalKeyOne": null, "additionalKeyTwo": null, "additionalValueOne": null, "additionalValueTwo": null, "approval_code": "TAS718", "rrn": "328512500645", "txnid": "5218176", "tran_no": 1, "stan": 163, "is_partial_approve": 0, "partial_amount": "000000000500", "pan": "XXXX1111", "card_type": null, "phone_number": "", "email_id": "", "zip": null, "card_holder_name": "", "expiry_date": "12/25", "address": null, "epi": "2226388434", "channel": "VT", "token": "749B07C96052DF0461492249157229767BF6645C", "card_brand": "Visa", "netamt": 5, "upcomingDateVals": [ "11/2/2023", " 8:32:00 AM" ] } }
Field Type Length Mandatory Example Value Description / Optional app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_token String 32 Mandatory 2c5b3f70-ddb5-11ed-b9d8-fb10efc0ec46 Authentication Token is a piece of information that verifies the identity of a user to a website auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com subscription_id Numeric 4 Mandatory 1234 A unique id for each subscriber DO NOT SEND if mtype is addsubscription uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit amount Numeric 7 Mandatory 100.00 Currency (Maximum amount 99,999.99) custom_fee Numeric 4 Mandatory 10.00 Currency tax Numeric 4 Mandatory 4.00 Currency mtype String 4 Mandatory addsubscription Message type "addsubscription" or "editsubscription" epi Numeric 10 Mandatory 2536419865 Epi number pan Numeric 16 Mandatory 4111111111111111 Card number expiry_date Numeric 4 Mandatory 1225 MMYY cvv Numeric 3 Mandatory 999 Card verification value card_holder_name String 25 Optional Jackson Name on the card descriptor String 10 Optional Eg.Comments Soft descriptor, cardholder see this in their statement,this is subject to the issuer bank invoice_no String 12 Mandatory 253647896512 Alphanumeric 12 product_description String 25 Optional Eg.Comments Alphanumeric 25 shipping_customer_name String 25 Mandatory Jackson Alphanumeric shipping_street_no String 25 Mandatory 12-35 Number with hyphen shipping_street_name String 25 Mandatory Corner Street Alphanumeric shipping_unit Numeric 25 Optional 25 Numeric shipping_zip Numeric 6 Mandatory 52468 Numeric shipping_city String 15 Optional New York Characters 15 shipping_state String 25 Optional NY 2 chars capital billing_customer_name String 32 Mandatory Jackson Alphanumeric 32 billing_street_no Numeric 25 Mandatory 12-35 Number with hyphen billing_street_name String 25 Mandatory Corner Street Alphanumeric billing_unit Numeric 25 Optional 25 Numeric billing_zip Numeric 6 Mandatory 52468 Numeric billing_city String 15 Optional New York Characters 15 billing_state String 15 Optional NY 2 chars capital subscription_day_of_the_month Numeric 2 Mandatory 02 2 digit number refers the day of the month subscription_starts_from Numeric 8 Mandatory 2023-04-13 YYYY-MM-DD subscription_valid_for Numeric 6 Mandatory 2023-06-13 Number Example: 6 for 6 months 0 for never expire phone Numeric 10 Optional 1234567890 10digit number email String 255 Optional test@valorpaytech.com Varchar 255 surchargeIndicator Numeric 1 Mandatory 1 Either 0 or 1

List Subscription API

https://vt-staging.valorpaytech.com:4430?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt&auth_token=048dcae0-31bf-11ee-ada7-d3c80876c7ed&auth_key=fTEwjdq00catWyCksPo1Jso0zLtJOOI5&subscription_id=7171&mtype=listsubscription&epi=2226388434&active=true&start_date=04%2F01%2F23&/?listsubsc=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt&auth_token=048dcae0-31bf-11ee-ada7-d3c80876c7ed&auth_key=fTEwjdq00catWyCksPo1Jso0zLtJOOI5&subscription_id=7171&mtype=listsubscription&epi=2226388434&active=true&start_date=04%2F01%2F23&/?listsubsc=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#4p5423lnn4s57h'); sdk.listSubscriptionApi({ app_id: '3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt', auth_token: '048dcae0-31bf-11ee-ada7-d3c80876c7ed', auth_key: 'fTEwjdq00catWyCksPo1Jso0zLtJOOI5', subscription_id: '7171', mtype: 'listsubscription', epi: '2226388434', active: 'true', start_date: '04%2F01%2F23', '/?listsubsc': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt&auth_token=048dcae0-31bf-11ee-ada7-d3c80876c7ed&auth_key=fTEwjdq00catWyCksPo1Jso0zLtJOOI5&subscription_id=7171&mtype=listsubscription&epi=2226388434&active=true&start_date=04%2F01%2F23&/?listsubsc="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt&auth_token=048dcae0-31bf-11ee-ada7-d3c80876c7ed&auth_key=fTEwjdq00catWyCksPo1Jso0zLtJOOI5&subscription_id=7171&mtype=listsubscription&epi=2226388434&active=true&start_date=04%2F01%2F23&/?listsubsc="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt&auth_token=048dcae0-31bf-11ee-ada7-d3c80876c7ed&auth_key=fTEwjdq00catWyCksPo1Jso0zLtJOOI5&subscription_id=7171&mtype=listsubscription&epi=2226388434&active=true&start_date=04%2F01%2F23&/?listsubsc=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=3j8Q4YNrPRWLXCg7Uv75HDf0ItNE6bdt&auth_token=048dcae0-31bf-11ee-ada7-d3c80876c7ed&auth_key=fTEwjdq00catWyCksPo1Jso0zLtJOOI5&subscription_id=7171&mtype=listsubscription&epi=2226388434&active=true&start_date=04%2F01%2F23&/?listsubsc=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "records": [ { "subscription_id": "11738", "amount": "200", "custom_fee": "3.5000", "tax": "5.0300", "invoice_number": "", "product_description": "", "shipping_customer_name": "bevin", "shipping_street_no": "2nd Avenue", "shipping_street_name": "Newland", "shipping_unit": "2", "shipping_city": "", "shipping_state": "", "shipping_zipcode": "50001", "billing_customerName": "bevin", "billing_street_no": "2nd Avenue", "billing_street_name": "Newland", "billing_unit": "2", "billing_city": "", "billing_state": "", "billing_zipcode": "50001", "subscription_day_of_the_month": "20", "subscription_starts_from": "2023-10-03", "subscription_valid_for": "6", "phone": "", "email": "", "no_of_failed_attempts": "0", "status": "1", "card_number": "XXXX1111", "total_no_of_payments": "0", "forfeit": "0", "forfeit_date": null } ], "error_no": "S00", "error_code": "00" }
Field Type Length Mandatory Example Value Description / Optional app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_token String 32 Mandatory 2c5b3f70-ddb5-11ed-b9d8-fb10efc0ec46 Authentication Token is a piece of information that verifies the identity of a user to a website auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com subscription_id String 4 Optional 1234 OPTIONAL if leave it empty then the report will deliver all subscription mtype Numeric 4 Mandatory listsubscription Message type listsubscription active Boolean 2 Optional true True or false ( if true then it will show only active subscription , false then it will show all subscription ) start_date Numeric 8 Mandatory 2023-04-17 YYYYMMDD show subscription which is from the start_date

Void API

https://vt-staging.valorpaytech.com:4430?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&uid=0553198707&epi=2226388434&rrn=328604501398&userid=12043&auth_code=TAS204&pos_entry_mode=012&surchargeIndicator=1&mtype=void&pos_condition_code=8&tran_no=5&amount=1000&stan=233&tax=0&custom_fee=10&tip_amount=0&/?void=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&uid=0553198707&epi=2226388434&rrn=328604501398&userid=12043&auth_code=TAS204&pos_entry_mode=012&surchargeIndicator=1&mtype=void&pos_condition_code=8&tran_no=5&amount=1000&stan=233&tax=0&custom_fee=10&tip_amount=0&/?void=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#4p5423lnn4s57h'); sdk.voidApi({ app_id: '464DA39FCFB44D54F6C1D22CEF9098E5', auth_token: '8E1DDE8DE369812732E88C583B14D0C4', auth_key: '15B8BCFDB337428792608354A1444050', uid: '0553198707', epi: '2226388434', rrn: '328604501398', userid: '12043', auth_code: 'TAS204', pos_entry_mode: '012', surchargeIndicator: '1', mtype: 'void', pos_condition_code: '8', tran_no: '5', amount: '1000', stan: '233', tax: '0', custom_fee: '10', tip_amount: '0', '/?void': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&uid=0553198707&epi=2226388434&rrn=328604501398&userid=12043&auth_code=TAS204&pos_entry_mode=012&surchargeIndicator=1&mtype=void&pos_condition_code=8&tran_no=5&amount=1000&stan=233&tax=0&custom_fee=10&tip_amount=0&/?void="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&uid=0553198707&epi=2226388434&rrn=328604501398&userid=12043&auth_code=TAS204&pos_entry_mode=012&surchargeIndicator=1&mtype=void&pos_condition_code=8&tran_no=5&amount=1000&stan=233&tax=0&custom_fee=10&tip_amount=0&/?void="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&uid=0553198707&epi=2226388434&rrn=328604501398&userid=12043&auth_code=TAS204&pos_entry_mode=012&surchargeIndicator=1&mtype=void&pos_condition_code=8&tran_no=5&amount=1000&stan=233&tax=0&custom_fee=10&tip_amount=0&/?void=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_token=8E1DDE8DE369812732E88C583B14D0C4&auth_key=15B8BCFDB337428792608354A1444050&uid=0553198707&epi=2226388434&rrn=328604501398&userid=12043&auth_code=TAS204&pos_entry_mode=012&surchargeIndicator=1&mtype=void&pos_condition_code=8&tran_no=5&amount=1000&stan=233&tax=0&custom_fee=10&tip_amount=0&/?void=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "error_code": "00", "amount": "567.67", "msg": "APPROVED", "desc": "APPROVAL TAS191 ", "additional_info": null, "epi": "2313185814", "channel": "VT", "rrn": "328604501386", "txnid": "5221304" }
Field Type Length Mandatory Example Value Description / Optional app_id String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application auth_token String 32 Mandatory 2c5b3f70-ddb5-11ed-b9d8-fb10efc0ec46 Authentication Token is a piece of information that verifies the identity of a user to a website auth_key String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com uid Numeric 10 Mandatory 2223413579 A unique id of the request, A client can send any number of 10 digit epi Numeric 10 Mandatory 2536419865 10 digit device identifier rrn Numeric 12 Mandatory 310315503952 12 digit reference number of original transaction auth_code String 6 Mandatory TAS623 Authorization code pos_entry_mode Numeric 3 Mandatory 012 Pos entry mode = 012 mtype Numeric 4 Mandatory void Message type void tran_no Numeric 2 Mandatory 10 Transaction number stan Numeric 1 Mandatory 125 STAN number custom_fee Numeric 4 Optional 10.00 Custom fee/surcharge fee if any ( OPTIONAL )

Closed Batch API

https://vt-staging.valorpaytech.com:4430?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?batchID=118858&batchNO=39&auth_token=f8ec0e50-6831-11ee-b69e-07ff5d348884&mtype=getclosebatch&epi=2319914786&limit=20&offset=0&app_id=ZLC6pTITTJ4MlTAo2DpnPlEZwttgm4vp&appkey=xtG5iGg0SHVGhXHI30Hz5VKG2bolU5Mq&storeid=17358&/?closedbatch=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?batchID=118858&batchNO=39&auth_token=f8ec0e50-6831-11ee-b69e-07ff5d348884&mtype=getclosebatch&epi=2319914786&limit=20&offset=0&app_id=ZLC6pTITTJ4MlTAo2DpnPlEZwttgm4vp&appkey=xtG5iGg0SHVGhXHI30Hz5VKG2bolU5Mq&storeid=17358&/?closedbatch=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#3y1ss1olo5a8r3g'); sdk.closedBatchApi({ batchID: '118858', batchNO: '39', auth_token: 'f8ec0e50-6831-11ee-b69e-07ff5d348884', mtype: 'getclosebatch', epi: '2319914786', limit: '20', offset: '0', app_id: 'ZLC6pTITTJ4MlTAo2DpnPlEZwttgm4vp', appkey: 'xtG5iGg0SHVGhXHI30Hz5VKG2bolU5Mq', storeid: '17358', '/?closedbatch': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?batchID=118858&batchNO=39&auth_token=f8ec0e50-6831-11ee-b69e-07ff5d348884&mtype=getclosebatch&epi=2319914786&limit=20&offset=0&app_id=ZLC6pTITTJ4MlTAo2DpnPlEZwttgm4vp&appkey=xtG5iGg0SHVGhXHI30Hz5VKG2bolU5Mq&storeid=17358&/?closedbatch="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?batchID=118858&batchNO=39&auth_token=f8ec0e50-6831-11ee-b69e-07ff5d348884&mtype=getclosebatch&epi=2319914786&limit=20&offset=0&app_id=ZLC6pTITTJ4MlTAo2DpnPlEZwttgm4vp&appkey=xtG5iGg0SHVGhXHI30Hz5VKG2bolU5Mq&storeid=17358&/?closedbatch="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?batchID=118858&batchNO=39&auth_token=f8ec0e50-6831-11ee-b69e-07ff5d348884&mtype=getclosebatch&epi=2319914786&limit=20&offset=0&app_id=ZLC6pTITTJ4MlTAo2DpnPlEZwttgm4vp&appkey=xtG5iGg0SHVGhXHI30Hz5VKG2bolU5Mq&storeid=17358&/?closedbatch=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?batchID=118858&batchNO=39&auth_token=f8ec0e50-6831-11ee-b69e-07ff5d348884&mtype=getclosebatch&epi=2319914786&limit=20&offset=0&app_id=ZLC6pTITTJ4MlTAo2DpnPlEZwttgm4vp&appkey=xtG5iGg0SHVGhXHI30Hz5VKG2bolU5Mq&storeid=17358&/?closedbatch=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body

TIP Adjustment

https://vt-staging.valorpaytech.com:4430?
<?php require_once('vendor/autoload.php'); $client = new \GuzzleHttp\Client(); $response = $client->request('POST', 'https://vt-staging.valorpaytech.com:4430/?epi=2313185814&amount=5&stan=595&rrn=330310752470&auth_code=TAS070&app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_key=15B8BCFDB337428792608354A1444050&auth_token=8E1DDE8DE369812732E88C583B14D0C4&mtype=tipadjust&/?tipadjust=', [ 'headers' => [ 'accept' => 'application/json', ], ]); echo $response->getBody();
import requests url = "https://vt-staging.valorpaytech.com:4430/?epi=2313185814&amount=5&stan=595&rrn=330310752470&auth_code=TAS070&app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_key=15B8BCFDB337428792608354A1444050&auth_token=8E1DDE8DE369812732E88C583B14D0C4&mtype=tipadjust&/?tipadjust=" headers = {"accept": "application/json"} response = requests.post(url, headers=headers) print(response.text)
const sdk = require('api')('@valorapi/v1.0#1f4drw1iloclyowu'); sdk.tipAdjustment({ epi: '2313185814', amount: '5', stan: '595', rrn: '330310752470', auth_code: 'TAS070', app_id: '464DA39FCFB44D54F6C1D22CEF9098E5', auth_key: '15B8BCFDB337428792608354A1444050', auth_token: '8E1DDE8DE369812732E88C583B14D0C4', mtype: 'tipadjust', '/?tipadjust': '' }) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST"); curl_easy_setopt(hnd, CURLOPT_WRITEDATA, stdout); curl_easy_setopt(hnd, CURLOPT_URL, "https://vt-staging.valorpaytech.com:4430/?epi=2313185814&amount=5&stan=595&rrn=330310752470&auth_code=TAS070&app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_key=15B8BCFDB337428792608354A1444050&auth_token=8E1DDE8DE369812732E88C583B14D0C4&mtype=tipadjust&/?tipadjust="); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "accept: application/json"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
using RestSharp; var options = new RestClientOptions("https://vt-staging.valorpaytech.com:4430/?epi=2313185814&amount=5&stan=595&rrn=330310752470&auth_code=TAS070&app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_key=15B8BCFDB337428792608354A1444050&auth_token=8E1DDE8DE369812732E88C583B14D0C4&mtype=tipadjust&/?tipadjust="); var client = new RestClient(options); var request = new RestRequest(""); request.AddHeader("accept", "application/json"); var response = await client.PostAsync(request); Console.WriteLine("{0}", response.Content);
package main import ( "fmt" "net/http" "io" ) func main() { url := "https://vt-staging.valorpaytech.com:4430/?epi=2313185814&amount=5&stan=595&rrn=330310752470&auth_code=TAS070&app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_key=15B8BCFDB337428792608354A1444050&auth_token=8E1DDE8DE369812732E88C583B14D0C4&mtype=tipadjust&/?tipadjust=" req, _ := http.NewRequest("POST", url, nil) req.Header.Add("accept", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(string(body)) }
require 'uri' require 'net/http' url = URI("https://vt-staging.valorpaytech.com:4430/?epi=2313185814&amount=5&stan=595&rrn=330310752470&auth_code=TAS070&app_id=464DA39FCFB44D54F6C1D22CEF9098E5&auth_key=15B8BCFDB337428792608354A1444050&auth_token=8E1DDE8DE369812732E88C583B14D0C4&mtype=tipadjust&/?tipadjust=") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["accept"] = 'application/json' response = http.request(request) puts response.read_body
{ "error_no": "S00", "success_url": true, "error_code": "00", "amount": "5.00", "tax": "", "customfee": "", "msg": "APPROVED", "desc": null, "additional_info": null, "clerk_id": null, "clerk_name": null, "clerk_label": null, "additionalKeyOne": null, "additionalKeyTwo": null, "additionalValueOne": null, "additionalValueTwo": null, "approval_code": "TAS070", "rrn": "330310752470", "txnid": null, "tran_no": 6, "stan": 595, "is_partial_approve": 0, "partial_amount": "000000000500", "pan": "XXXX", "card_type": null, "phone_number": null, "email_id": null, "zip": null, "card_holder_name": null, "expiry_date": "/", "address": null, "epi": "2313185814", "channel": "VT", "token": null, "card_brand": null, "netamt": 5 }
Field Type Length Mandatory/Optional Example Value Description. epi Numeric 10 Mandatory 2536419865 EPI is an end point identifier, Identify the device on valor infrastructure, it's a 10 digit number starts with 2 amount Numeric 10 Mandatory 10.00 TIP amount (Ex:5.00, 10.00, 20.00 etc.) stan Numeric 6 Mandatory 854 Should match the original sale stan rrn String 15 Mandatory 32921075112 RRN number from sale txn response (Numeric) auth_code String 8 Mandatory TAS12455 Approval code response from sale transaction (Alphanumeric) appid String 32 Mandatory 464DA39FCFB44D54F6C1D22CEF9098E5 Application id, an unique id given for the application appkey String 32 Mandatory 15B8BCFDB337428792608354A1444050 Authorization key (API key) given for application contact support@isoaccess.com mtype String 50 Mandatory tipadjust Message type should be set as tipadjust

Error Codes

General Error Codes

Error Code	  Error Description

E01 	          UID IS MISSING
E02	          INVALID UID
E03	          MESSAGE FORMATION IS WRONG
E04	          INVALID MESSAGE CODE
E05	          INVALID AMOUNT
E06	          INVALID CARD NUMBER
E07	          INVALID EXPIRY DATE
E08	          INVALID CARD HOLDER NAME
E09	          INVALID ADDRESS
E10	          INVALID ZIP
E11	          INVALID APP ID
E12	          INVALID AUTH TOKEN
E13	          INVALID AUTH KEY
E14	          INVALID TRANSACTION ID
E15	          INVALID PROCESSING CODE
E16	          INVALID TRAN NO
E17	          INVALID RRN
E18	          INVALID AUTH CODE
E19	          INVALID POS ENTRY CODE
E20	          TRANSACTION TIME OUT
E21	          SC INDICATOR INVALID
E22	          EPAGE URL GENERATION FAILED
E23	          EPAGE URL TIMEOUT
E24	          EPAGE URL LIMIT EXCEED
E25	          EPAGE URL INVALID REQUEST
E26	          AUTHENTICATION FAILED
E27	          SUBSCRIPTION ID IS MISSING
E28	          FREEZE START DATE IS MISSING
E29	          FREEZE STOP DATE IS MISSING
E30	          INVALID FREEZE DATE REQUEST
E31	          NO SUBSCRIPTION AVAILABLE
E32	          ACTIVE SEARCH FLAG IS MISSING
E33	          START DATE SEARCH FLAG IS MISSING
E34	          INVALID STAN NO
E35	          INVALID FORFEIT FLAG
E36	          FORFEIT FLAG IS NOT UPDATED
E99	          GENERAL ERROR
E98	          TRANSACTION DECLINED
S00	          SUCCESS
00	          CONNECTION SUCCESS
D01	          APP ID IS REQUIRED
D02	          APP KEY IS REQUIRED
D03	          TXN TYPE IS REQUIRED
D04	          AMOUNT IS REQUIRED
D05	          BLACK LISTED IP
D06	          NOT A VALID APP ID
D07	          NOT A VALID APP KEY
D08	          INVALID TXN TYPE
D09	          INVALID EPI
D10	          IP ADDRESS IS NOT WHITELISTED
D11	          IP ADDRESS MANDATORY
D12	          SHIPPING COUNTRY MANDATORY
D13	          FOREIGN DELIVERY IS NOT ALLOWED
D14	          INTERNATIONAL IP ADDRESS ACCESS IS NOT ALLOWED
D15	          TRANSACTION NOT ALLOWED
D16	          INVALID STORE ID
D17	          INVALID VOUCHER NO
D18	          INVALID APPROVAL CODE
D19	          INVALID TRAN NO OR LAST4DIGITS PAN NUMBER

     TXN API ERROR CODES
	 
D20	          INVALID DATE RANGE
D21	          FILTER IS INVALID
D22	          FILTER TEXT IS INVALID
D23	          LIMIT MUST BE LESSER THAN 1000
D24	          OFFSET MUST BE LESSER THAN 1000
D25	          GENERAL TXNFETCH ERROR
D26	          DATE FILTER IS INVALID
A01	          ACCOUNT NUMBER IS INVALID
A02	          ROUTING NUMBER IS INVALID
A03	          ACCOUNT TYPE IS INVALID
A04	          PAYEE NAME IS INVALID
A05	          NO VENDOR FOUND
A06	          AUTH FAILED
A07	          ACH TXN NOT FOUND
A08	          ACH TXN ALREADY VOIDED
A09	          ACH TXN CANNOT BE VOID SETTLED ALREADY
A10	          INELIGIBLE FOR VOID
A11	          AUTH FAILED
A12	          NO MERCHANT ACCOUNT
A13	          VOID CANNOT BE LOCATED
A14	          VENDOR SYSTEM SOMETHING WENT WRONG
A15	          LIMIT SHOULD NOT BE MORE THAN 1000
A16	          INVALID DATES
A17	          INVALID FREQUENCY TYPE
A18	          INVALID UID
A99	          SYSTEM ERROR

Switch Error Code

Code Type Message 00 APPROVAL Approved and completed 01 CALL Refer to issuer 02 CALL Refer to issuer-Special condition 03 TERM ID ERROR Invalid Merchant ID 04 HOLD-CALL Pick up card (no fraud) 05 DECLINE Do not honor 06 ERROR General error 07 HOLD-CALL Pick up card 08 APPROVAL Honor Mastercard with ID 10 PARTIAL APPROVAL Partial approval for the authorized amount returned in Group III version 022 11 APPROVAL VIP approval 12 INVALID TRANS Invalid transaction 13 AMOUNT ERROR Invalid amount 14 CARD NO ERROR Invalid card number 15 NO SUCH ISSUER No such issuer 19 RE ENTER Re-enter transaction 21 NO ACTION TAKEN Unable to back out transaction 25 NO CARD NUMBER Unable to locate the account number 28 NO REPLY File is temporarily unavailable 30 MSG FORMAT ERROR Transaction was improperly formatted 39 NO CREDIT ACCT No credit account 41 HOLD-CALL Lost card 43 HOLD-CALL Stolen card 51 DECLINE Insufficient funds 52 NO CHECK ACCOUNT No checking account 53 NO SAVE ACCOUNT No savings account 54 EXPIRED CARD Expired card 55 WRONG PIN Incorrect PIN 57 SERV NOT ALLOWED Transaction not permitted-Card 58 SERV NOT ALLOWED Transaction not permitted-Terminal 61 DECLINE Exceeds withdrawal limit 62 DECLINE Invalid service code restricted 63 SEC VIOLATION Security violation 65 DECLINE Activity limit exceeded 75 PIN EXCEEDED PIN tried exceeded 76 UNSOLIC REVERSAL Unable to locate 77 NO ACTION TAKEN Inconsistent 78 NO ACCOUNT No account 79 ALREADY REVERSED Already reversed at switch 80 NO IMPACT No Financial impact (used in reversal responses to decline originals) 81 ENCRYPTION ERROR Cryptographic error 82 INCORRECT CVV CVV data is not correct 83 CANT VERIFY PIN Cannot verify PIN 85 CARD OK No reason to decline 86 CANT VERIFY PIN Cannot verify PIN 91 NO REPLY Issuer or switch is unavailable 92 INVALID ROUTING Destination not found 93 DECLINE Violation 94 DUPLICATE TRANS Unable to locate 96 SYSTEM ERROR System malfunction A1 ACTIVATED POS device authentication successful A2 NOT ACTIVATED POS device authentication not successful A3 DEACTIVATED POS device deactivation successful B1 SRCHG NOT ALLOWD Surcharge amount not permitted on debit cards or EBT food stamps B2 SRCHG NOT ALLOWD Surcharge amount not supported by debit network issuer CV FAILURE CV Card Type Verification Error D3 SECUR CRYPT FAIL transaction failure due to missing or invalid 3D-Secure cryptogram E1 ENCR NOT CONFIGD Encryption is not configured E2 TERM NOT AUTHENT Terminal is not authenticated E3 DECRYPT FAILURE Data could not be decrypted EA ACCT LENGTH ERR Verification error EB CHECK DIGIT ERR Verification error EC CID FORMAT ERROR Verification error HV FAILURE HV Hierarchy Verification Error K0 TOKEN RESPONSE Token request was processed K1 TOKEN NOT CONFIG Tokenization is not configured K2 TERM NOT AUTHENT Terminal is not authenticated K3 TOKEN FAILURE Data could not be de-tokenized M0 Mastercard: Canada region-issued Domestic Debit Transaction not allowed N3 CACHBACK NOT AVL Cash back service not available N4 DECLINE Exceeds issuer withdrawal limit