createSimulatedCardAuth()
This method allows for the simulation of card authorization. The createSimulatedCardAuth() method cannot be used in the production environment. Upon completing a successful call to this method, the API consumer should expect an unsettled card authorization related to the customer account that was referenced. Authorization response code, authorization response code description, and authorization ID are returned upon success.
A simulated settle will only settle for the amount of the card authorization. If trying to simulate an up charge, this won't work in CV.
Example: Authorize for 10.50, Settle for 15.50, results in CV will be 10.50.
Parameters
Parameter Required Data type Pattern Notes
transactionId Yes String 60 characters or less 9845dk-39fdk3fj3-4483483478 A unique system generated ID number that identifies the API transaction with Galileo Processing systems. A UUID is preferred. This must be different for each transaction.
accountNo Yes String PAN or PRN 074103447228 Can be either a PAN (the 16 digit card number) or PRN (a unique 12 digit account identifier).
amount Yes Amount Monetary amount greater than 0. 25.50 Currency amounts passed as whole or fractional amounts, examples: '100.00', '100', or '100.73'.
association Yes String 'visa' or 'mc_auth' Visa Determines what association type will be simulated. Pass 'visa' for Visa and 'mc_auth' for Mastercard.
merchantName Yes String Alphanumeric string up to 40 characters in length. Fred Jones Bagels Merchant name is typically 40 bytes of fixed with delimeted data. The API consumer can pass their own 40 byte complete string or pass up to 22 bytes and the simulator with add fake address information for the remaining 18 bytes.
acquirerId No Number 6 digit number 437723 If no aquirerId value is passed, a random 6 digit number will be generated and used.
terminalId No Number 8 digit number 57395783 If no terminalId value is passed, a random 8 digit number will be generated and used.
merchantId No String 15 character alphanumeric string asdf If no merchantId value is passed a random 15 byte alphanumeric string will be generated and used.
Status Codes
Response Code description
0 Success
525-01 Method not available in the production environment
-1 Indicates that the application record failed to update or return.
Response
<?xml version="1.0" encoding="UTF-8"?>
<response>
   <status_code>0</status_code>
   <status>Success</status>
   <system_timestamp>2011-10-07 10:25:07</system_timestamp>
   <response_data>
     <auth_response_code>00</auth_response_code>
     <auth_response_description>Success</auth_response_description>
     <auth_id>37548997</auth_id>
   </response_data>
   <processing_time>0.973</processing_time>
   <echo>
     <transaction_id>12345a</transaction_id>
     <provider_transaction_id>77bb</provider_transaction_id>
     <provider_timestamp>2013-02-06 10:10:10</provider_timestamp>
   </echo>
</response>
Code Snippet

                    # The following shell script will use cURL to call createSimulatedCardAuth
# and return the json response.

curl -d '{"transactionId":"45k-dk3fj3-44478", "accountNo":"074103447228", "amount":"25.50", "association":"visa", "merchantName":"Fred Jones Bagels"}' \ 
-H "response-content-type: json" \ 
-H "Authorization: Bearer **your-access-token**" \ 
-X POST https://sandbox.galileo-ft.com/intserv/4.0/createSimulatedCardAuth
                
                    // The following Java code will make a createSimulatedCardAuth call
// and print the json response.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.Reader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
import java.util. *;

class GalileoAPICall
{
    public static void main(String[] args) {
        try {
            Map<String,Object> params = new LinkedHashMap<>();
           params.put("transactionId", "45k-dk3fj3-44478");
           params.put("accountNo", "074103447228");
           params.put("amount", "25.50");
           params.put("association", "visa");
           params.put("merchantName", "Fred Jones Bagels");
            StringBuilder postData = new StringBuilder();
            for (Map.Entry<String,Object> param : params.entrySet()) {
                if (postData.length() != 0) postData.append('&');
                postData.append(URLEncoder.encode(param.getKey(), "UTF-8"));
                postData.append('=');
                postData.append(URLEncoder.encode(String.valueOf(param.getValue()), "UTF-8"));
            }
            byte[] postDataBytes = postData.toString().getBytes("UTF-8");

            URL url = new URL("https://sandbox.galileo-ft.com/intserv/4.0/createSimulatedCardAuth");

            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");
            conn.setRequestProperty("response-content-type", "json");
            conn.setRequestProperty("Authorization", "Bearer **your-access-token");
            conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length));
            conn.setDoOutput(true);
            conn.getOutputStream().write(postDataBytes);

            String xmlOutput;

            Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
            for (int c; (c = in.read()) >= 0;) {
                System.out.print((char)c);
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
                
                    # The following Python code will call createSimulatedCardAuth
# and print the json response.

import requests
headers = {'response-content-type': 'json', 'Authorization': 'Bearer {}'.format(**your-access-token**)}
payload = {'transactionId': '45k-dk3fj3-44478', 'accountNo': '074103447228', 'amount': '25.50', 'association': 'visa', 'merchantName': 'Fred Jones Bagels'}
r = requests.post(url='https://sandbox.galileo-ft.com/intserv/4.0/createSimulatedCardAuth', data=payload, headers=headers)
try:
    print(r.json())
except:
    print(r.status_code)
                
                    // The following PHP code will make a createSimulatedCardAuth call
// and prints the json response.

$endpoint = 'https://sandbox.galileo-ft.com/intserv/4.0/createSimulatedCardAuth';
$params = array('transactionId'=>'45k-dk3fj3-44478', 'accountNo'=>'074103447228', 'amount'=>'25.50', 'association'=>'visa', 'merchantName'=>'Fred Jones Bagels');

$curl = curl_init();
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $params);
curl_setopt($curl, CURLOPT_URL, $endpoint);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
    'response-content-type: json',
    'Authorization: Bearer **your-access-token**'
));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($curl);
curl_close($curl);
$json = new json_decode($result, true);
print_r($json);

                
                    // The following C# code will make a createSimulatedCardAuth call
// and print the json response.

using System;using System.IO;
using System.Net;
using System.Text;

byte[] data = Encoding.ASCII.GetBytes(
    "transactionId=45k-dk3fj3-44478&accountNo=074103447228&amount=25.50&association=visa&merchantName=Fred Jones Bagels");
WebRequest request = WebRequest.Create("https://sandbox.galileo-ft.com/intserv/4.0/createSimulatedCardAuth");
request.Method = "POST"\;
request.ContentLength = data.Length;
request.Headers.Add("response-content-type", "json");
request.Headers.Add("Authorization","Bearer **your-access-token**");
using (Stream stream = request.GetRequestStream())
{
    stream.Write(data, 0, data.Length);
}
string responseContent = null;
using (WebResponse response = request.GetResponse())
{
    using (Stream stream = response.GetResponseStream())
    {
        using (StreamReader sr = new StreamReader(stream))
        {
            responseContent = sr.ReadToEnd();
        }
    }
}
Console.WriteLine(responseContent);
                
                    # The following Ruby code will make a createSimulatedCardAuth call
# and print the json response.

require 'uri'
require 'net/http'

uri = URI("https://sandbox.galileo-ft.com/intserv/4.0/createSimulatedCardAuth")
https = Net::HTTP.new(uri.host, uri.port)
https.use_ssl = true
request = Net::HTTP::Post.new(uri.path)
request['response-content-type'] = 'json'
request['Authorization'] = 'Bearer **your-access-token**'
request.body = {transactionId: '45k-dk3fj3-44478', accountNo: '074103447228', amount: '25.50', association: 'visa', merchantName: 'Fred Jones Bagels'}.to_json
response = https.request(request)
puts response