Custom Program
JWT Encoding

The token will be created using the following Python code.

import jwt
from datetime import datetime, timedelta
payload = {
'exp': datetime.utcnow() + timedelta(seconds=5),
'iat': datetime.utcnow(),
'iss': 'galileo'
}
token = jwt.encode(payload, 'secret', algorithm='HS256')
Authorization header field

The token will be placed in the Authorization header field. Below are the header values for the following static values of exp and iat.

Payload Value
iat 1534274881
exp 1534274886
Request
Name Required Type Description
auth_type Y string The Auth type described above.
transaction_type Y string The transaction type described above.
id Y string Unique identifier for this auth.
timestamp Y timestamp Timestamp for when the API call was initiated.
network Y string Network name (see list below).
subnetwork Y string The subnetwork name (will be the same as network if there is no subnetwork).
account Y object See 'Account name and descriptions' table below.
amounts Y object

These amounts will be positive. To calculate the actual signed amount for trans_amount, apply a factor of -1, and then another factor of -1 for each of the following criteria:

auth_type = 'reversal
transaction_type = 'Merchant Credit'
transaction_type = 'Payment'

 

See 'Amounts names and descriptions' table below.

mcc Y number Merchant Category Code
merchant Y object See 'Merchant name and descriptions' table below.
validation_results Y object See 'Validation results and descriptions' table below.
international Y Boolean If this is an international transaction with respect to the program's base currency.
response_code Y string(2) Current response code value to be used for the transaction. See Response codes section below.
auth_id Y integer Galileo Auth ID. Unique for a network.
partial_supported Y Boolean If a partial approval response is supported for this transaction.
incremental_auth Y Boolean If this is an incremental auth, this will be True and the original_id will the auth_id of the preauth being incremented.
entry_type Y string See entry types below.
pin_entry_capability N string See PIN entry capability below.
payment_info N object See 'Payment info description' table below.
original_id N integer For reversals or completions that match to an original auth, this is the original auth's auth_id. For incremental auths, this is the auth_id of the previous preauth that is being incremented.
avs_info N string The address and zip code provided for AVS checking. 30 characters of address, then nine characters of zip. Each field is left justified and space padded.
risk_score N integer The risk score from the network. For MasterCard, 0-999. For Visa, 0-99. Higher values indicate higher risk.
token_type N string Type of tokenized transaction. See token types below
rules_denied N list[string] List of fraud rules that caused a decline.

 

Request Tables
Account name and descriptions
Name Type Description
xid integer Galileo account ID for the account being used.
cad integer Galileo card ID for the card being used.
prn string Galileo Payment Reference Number for the account.
account_status string Account status
card_status string Card status
expiration_date string Card expiration date (YYMM).
Amounts names and descriptions
Name Required Type Description
currency Y currency_code The currency code used for the following amounts (unless otherwise stated).
trans_amount Y number Transaction amount, the full amount attempting to approve for. Includes upcharging and fees.
partial_amount Y number If this is a partial approval, this is the amount we would partially approve for.
cashback_amount Y number Cashback amount requested (included in trans_amount).
fee_amount Y number Amount of fee being reserved (included in trans_amount).
available_funds Y number Amount of funds available to cardholder for this transaction.
local_currency Y currency_code Local Currency code (ISO 4217 Numeric).
local_currency_amount N number Requested amount in local currency. No upcharging or fees.
settle_currency N currency_code Settlement currency code (ISO 4217 numeric).
settle_currency_amount N number Requested amount in settlement currency. No upcharging or fees.
Merchant name and descriptions
Name Type Description
acquirer_id string The Acquiring institution ID
terminal_id string The terminal ID
merchant_id string The merchant ID
merchant_description string The merchant description
merchant_country string Three digit country code (ISO 3166-1)
merchant_postal_code string Postal code (up to nine characters). Left-justified, may be padded with zeroes. All zeros indicates no postal code information.
Validation results and descriptions
Name Required Type Description
cvv1 Y string(1) Y - Validated, F - Failed, N - Not present
cvv2 Y string(1) Y - Validated, F - Failed, N - Not present
cvv3 Y string(1) Y - Validated, F - Failed, N - Not present
pin Y string(1) Y - Verified, F - Failed, L - Locked, M - PIN not set, B - Blocked, N - No PIN passed
arqc Y string(1) Y - Validated, F - Failed, N - Not present
offline_pin Y string(1) Y - Validated, F - Failed, N - Not present, E - Offline Pin Attempts Exceeded
avs_result Y string(1) Y - Address and Zip valid, A - Address only, Z - Zip only, N - None, M - Gift, U - Unsupported, B - AVS unused, C - unrecognized avs return value, D - No data, R - Retry AVS
Payment info description
Name Type Description
sender_name string Name of the sender of the payment.
fund_source string Source of the payment.
Response
Name Required Type Description
response_code Y String(2) Response code to use for this transaction. May overide the request response code if desired.
partial_amount N Number If response_code indicates a partial approval, this is the partial amount to approve for.
transfer_prn N string If a transfer is desired to cover a lack of funds, this is the PRN to pull those funds from.
transfer_amount N number The amount to transfer from the transfer_prn to the account performing the transaction.
source_transfer_type N string(2) If a transfer is desired, this is the type to use for the adjustment off of the transfer_prn account. If not passed, the default of 'pc' will be used.
dest_transfer_type N string(2) If a transfer is desired, this is the type to use for the adjustment onto the cardholders account. If not passed, the default of 'PC' will be used.
available_balance N number If the request is a balance inquiry, this is the available_balance to report back. If not present, the system balance is used.

 

Networks

 

Networks:

  • Allpoint
  • Discover
  • MasterCard
  • Star
  • Visa

Subnetworks:

  • P- Plus
  • O - Money Pass
  • R - Presto
  • MasterCard Banknet
  • MasterCard Debit Switch
  • Visa Interlink
Response Codes
Response codes
Value Description
00 Success
01 Issuer Error
04 Pick Up
05 Do Not Honor
06 Error
10 Partial Approval
14 Invalid PAN
30 Format Error
41 Lost Fraud Pick Up
43 Stolen Fraud Pick Up
51 NSF
54 Card Expired
55 Invalid PIN
57 Transaction not Permitted to Cardholder
59 Suspected Fraud (Visa Only)
61 Exceeds Amount Limit
65 Exceeds Count Limit
75 Pin Count Exceeded
85 AVS Only (No reason to decline)
87 Partial Approval (POS Amount only, no cashback)
96 System Error
N7 Invalid CVV2 (Visa Only)

 

Entry type

 

Value Description
EMV Chip EMV transaction where chip was inserted.
EMV Contactless EMV transaction using contactless technology.
EMV Fallback Unable to use the EMV chip, fallback to magstripe.
Magnetic Stripe The magnetic stripe was read.
Contactless Paypass contactless transaction.
Card Not Present Online, mail order or telephone order.
Manual Manually entered information.
Other None of the above.

 

PIN entry capability

 

Value Description
Capable Terminal has PIN entry capability.
Incapable Terminal has no PIN entry capability.
Inoperative Terminal has PIN entry capability but it is not working.
Other Unknown PIN entry capability.

 

Token type

 

  • Apple Inc.
  • Samsung Corporation
  • Google Inc.
  • Microsoft
  • Masterpass
  • Visa Checkout