Api URL

Auth

Request used to authenticate the API user. This call generates a token based on the company, username and api_key combination. The token received in the response will need to be included in the header for all other API requests.
Headers
Parameters
Name Type Required Description
company_id integer Yes System ID where the API User is registered
Sample: 245
user_name string Yes Username given by company
Sample: apiuser
api_key string Yes API key generated for authorized API user
Sample: 229932cc2916a698c1236d7469b947aa
Body
			{
				'token': 'f68067f6efb147cecbd428e30693db29'
			}
		
Headers
Parameters
*
*
*
Response

                                

                            
{'200':'HTTP 200 OK'}
{'401':'HTTP 401 Unauthorized'}

	 	{
			'success': true,
			'errors': [],
			'warnings': [],
			'data': {
				'token': 'f68067f6efb147cecbd428e30693db29',
	 		    'expiration': 1610498659
			}
		}

	 	{
			'success': false,
			'errors': ['API key invalid or API not allowed for this user.'],
			'warnings': [],
			'data': {}
		}

Common

Request that returns the list of locations accessible by the API User. The information retrieved is: Location ID, Name, Address, City, Region, Postal Code, Phone, Location Settlement Identifier, Location Identifier, Location Code, Internal Location Code, Hours Of Opperations, Latitude, Longitude, Google Place ID, Enabled For Online Ordering.
Headers
Name Type Required Description
token string Yes Valid authenticated token
Parameters
Name Type Required Description
company_id string No Company IDs separated by comma
Sample: 1,2
location_id string No Location IDs separated by comma
Sample: 1,2
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
enabled_for_online_ordering string No Enabled For Online Ordering or not
Sample: YES, NO
Body
Headers
*
Parameters
Response

                                

                            
HTTP 200 OK
{'401':'HTTP 401 Unauthorized'}

		{
			'success': 'true',
			'error_message': '',
			'warnings': '',
			'data': {
				'Companies': [
					{
						'SystemID': '1',
						'CompanyName': 'Currency Exchange International Corp',
						'Locations': [
							{
								'LocationID': '1',
								'Name': 'Main Office',
								'Address1': '6675 Westwood Boulevard',
								'Address2': 'Suite 300',
								'LocationTip': '',
								'City': 'Orlando',
								'Region': 'Florida',
								'PostalCode': '32821',
								'Phone': '1-888-998-3948',
	 						    'Email' : '[email protected]',
								'Country': 'US',
								'LocationSettlementIdentifier': {
									'SettlementAccount': '123456',
									'FinancialInstitution': '11111'
								},
								'LocationIdentifier': {
									'LocationCode': '001',
									'InternalLocationCode': ''
								},
								'EnabledForOnlineOrdering': 'No',
								'AvailableForHomeDelivery': 'Yes',
								'HomeDeliveryStates': 'FL,CO,NY',
								'Slug': 'florida-mall',
								'HideLocationAddress' : 'N0',
								'OnlineOrderingDisplayName' : 'Online Currency Location',
								'OnlineOrderingNotification' : 'Yes',
								'OnlineOrderingNotificationEmail' : '[email protected]',
								'OnlineOrderingSupportEmail' : '[email protected], [email protected]',
								'OnlineOrderingSupportPhone' : '4074592222',
								'GEO': {
									'Latitude': '',
									'Longitude': '',
									'GooglePlaceID': ''
								},
								'HoursOfOperations': '',
								'ReceiptDisclosure': ''
							},
							{
								'LocationID': '45',
								'Name': 'San Francisco - The Mechanics Bank',
								'Address1': '343 Sansome Street, Ste 100',
								'Address2': 'INSIDE MECHANICS BANK',
								'LocationTip': '',
								'City': 'San Francisco',
								'Region': 'California',
								'PostalCode': '94104',
								'Phone': '415-677-4040',
								'Country': 'US',
								'LocationSettlementIdentifier': [],
								'LocationIdentifier': {
									'LocationCode': 'SFMechanic',
									'InternalLocationCode': ''
								},
								'EnabledForOnlineOrdering': 'No',
								'AvailableForHomeDelivery': 'Yes',
								'HomeDeliveryStates': 'CA',
								'Slug': 'mechanics_bank',
								'HideLocationAddress' : 'N0',
								'OnlineOrderingDisplayName' : 'Online Currency Location',
								'OnlineOrderingNotification' : 'Yes',
								'OnlineOrderingNotificationEmail' : '[email protected]',
								'OnlineOrderingSupportEmail' : '[email protected], [email protected]',
								'OnlineOrderingSupportPhone' : '4074592222',
								'GEO': {
									'Latitude': '',
									'Longitude': '',
									'GooglePlaceID': ''
								},
								'HoursOfOperations': '',
								'ReceiptDisclosure': ''
							}
						]
					},
					{
						'SystemID': '1247',
						'CompanyName': 'OLCOTT PLASTICS INC',
						'Locations': [
							{
								'LocationID': '39097',
								'Name': 'Olcott Plastics Inc',
								'Address1': '95 N 17TH ST',
								'Address2': 'PO BOX 6042',
								'LocationTip': '',
								'City': 'SAINT CHARLES',
								'Region': 'Illinois',
								'PostalCode': '60174-1636',
								'Phone': '847-586-2480',
								'Country': 'US',
								'LocationSettlementIdentifier': [],
								'LocationIdentifier': {
									'LocationCode': '01',
									'InternalLocationCode': ''
								},
								'EnabledForOnlineOrdering': 'Yes',
								'AvailableForHomeDelivery': 'Yes',
								'HomeDeliveryStates': 'IL',
								'Slug': 'mechanics_bank',
								'HideLocationAddress' : 'N0',
								'OnlineOrderingDisplayName' : 'Online Currency Location',
								'OnlineOrderingNotification' : 'Yes',
								'OnlineOrderingNotificationEmail' : '[email protected]',
								'OnlineOrderingSupportEmail' : '[email protected], [email protected]',
								'OnlineOrderingSupportPhone' : '4074592222',
								'GEO': {
									'Latitude': '24.4459036',
									'Longitude': '-51.3994899',
									'GooglePlaceID': 'GhIJITkIGa1954gRhxkJYb4IM0O'
								},
								'HoursOfOperations': 'Monday - Friday Open 10:00AM–9:00PM',
								'ReceiptDisclosure': ''
							}
						]
					}
				]
	 		}
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
Returns a list of countries and states/regions supported. The parameter country_code supports multiple codes by comma separation. If no code is sent in the request, then the response will include all countries. This request also accepts the language parameter.
Headers
Name Type Required Description
token string Yes Valid authentication token
Parameters
Name Type Required Description
country_code string No Two character country ISO code
Sample: US,CA
language string No Language in which to display the data
Sample: English, French
Body
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success':true,
			'error_message':'',
			'warnings':'',
			'data':{
				'countries':[
					{
						'country':{
							'country_code':'US',
							'description':'United States',
							'regions':[
								{
									'region':{
										'region_code':'AL',
										'description':'Alabama'
									}
								}
							]
						}
					}
				]
			}
		}

	 	{
			'success': false,
			'error_message': 'Request is malformed or contains invalid input.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
Request that returns the list of locations accessible by the API User. The information retrieved is: Location ID, Name, Address, City, Region, Postal Code, Phone, Location Settlement Identifier, Location Identifier, Location Code, Internal Location Code, Hours Of Opperations, Latitude, Longitude, Google Place ID, Enabled For Online Ordering.
Headers
Name Type Required Description
token string Yes Valid authenticated token
Parameters
Name Type Required Description
company_id string No Company ID
Sample: 1
external_company_id string No External Company ID
Sample: BANKID
user_name string No Username given by company
Sample: apiuser
employee_name string No Employee name given by company
Sample: Api User
Body
Headers
*
Parameters
Response

                                

                            
HTTP 200 OK
{'401':'HTTP 401 Unauthorized'}

	{
	'success': 'true',
	'error_message': '',
	'warnings': '',
	'data': {
		'Locations': [
		{
			'CompanyID': '1',
			'LocationID': '1',
			'LocationCode': '001',
			'Name': 'Main Office',
			'Address1': '6675 Westwood Boulevard',
			'Address2': 'Suite 300',
			'City': 'Orlando',
			'State': 'Florida',
			'PostalCode': '32821',
			'Country': 'US',
			'InventoryType': 'OWN',
		},
		{
			'CompanyID': '1',
			'ExternalCompanyID': '123',
			'LocationID': '45',
			'LocationCode': 'SFMechanic',
			'Name': 'San Francisco - The Mechanics Bank',
			'Address1': '343 Sansome Street, Ste 100',
			'Address2': 'INSIDE MECHANICS BANK',
			'City': 'San Francisco',
			'State': 'California',
			'PostalCode': '94104',
			'Country': 'US',
			'InventoryType': 'OWN',
		}]
	}
	}

		{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}

Transaction

Rates endpoint is used to retrieve a full list of currencies which rates. The response is grouped by Currency, Product Type and Transaction Type

If location_id parameter is not sent or is an empty value, then the response will contain the data for the API user’s registered location.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite:
Location ID's can be obtained using the /common/locations endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
transaction_type string No Buy and/or Sell transaction type
Sample: BUY, SELL
product_type string No Currency product type, such as cash or traveler's checks
Sample: CASH, TC
location_id string No Location Id, if this is not specified, the location will be defaulted to the API user location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
include_preferred_rates string No Includes Preferred Rates
Sample: Yes/No
include_products string No Includes products
Sample: Yes/No
include_inactive string No Includes inactive currencies. This option works for SELL transaction type only.
Sample: Yes/No
Body
 {
     'transaction_type': 'BUY',
     'product_type': 'CASH',
     'location_id': '12345'
 }
 
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}

	{
		'success': true,
		'data': {
      	'EUR': {
          	'CASH': {
              	'BUY': [{
     					'threshold_amount': 0,
     					'rate': 1.013
     				}],
              	'SELL': [{
     					'threshold_amount': 0,
     					'rate': 1.035
     				}]
     			}
     		}
     	}
  }

 {
     'success': false,
     'error_message': 'Request is malformed or contains invalid input.'
 }
Denominations endpoint is used to retrieve a full list of currencies which contain the currency types (Ex: Cash, TC) along with the available denominations. The response is grouped by Transaction Type > Currency > Currency Type.

All parameters are optional, if a parameter is not included or no value is sent. Then all available values for the given parameter are selected. For example, if transaction_type is empty or not included, then both Buy and Sell are selected.

The location_id parameter is the only parameter that will not default to all available values. If this parameter is not sent or is an empty value, then the response will contain the data for the API user’s registered location.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite:
Location ID's can be obtained using the /common/locations endpoint.
ISO Codes can be obtained using the /transaction/currencies endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
transaction_type string No Buy and/or Sell transaction type
Sample: BUY, SELL
iso_code string No Three character currency ISO code, can accept multiple values with the comma
Sample: EUR, CAD, ...
type string No Currency product type, such as cash or traveler's checks
Sample: CASH, TC
location_id string No Location Id, if this is not specified, the location will be defaulted to the API user location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
include_products string No Includes products
Sample: Yes/No
Body
			{
				'transaction_type': 'Buy',
				'iso_code': 'EUR',
				'type': 'CASH',
				'location_id': '12345'
			}
 
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

			{
				'success': true,
				'error_message': '',
				'warnings': '',
				'data': {
					'BUY': {
						'EUR': {
							'CASH': [
								'5.00',
								'10.00',
								'20.00',
								'50.00',
								'100.00',
								'200.00',
								'500.00'
							],
							'TC': [
								'50.00',
								'100.00'
							]
						}
					},
					'SELL': {
						'EUR': {
							'CASH': [
								'5.00',
								'10.00',
								'20.00',
								'50.00',
								'100.00',
								'200.00',
								'500.00'
							],
							'TC': [
								'50.00',
								'100.00'
							]
						}
					}
				}
			}
 

	 	{
			'success': false,
			'error_message': 'Request is malformed or contains invalid input.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
Returns the list of available currencies and product types for the selected location. If no location is specified in the request, the response will default to use the API User’s registered location.

All parameters are optional. If no transaction type is sent in the request, then both Buy and Sell will be included in the response. The response data will be grouped buy transaction type followed by the currency. Each currency will contain the results with the available product types.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: Location ID's can be obtained using the /common/locations endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
transaction_type string No Buy or Sell Transaction
Sample: BUY, SELL
language string No Language in which to display the data
Sample: English, French, Spanish
location_id string No ID of the location whose information we want. If this parameter is not specified the system will retrieve the information of the user's location.
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
Body
			{
				'transaction_type': 'Buy',
				'language': 'English',
				'location_id': '12345'
			}
 
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success':true,
			'error_message':'',
			'warnings':'',
			'data': [
			{
				'transaction_type':'BUY',
				'currencies':[
				{
					'currency':{
						'iso_code':'AUD',
						'description':'Australia Dollar',
						'types':[
							{'type':'CASH','abbreviation':'CASH','description':'Cash'},
							{'type':'TC','abbreviation':'TC','description':'Traveler Check'}
						]
					}
				}]
			}]
		}

	 	{
			'success': false,
			'error_message': 'Request is malformed or contains invalid input.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
Currency pictures endpoint is used to gather the currency pictures that are accepted for purchase transactions.
The pictures are configured per company/location. Pictures can be downloaded per currency or all at once in base64 format.

All parameters are optional.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: Location ID's can be obtained using the /common/locations endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
iso_code string No Three character currency ISO code, can accept multiple values with the comma
Sample: EUR, CAD, ...
product_type string No Currency product type, such as cash or traveler's checks
Sample: CASH, TC
location_id string No ID of the location whose information we want. If this parameter is not specified the system will retrieve the information of the user's location.
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
Body
		{
			'iso_code': 'EUR',
			'product_type': 'TC',
			'location_id': '12345'
		}
 
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

	{
		'success':true,
			'data':{
				'TC':{
					'EUR':[
						{
							'dimension':'50.00',
							'name':'Euros',
							'size':'NA',
							'image_info':'We only buy AMERICAN EXPRESS TC! DO NOT accept any other TC.',
							'version':'A',
							'img_front':'/9j/4AAQSkZJRgABAQEAYABgAAD',
							'img_back':'/9j/4AAQSkZJRgABAQEAYABgAAD'
						},{
							'dimension':'100.00',
							'name':'Euros',
							'size':'NA',
							'image_info':'We only buy AMERICAN EXPRESS TC! DO NOT accept any other TC.',
							'version':'A',
							'img_front':'/9j/4AAQSkZJRgABAQEAYABgAAD',
							'img_back':'/9j/4AAQSkZJRgABAQEAYABgAAD'
						},{
							'dimension':'200.00',
							'name':'Euro',
							'size':'NA',
							'image_info':'We only buy AMERICAN EXPRESS TC! DO NOT accept any other TC.',
							'version':'A',
							'img_front':'/9j/4AAQSkZJRgABAQEAYABgAAD',
							'img_back':'/9j/4AAQSkZJRgABAQEAYABgAAD'
						},{
							'dimension':'500.00',
							'name':'Euro',
							'size':'NA',
							'image_info':'We only buy AMERICAN EXPRESS TC! DO NOT accept any other TC.',
							'version':'A',
							'img_front':'/9j/4AAQSkZJRgABAQEAYABgAAD',
							'img_back':'/9j/4AAQSkZJRgABAQEAYABgAAD'
						}
					]
				}
			},
			'error_message':'',
			'warnings':''
		}
 
Returns a list of available payment types for the specified location based on the company/location payment group settings. If the location is not sent in the request, the API User’s registered location will be used by default. This endpoint accepts transaction_type, language, and location_id parameters. All three are optional. Response data is grouped by transaction type by default.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: Location ID's can be obtained using the /common/locations endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
transaction_type string No Buy or Sell Transaction
Sample: BUY, SELL
language string No Language in which to display the data
Sample: English, French, Spanish
location_id string No ID of the location whose information we want. If this parameter is not specified the system will retrieve the information of the user's location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
Body
			{
				'transaction_type': 'Buy',
				'language': 'English',
				'location_id': '12345'
			}
 
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success': true,
			'error_message': '',
			'warnings': '',
			'data': {
				'SELL': {
					'ACC': 'Debit Account',
					'CASH': 'Cash',
					'TC': 'Traveler`s Checks',
					'DR': 'Draft',
					'CC': 'Credit Card'
				},
				'BUY': {
					'ACC': 'Deposit',
					'CASH': 'Cash',
					'DR': 'Draft',
					'AE': 'American Express'
				}
			}
		}
 

	 	{
			'success': false,
			'error_message': 'Request is malformed or contains invalid input.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
Gets the compliance fields required in order to complete a transaction. Uses a total parameter to identify the compliance fields thresholds. If no total is passed in the request, then all compliance fields will be in the response. Each field in the response will include field details. For example, Type = Text, Description = Account Number, Min Length = 1, Max Length = 35. Transaction type and account holder is required for this endpoint.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: Location ID's can be obtained using the /common/locations endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
location_id string No ID of the location whose information we want. If this parameter is not specified the system will retrieve the information of the user's location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
transaction_type string Yes Buy or Sell Transaction
Sample: BUY, SELL
total float No Transaction Total, if not specified the system will return all available fields
Sample: 999.99
account_holder string Yes Is the end-user an account holder or not
Sample: YES, NO
language string No Language in which to display the data
Sample: English, French, Spanish
Body
			{
				'location_id': '12345',
				'transaction_type': 'Buy',
				'total': '500.00',
				'account_holder': 'Yes',
				'language': 'English'
			}
 
Headers
*
Parameters
*
*
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

	 {
		  'success': true,
		  'error_message': '',
		  'warnings': '',
		  'data':{
					'Individual': {
						'client_id_type': {
							'Type': 'Selection',
							'Description': 'ID Type',
							'Threshold': 800,
							'Options': [
								{
									'OptionName': 'ID_TYPE_LICENSE',
									'Description': 'Driver License',
									'Citizen': 'YES',
									'client_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'client_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'client_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'client_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									},
									'client_region_of_issuance': {
										'Type': 'Selection',
										'Description': 'State or Province of Issuance',
										'Options': {
											'US': {
												'AL': 'Alabama',
												'AK': 'Alaska'
											}
										}
									}
								},
								{
									'OptionName': 'ID_TYPE_PASSPORT',
									'Description': 'US Passport',
									'Citizen': 'YES',
									'client_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'client_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'client_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'client_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									}
								},
								{
									'OptionName': 'ID_TYPE_FOREIGN_LICENSE',
									'Description': 'Foreign Driver License',
									'Citizen': 'NO',
									'client_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'client_country_of_issuance': {
										'Type': 'Selection',
										'Description': 'Country of Issuance',
										'Options': {
											'IT': 'Italy',
											'AF': 'Afghanistan'
										}
									},
									'client_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'client_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'client_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									},
									'client_region_of_issuance': {
										'Type': 'Selection',
										'Description': 'State or Province of Issuance',
										'Options': {
											'CA': {
												'AB': 'Alberta',
												'BC': 'British Columbia'
											},
											'US': {
												'AL': 'Alabama',
												'AK': 'Alaska'
											}
										}
									}
								}
							]
						},
						'client_first_name': {
							'Type': 'Text',
							'Description': 'First Name',
	 						'Threshold': 800,
							'MinLength': 2,
							'MaxLength': 64
						},
						'client_last_name': {
							'Type': 'Text',
							'Description': 'Last Name',
							'Threshold': 800,
							'MinLength': 2,
							'MaxLength': 64
						},
						'client_dob_mon': {
							'Type': 'Text',
							'Description': 'Date of Birth: Month',
							'Threshold': 900,
							'MinLength': 1,
							'MaxLength': 2
						},
						'client_dob_day': {
							'Type': 'Text',
							'Description': 'Date of Birth: Day',
							'Threshold': 900,
							'MinLength': 1,
							'MaxLength': 2
						},
						'client_dob_year': {
							'Type': 'Text',
							'Description': 'Date of Birth: Year',
							'Threshold': 900,
							'MinLength': 4,
							'MaxLength': 4
						},
						'client_citizen': {
							'Type': 'RadioButton',
							'Description': 'Citizen or Resident',
							'Threshold': 800,
							'Options': [
								{
									'OptionName': 'YES',
									'Description': 'Yes'
								},
								{
									'OptionName': 'NO',
									'Description': 'No'
								}
							]
						}
					},
					'Business': {
						'business_name': {
							'Type': 'Text',
							'Description': 'Company Name',
							'Threshold': 800,
							'MinLength': 2,
							'MaxLength': 64
						},
						'business_type_of_business': {
							'Type': 'Text',
							'Description': 'Type of Business',
							'MinLength': 1,
							'MaxLength': 35
						}
					},
					'PersonOnBehalf': {
						'pob_id_type': {
							'Type': 'Selection',
							'Description': 'ID Type',
							'Threshold': 800,
							'Options': [
								{
									'OptionName': 'ID_TYPE_LICENSE',
									'Description': 'Driver License',
									'Citizen': 'YES',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									},
									'pob_region_of_issuance': {
										'Type': 'Selection',
										'Description': 'State or Province of Issuance',
										'Options': {
											'US': {
												'AL': 'Alabama',
												'AK': 'Alaska'
											}
										}
									}
								},
								{
									'OptionName': 'ID_TYPE_PASSPORT',
									'Description': 'US Passport',
									'Citizen': 'YES',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									}
								},
								{
									'OptionName': 'ID_TYPE_MILITARY_ID',
									'Description': 'Military ID',
									'Citizen': 'YES',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									}
								},
								{
									'OptionName': 'ID_TYPE_STATE_ISSUED_ID',
									'Description': 'State Issued ID',
									'Citizen': 'YES',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									},
									'pob_region_of_issuance': {
										'Type': 'Selection',
										'Description': 'State or Province of Issuance',
										'Options': {
											'US': {
												'AL': 'Alabama',
												'AK': 'Alaska'
											}
										}
									}
								},
								{
									'OptionName': 'ID_TYPE_FOREIGN_PASSPORT',
									'Description': 'Foreign Passport',
									'Citizen': 'YES,NO',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_country_of_issuance': {
										'Type': 'Selection',
										'Description': 'Country of Issuance',
										'Options': {
											'IT': 'Italy',
											'AF': 'Afghanistan'
										}
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									}
								},
								{
									'OptionName': 'ID_TYPE_PASSPORT_CARD',
									'Description': 'US Passport Card',
									'Citizen': 'YES',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									}
								},
								{
									'OptionName': 'ID_TYPE_PERMANENT_RESIDENT_ID',
									'Description': 'Permanent Alien Resident Card',
									'Citizen': 'YES',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									}
								},
								{
									'OptionName': 'ID_TYPE_FOREIGN_LICENSE',
									'Description': 'Foreign Driver License',
									'Citizen': 'NO',
									'pob_id_number': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 35,
										'Description': 'ID Number'
									},
									'pob_country_of_issuance': {
										'Type': 'Selection',
										'Description': 'Country of Issuance',
										'Options': {
											'IT': 'Italy',
											'AF': 'Afghanistan'
										}
									},
									'pob_id_exp_mon': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Month'
									},
									'pob_id_exp_day': {
										'Type': 'Text',
										'MinLength': 1,
										'MaxLength': 2,
										'Description': 'ID Expiration Day'
									},
									'pob_id_exp_year': {
										'Type': 'Text',
										'MinLength': 4,
										'MaxLength': 4,
										'Description': 'ID Expiration Year'
									},
									'pob_region_of_issuance': {
										'Type': 'Selection',
										'Description': 'State or Province of Issuance',
										'Options': {
											'CA': {
												'AB': 'Alberta',
												'BC': 'British Columbia'
											},
											'US': {
												'AL': 'Alabama',
												'AK': 'Alaska'
											}
										}
									}
								}
							]
						},
						'pob_first_name': {
							'Type': 'Text',
							'Description': 'First Name',
							'Threshold': 800,
							'MinLength': 2,
							'MaxLength': 64
						},
						'pob_last_name': {
							'Type': 'Text',
							'Description': 'Last Name',
							'Threshold': 800,
							'MinLength': 2,
							'MaxLength': 64
						},
						'pob_dob_mon': {
							'Type': 'Text',
							'Description': 'Date of Birth: Month',
							'Threshold': 900,
							'MinLength': 1,
							'MaxLength': 2
						},
						'pob_dob_day': {
							'Type': 'Text',
							'Description': 'Date of Birth: Day',
							'Threshold': 900,
							'MinLength': 1,
							'MaxLength': 2
						},
						'pob_dob_year': {
							'Type': 'Text',
							'Description': 'Date of Birth: Year',
							'Threshold': 900,
							'MinLength': 4,
							'MaxLength': 4
						},
						'pob_citizen': {
							'Type': 'RadioButton',
							'Description': 'Citizen or Resident',
							'Threshold': 800,
							'Options': [
								{
									'OptionName': 'YES',
									'Description': 'Yes'
								},
								{
									'OptionName': 'NO',
									'Description': 'No'
								}
							]
						}
					}
		}
	}
 

	 	{
			'success': false,
			'error_message': 'Request is malformed or contains invalid input.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
Used to get the rate and fee for a transaction specific to a currency and amount combination. If iso_code, type, and amount are not sent in the request, the response will be empty, null or 0. Transaction type is required in order to determine a Buy or Sell rate for the response. If location-id is not included, then the response will default to the API User’s registered location. To use standard rates, rate_type_id should be 0.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

This request will respond with the rate according to the currency and amount sent. It will also return any exchange fees or order fees. There is also live rate support. If the rate is a live rate, the live rate value will be Yes.

The delivery_type and shipping_type_id is only used for Sell transactions.

Prerequisite:
Location ID's can be obtained using the /common/locations endpoint.
List of currency/ISO codes can be obtained using the /transaction/currencies endpoint.
List of usable rate types can be obtained using the /transaction/rate_types endpoint.
List of usable shipping type IDs can be obtained using the /transaction/shipping_services endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
language string No Language in which to display the data
Sample: English, French, Spanish
transaction_type string Yes Buy or Sell Transaction
Sample: BUY, SELL
location_id string No ID of the location whose information we want. If this parameter is not specified the system will retrieve the information of the user's location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
rate_type_id int No Special rate type if part of configuration i.e. elite/gold members. If not specified, Standard rate will be used by default.
Sample: 123
account_holder string No Is the end-user an account holder or not
Sample: Yes, No
delivery_type string No Destination for delivery, can be a custom residential/business address or to a bank/retail branch. Used for sell transaction type
Sample: BRANCH, CLIENT
shipping_type_id int No Shipping service ID that determines carrier and shipping type. Used for sell transaction type
Sample: 1, 2, 3
rows array No All currency rows of the transaction. Used to pass an array of values for iso_code, type, and amount.
Sample: [{'iso_code': 'EUR', 'type': 'CASH', 'amount': 50000.00}]
Body
		 {
				'language':'English',
   			'transaction_type':'Buy',
				'location_id':'12345',
				'rate_type_id':'3',
				'account_holder':'Yes',
				'delivery_type':'BRANCH',
				'shipping_type_id':1,
				'rows':[
						{
							'iso_code':'EUR',
							'type':'CASH',
							'amount':'50000.00'
						}
				]
		 }
 
Headers
*
Parameters
*
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

	 	 {
				'success': true,
				'error_message': '',
				'warnings': '',
				'data': {
						'rate_time_stamp': 0,
						'rows': [
								{
										'iso_code': 'EUR',
										'type': 'CASH',
										'amount': '800',
										'amount_corrected': false,
										'live_rate': 'No',
										'rate': '1.1918',
										'exchange_fee': 47.67
								}
						],
						'order_fees': [],
						'total_fee': 47.67
				 }
		 }
 

	 	 {
			 'success': false,
			 'error_message': 'Request is malformed or contains invalid input.',
			 'warnings': '',
			 'data': ''
		 }
 

	 	 {
			 'success': false,
			 'error_message': 'API key invalid or API not allowed for this user.',
			 'warnings': '',
			 'data': ''
		 }
 
This endpoint handles submitting transactions. If all data in the request is valid, then the endpoint will respond with successfully created transaction status and other information. If the company set-up utilizes our Live Stop system to aggregate customer daily totals, and new compliance thresholds are reached, the system will respond with a warning containing the additional compliance information required.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companies profile settings.

Prerequisite:
Location ID's can be obtained using the /common/locations endpoint.
List of currency/ISO codes can be obtained using the /transaction/currencies endpoint.
Calculation of rates/fees can be obtained from /transaction/rates_and_fees endpoint.
List of payment types can be obtained from /transaction/payment_types endpoint.
Calculation of order fees based on payment types can be obtained from /transaction/process_payments endpoint.
List of usable rate types can be obtained using the /transaction/rate_types endpoint.
Necessary compliance info can be determined by using the /transaction/compliance_fields endpoint.
List of usable shipping type IDs can be obtained using the /transaction/shipping_services endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
language string No Language
Sample: English, French, Spanish
location_id string No Location ID, if not specified the system will default to the user location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
transaction_type string Yes Buy or Sell Transaction
Sample: Buy, Sell
rate_type_id int No Special rate type if part of configuration i.e. elite/gold members. If not specified, Standard rate will be used by default.
Sample: 0, 1, 2, 3
account_holder string No Is the end-user an account holder or not
Sample: Yes/No
delivery_type string No Destination for delivery, can be a custom residential/business address or to a bank/retail branch. Used for sell transaction type. Note: If CLIENT is sent, then all shipping address fields are required.
Sample: Branch/Client
shipping_type_id int No Shipping service ID that determines carrier and shipping type. Used for sell transaction type
Sample: 1, 2, 3
rows array Yes All currency rows of the transaction. Only required information per row is iso_code, type, amount, rate, and fee. Note: If the currency row is a bank draft item, then all fields with the DR prefix will be required.
Sample: [{'iso_code': 'EUR', 'type': 'CASH', 'amount': '200.00', 'rate': '0.8480', 'fee': '10', 'dr_payable_to': 'DR Payable to', 'dr_reference':'DR Reference', 'dr_issuer': 'DR Issuer', 'dr_check_type': 'Payroll or Government', 'denominations': [{'value':'5.00', 'amount':'20'}, {'value': '10.00', 'amount': '10'}}]]
order_fees array No Fees for the transaction order not linked to a currency line, such as small order or shipping fees.
Sample: [{'type': 'SMALL_ORDER_FEE', 'amount': 200}]
payments array No Payment types used for the transaction in an array for the type and amount.
Sample: [{'type': 'CASH', 'amount': 2000}]
method_of_payment_info object No Compliance information for method of payment that's necessary for customers in Canada only.
Sample: {'individual_on_behalf': 'Hans Christian Andersen', 'method_of_payments': ['CASH', 'Other']}
basic_denom_choices string No Simplified denominations choices for order fulfillment
Sample: 'SMALL'/'LARGE'/'MIXED'
rate_changing_reason string No If end-users are allowed to change the rate of a transaction manually, a rate change reason is required.
Sample: The reason
fees_changing_reason string No If end-users are allowed to change the fee of a transaction manually, a fee change reason is required.
Sample: The reason
special_requests string No Text box that contains special instructions for order fulfillment, such as denominations
Sample: Something
attention_to string No The person who will be receiving the package at a branch/retail location
Sample: Attention To
external_user_id int No External User ID -- possibly the end-user's ID -- that we store for easier transaction identification
Sample: 123
external_transaction_id string No External Transaction ID from the connecting system for easier transaction identification. If used, this value must be unique for every transaction. An error will occur if a duplicate External Transaction ID is submitted.
Sample: 123
other_1 string No Other fields can contain any data to be used for identification purposes or extra information our system does not normally store.
Sample: Any info1
other_2 string No Other fields can contain any data to be used for identification purposes or extra information our system does not normally store.
Sample: Any info2
other_3 string No Other fields can contain any data to be used for identification purposes or extra information our system does not normally store.
Sample: Any info3
other_4 string No Other fields can contain any data to be used for identification purposes or extra information our system does not normally store.
Sample: Any info4
other_5 string No Other fields can contain any data to be used for identification purposes or extra information our system does not normally store.
Sample: Any info5
referral_code string No Referral Code is an optional field that can be used to keep track of referrals brought to the system.
Sample: 123abc456def
remitter_type string No Remitter type for a draft item. This is required for DR currency items.
Sample: INDIVIDUAL/BUSINESS
remitter_account_number string No Remitter account number for a draft item. This is required for DR currency items.
Sample: 65498714
remitter_first_name string No Remitter first name for a draft item. This is required for DR currency items.
Sample: Tom
remitter_middle_name string No Remitter middle name for a draft item. This is required for DR currency items.
Sample: Oliver
remitter_last_name string No Remitter last name for a draft item. This is required for DR currency items.
Sample: Jones
remitter_suffix_name string No Remitter suffix name for a draft item. This is required for DR currency items.
Sample: Jr.
remitter_address string No Remitter address for a draft item. This is required for DR currency items.
Sample: 123, 42st
remitter_country string No Remitter country code for a draft item. This is required for DR currency items.
Sample: US
remitter_city string No Remitter city for a draft item. This is required for DR currency items.
Sample: Orlando
remitter_region string No Remitter state code for US/CA or name for a draft item. This is required for DR currency items.
Sample: FL
remitter_postal_code string No Remitter postal code for US/CA for a draft item. This is required for DR currency items.
Sample: 123456
delivery_date_mon int No Delivery date month to specify a future delivery date. This feature must be activated by CXI.
Sample: 11
delivery_date_day int No Delivery date day to specify a future delivery date. This feature must be activated by CXI.
Sample: 30
delivery_date_year int No Delivery date year to specify a future delivery date. This feature must be activated by CXI.
Sample: 2017
shipping_company_name string No Text to appear on the company name line on the shipping label for client delivery. This is not a required field.
Sample: Company Name
shipping_address1 string No Shipping address line 1 for client delivery. This feature must be activated by CXI.
Sample: 19501 Biscayne Blvd
shipping_address2 string No Shipping address line 2 for client delivery. This feature must be activated by CXI.
shipping_city string No Shipping city for client delivery. This feature must be activated by CXI.
Sample: Aventura
shipping_region string No Shipping state code for client delivery. This feature must be activated by CXI.
Sample: FL
shipping_postal_code string No Shipping postal code for client delivery. This feature must be activated by CXI.
Sample: 33180
shipping_telephone string No Shipping telephone for client delivery. This feature must be activated by CXI.
Sample: 123456789
client_type string No Client type, if not specified it will be INDIVIDUAL
Sample: INDIVIDUAL/BUSINESS
account_number string No Account number of client.
Sample: FDE8797
purpose_of_transaction string No Purpose of transaction of client.
Sample: Purpose of transaction
source_of_funds string No Source of funds of client.
Sample: Source of funds
business_name string No Business name for compliance information. This is used if client type is BUSINESS.
Sample: CXI CORP
business_type string No Type of Business for compliance information. This is used if client type is BUSINESS.
Sample: Money Exchange
business_tax_id_number string No Business Tax ID number for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
business_tin_checker int No Foreign entity without EIN.
Sample: 1/0
business_email string No Business email for compliance information. This is used if client type is BUSINESS.
Sample: [email protected]
business_address1 string No Business address line 1 for compliance information. This is used if client type is BUSINESS.
Sample: 19501 Biscayne Blvd
business_address2 string No Business address line 2 for compliance information. This is used if client type is BUSINESS.
business_country string No Business country code for compliance information. This is used if client type is BUSINESS.
Sample: US
business_city string No Business city for compliance information. This is used if client type is BUSINESS.
Sample: Aventura
business_region string No Business state code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: FL
business_postal_code string No Business postal code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: 33180
business_telephone string No Business telephone for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
pob_first_name string No Person on Behalf first name for compliance information. This is used if client type is BUSINESS.
Sample: Jon
pob_middle_name string No Person on Behalf middle name for compliance information. This is used if client type is BUSINESS.
Sample: Liam
pob_last_name string No Person on Behalf last name for compliance information. This is used if client type is BUSINESS.
Sample: Dow
pob_suffix_name string No Person on Behalf suffix name for compliance information. This is used if client type is BUSINESS.
Sample: Jr.
pob_citizen string No Person on Behalf is a citizen or not for compliance information. This is used if client type is BUSINESS.
Sample: yes/no
pob_social_number string No Person on Behalf social number for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
pob_id_type string No Person on Behalf ID Type for compliance information. This is used if client type is BUSINESS.
Sample: ID_TYPE_LICENSE
pob_id_number string No Person on Behalf ID Number for compliance information. This is used if client type is BUSINESS.
Sample: 123456
pob_country_of_issuance string No Person on Behalf country of issuance for compliance information. This is used if client type is BUSINESS.
Sample: US
pob_region_of_issuance string No Person on Behalf region of issued for compliance information. This is used if client type is BUSINESS.
Sample: FL
pob_id_exp_mon string No Person on Behalf ID expire month for compliance information. This is used if client type is BUSINESS.
Sample: 1
pob_id_exp_day string No Person on Behalf ID expire day for compliance information. This is used if client type is BUSINESS.
Sample: 1
pob_id_exp_year string No Person on Behalf ID expire year for compliance information. This is used if client type is BUSINESS.
Sample: 2050
pob_address1 string No Person on Behalf address line 1 for compliance information. This is used if client type is BUSINESS.
Sample: 19501 Biscayne Blvd
pob_address2 string No Person on Behalf address line 2 for compliance information. This is used if client type is BUSINESS.
pob_city string No Person on Behalf city for compliance information. This is used if client type is BUSINESS.
Sample: Aventura
pob_region string No Person on Behalf region code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: FL
pob_postal_code string No Person on Behalf postal code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: 33180
pob_country string No Person on Behalf country code for compliance information. This is used if client type is BUSINESS.
Sample: US
pob_telephone string No Person on Behalf telephone for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
pob_dob_mon string No Person on Behalf Date of Birth month for compliance information. This is used if client type is BUSINESS.
Sample: 1
pob_dob_day string No Person on Behalf Date of Birth day for compliance information. This is used if client type is BUSINESS.
Sample: 1
pob_dob_year string No Person on Behalf Date of Birth year for compliance information. This is used if client type is BUSINESS.
Sample: 1950
pob_occupation string No Person on Behalf occupation for compliance information. This is used if client type is BUSINESS.
Sample: something
pob_is_member string No Identify if the connecting system customer is a member or not.
Sample: YES/NO
pob_member_id string No Member ID from the connecting system to identify the customer. Tied to pob_is_member value.
Sample: A1234567890
client_first_name string No Client first name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Jon
client_middle_name string No Client middle name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Liam
client_last_name string No Client last name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Dow
client_suffix_name string No Client suffix name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Jr.
client_citizen string No Client is a citizen or not for compliance information. This is used if client type is INDIVIDUAL.
Sample: yes/no
client_social_number string No Client social number for compliance information. This is used if client type is INDIVIDUAL.
Sample: 123456789
client_id_type string No Client ID Type for compliance information. This is used if client type is INDIVIDUAL.
Sample: ID_TYPE_LICENSE
client_id_number string No Client ID Number for compliance information. This is used if client type is INDIVIDUAL.
Sample: 123456
client_country_of_issuance string No Client country of issuance for compliance information. This is used if client type is INDIVIDUAL.
Sample: US
client_region_of_issuance string No Client region of issued for compliance information. This is used if client type is INDIVIDUAL.
Sample: FL
client_id_exp_mon string No Client ID expire month for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1
client_id_exp_day string No Client ID expire day for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1
client_id_exp_year string No Client ID expire year for compliance information. This is used if client type is INDIVIDUAL.
Sample: 2050
client_email string No Client email for compliance information. This is used if client type is INDIVIDUAL.
Sample: [email protected]
client_address1 string No Client address line 1 for compliance information. This is used if client type is INDIVIDUAL.
Sample: 19501 Biscayne Blvd
client_address2 string No Client address line 2 for compliance information. This is used if client type is INDIVIDUAL.
client_city string No Client city for compliance information. This is used if client type is INDIVIDUAL.
Sample: Aventura
client_region string No Client region code for US/CA for compliance information. This is used if client type is INDIVIDUAL.
Sample: FL
client_postal_code string No Client postal code for US/CA for compliance information. This is used if client type is INDIVIDUAL.
Sample: 33180
client_country string No Client country code for compliance information. This is used if client type is INDIVIDUAL.
Sample: US
client_telephone string No Client telephone for compliance information. This is used if client type is INDIVIDUAL.
Sample: 123456789
client_dob_mon string No Client Date of Birth month for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1
client_dob_day string No Client Date of Birth day for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1
client_dob_year string No Client Date of Birth year for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1950
client_occupation string No Client occupation for compliance information. This is used if client type is INDIVIDUAL.
Sample: something
client_is_member string No Identify if the connecting system customer is a member or not.
Sample: YES, NO
client_member_id string No Member ID from the connecting system to identify the customer. Tied to client_is_member value.
Sample: A1234567890
rate_time_stamp int No Rate Time Stamp. Deprecated and isn't used anymore.
Sample: 1566360000
Body
Headers
*
Parameters
*
*
Response

                                

                            
HTTP 201 Created
HTTP 400 Bad Request
Duplicate External Transaction ID

{'success': true, 'error_message': '','warnings': '', 'data': {'reference_number': 8476031,     'cvs_match': true,     'status_code': 3,     'status_description': 'COMPLIANCE PENDING'}}

		{
		'success': false,
		'error_message': '',
		'warnings':  [
			'Additional compliance info required'
		],
		'data': {
			'client_zip': {
				'Type': 'Text',
				'Description': 'Postal/ZIP Code',
				'MinLength': 0,
				'MaxLength': 10
			}
		}
		}
 

		{
		'success': false,
		'error_message': 'External transaction ID has already been submitted.',
		'warnings': ''
		}
 
This endpoint is used to do a compliance check on customer information. It has the ability to search Individual or Business. If the client type is Business, then parameters with prefix pob (Person on Behalf
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
language string No Language
Sample: English, French, Spanish
transaction_type string No Buy or Sell Transaction. , if not specified it will be Buy
Sample: Buy, Sell
client_type string No Client type, if not specified it will be INDIVIDUAL
Sample: INDIVIDUAL/BUSINESS
business_name string No Business name for compliance information. This is used if client type is BUSINESS.
Sample: CXI CORP
business_tax_id_number string No Business Tax ID number for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
business_email string No Business email for compliance information. This is used if client type is BUSINESS.
Sample: [email protected]
business_address1 string No Business address line 1 for compliance information. This is used if client type is BUSINESS.
Sample: 19501 Biscayne Blvd
business_address2 string No Business address line 2 for compliance information. This is used if client type is BUSINESS.
business_country string No Business country code for compliance information. This is used if client type is BUSINESS.
Sample: US
business_city string No Business city for compliance information. This is used if client type is BUSINESS.
Sample: Aventura
business_region string No Business state code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: FL
business_postal_code string No Business postal code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: 33180
business_telephone string No Business telephone for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
pob_first_name string No Person on Behalf first name for compliance information. This is used if client type is BUSINESS.
Sample: Jon
pob_middle_name string No Person on Behalf middle name for compliance information. This is used if client type is BUSINESS.
Sample: Liam
pob_last_name string No Person on Behalf last name for compliance information. This is used if client type is BUSINESS.
Sample: Dow
pob_suffix_name string No Person on Behalf suffix name for compliance information. This is used if client type is BUSINESS.
Sample: Jr.
pob_address1 string No Person on Behalf address line 1 for compliance information. This is used if client type is BUSINESS.
Sample: 19501 Biscayne Blvd
pob_address2 string No Person on Behalf address line 2 for compliance information. This is used if client type is BUSINESS.
pob_city string No Person on Behalf city for compliance information. This is used if client type is BUSINESS.
Sample: Aventura
pob_region string No Person on Behalf region code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: FL
pob_postal_code string No Person on Behalf postal code for US/CA for compliance information. This is used if client type is BUSINESS.
Sample: 33180
pob_country string No Person on Behalf country code for compliance information. This is used if client type is BUSINESS.
Sample: US
pob_dob_mon string No Person on Behalf Date of Birth month for compliance information. This is used if client type is BUSINESS.
Sample: 1
pob_dob_day string No Person on Behalf Date of Birth day for compliance information. This is used if client type is BUSINESS.
Sample: 1
pob_dob_year string No Person on Behalf Date of Birth year for compliance information. This is used if client type is BUSINESS.
Sample: 1950
pob_citizen string No Person on Behalf is a citizen or not for compliance information. This is used if client type is BUSINESS.
Sample: yes/no
pob_social_number string No Person on Behalf social number for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
pob_id_type string No Person on Behalf ID Type for compliance information. This is used if client type is BUSINESS.
Sample: ID_TYPE_LICENSE
pob_id_number string No Person on Behalf ID Number for compliance information. This is used if client type is BUSINESS.
Sample: 123456
pob_country_of_issuance string No Person on Behalf country of issuance for compliance information. This is used if client type is BUSINESS.
Sample: US
pob_region_of_issuance string No Person on Behalf region of issued for compliance information. This is used if client type is BUSINESS.
Sample: FL
pob_telephone string No Person on Behalf telephone for compliance information. This is used if client type is BUSINESS.
Sample: 123456789
pob_occupation string No Person on Behalf occupation for compliance information. This is used if client type is BUSINESS.
Sample: something
client_first_name string No Client first name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Jon
client_middle_name string No Client middle name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Liam
client_last_name string No Client last name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Dow
client_suffix_name string No Client suffix name for compliance information. This is used if client type is INDIVIDUAL.
Sample: Jr.
client_citizen string No Client is a citizen or not for compliance information. This is used if client type is INDIVIDUAL.
Sample: yes/no
client_social_number string No Client social number for compliance information. This is used if client type is INDIVIDUAL.
Sample: 123456789
client_id_type string No Client ID Type for compliance information. This is used if client type is INDIVIDUAL.
Sample: ID_TYPE_LICENSE
client_id_number string No Client ID Number for compliance information. This is used if client type is INDIVIDUAL.
Sample: 123456
client_country_of_issuance string No Client country of issuance for compliance information. This is used if client type is INDIVIDUAL.
Sample: US
client_region_of_issuance string No Client region of issued for compliance information. This is used if client type is INDIVIDUAL.
Sample: FL
client_address1 string No Client address line 1 for compliance information. This is used if client type is INDIVIDUAL.
Sample: 19501 Biscayne Blvd
client_address2 string No Client address line 2 for compliance information. This is used if client type is INDIVIDUAL.
client_city string No Client city for compliance information. This is used if client type is INDIVIDUAL.
Sample: Aventura
client_region string No Client region code for US/CA for compliance information. This is used if client type is INDIVIDUAL.
Sample: FL
client_postal_code string No Client postal code for US/CA for compliance information. This is used if client type is INDIVIDUAL.
Sample: 33180
client_country string No Client country code for compliance information. This is used if client type is INDIVIDUAL.
Sample: US
client_dob_mon string No Client Date of Birth month for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1
client_dob_day string No Client Date of Birth day for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1
client_dob_year string No Client Date of Birth year for compliance information. This is used if client type is INDIVIDUAL.
Sample: 1950
client_telephone string No Client telephone for compliance information. This is used if client type is INDIVIDUAL.
Sample: 123456789
client_occupation string No Client occupation for compliance information. This is used if client type is INDIVIDUAL.
Sample: something
Body
Headers
*
Parameters
Response

                                

                            
HTTP 200 OK

{'success':true, 'error_message':'', 'warnings':'', 'data':{'has_match':true, 'description':'Potential OFAC Match'}}
This endpoint is used to deny a transaction. This endpoint accepts the reference_number of a transaction OR external_transaction_id + location_identifier. Not all transactions will have an external_transacton_id. The external_transaction_id is stored when the API User specifies one when submitting a transaction. The reference_number parameter is required if external_transaction_id is not sent in the request.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
reference_number string No The transaction's reference number. Either reference_number OR external_transaction_id is required
Sample: 6942899
external_transaction_id string No ID of external transaction
Sample: A12562
location_identifier object No Location Information. Required if external_transaction_id is provided instead of reference_number.
Sample: {'company_id' : '9955', 'internal_location_id': '785', 'location_code': '0174'}, {'company_id' : '2453', 'location_code': '0222'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
reason_id int Yes Deny reason ID from "GET deny reaons api call"
Sample: 1, 2, -1
other_text string No Deny reason text is required if reason ID sent is for other "-1"
Sample: Internal deny reason
Max Characters: 500
approved_by string No Approved_by CAN/MUST be provided if the approved_by from "GET deny reaons api call" is enabled_not_required or enabled_required
Sample: Jhon Doe
Max Characters: 200
Body
Headers
*
Parameters
*
Response

                                

                            

		{
			'success': true,
			'data': [],
			'error_message': '',
			'warnings': ''
		}
 
The process payment endpoint is used to process any payment information in regards to order fees like Credit Card fees. The request requires transaction_type to be specified. If the payment type and amount are not passed, then the endpoint will respond with an empty array. Once the required fields are valid in the request, the endpoint will respond according to any set thresholds. The amount in the response will always be calculated and returned as a Cash amount regardless if the setup is for percentage or cash.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: List of payment types can be obtained from /transaction/payment_types endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
transaction_type string Yes Buy or Sell transaction
Sample: BUY, SELL
payments array Yes Array of payments used in the transaction, with the type and amount.
Sample: [{'type': 'CASH', 'amount': '50'},{'type': 'CC', 'amount': '1000'}]
language string No Language
Sample: English, French, Spanish
location_id string No Location Id, if not specified the system will default to the user location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
Body
Headers
*
Parameters
*
*
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

	 	 {
				'success': true,
				'error_message': '',
				'warnings': '',
				'data': {
						'order_fees': [
								{
										'type': 'FEE_CC',
										'description': 'CC Fee',
										'amount': '12.39'
								}
						]
				 }
		 }
 

	 	 {
			 'success': false,
			 'error_message': 'Request is malformed or contains invalid input.',
			 'warnings': '',
			 'data': ''
		 }
 

	 	 {
			 'success': false,
			 'error_message': 'API key invalid or API not allowed for this user.',
			 'warnings': '',
			 'data': ''
		 }
 
Returns list of enabled deny reasons and settings.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
location_id string No Location ID, if not specified the system will default to the user location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : '245', 'location_code': '02'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
Body
Headers
*
Parameters
Response

                                

                            

				[
					{
						'id': '1',
						'description': 'Incorrect Shipping Method',
						'approved_by': 'disabled'
					},
					{
						'id': '3',
						'description': 'Insufficient Funds',
						'approved_by': 'enabled_not_required'
					},
					{
						'id': '-1',
						'description': 'Other',
						'approved_by': 'enabled_required'
					}
				]
 
Returns the available delivery and shipping types for a location’s standard rate or a specified preferred rate type.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: List of rate types can be obtained from /transaction/rate_types endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
language string No Language
Sample: English, French, Spanish
location_id string No Location ID, if not specified the system will default to the user location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
rate_type_id int No Rate Type ID, if not specified the system will default to Standard
carrier_id string No Carrier, if not specified, return everything
Sample: FEDEX, BRINKS_UPS
delivery_type string No Delivery Type, if not specified, return branch and client delivery
Sample: BRANCH, CLIENT
amount float No Transaction total, if not specified, return everything
Sample: 1000
Body
Headers
*
Parameters
Response

                                

                            
HTTP 200 OK
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
		'success':true,
		'error_message':'',
		'warnings':'',
		'data': {
			'delivery_types':[
				{
					'delivery_type':'BRANCH',
					'description':'Branch',
					'shipping_types':[
						{'shipping_type':{'id': 1, 'carrier_id': 'FEDEX', 'carrier_name': 'FedEx', 'description': 'Priority'}},
	 					{'shipping_type':{'id': '58', 'carrier_id': 'BRINKS_UPS', 'carrier_name': 'Brinks UPS',	'description': 'Overnight'}}
					]
				},{
					'delivery_type':'CLIENT',
					'description':'Client',
					'shipping_types':[
						{'shipping_type':{'id': '58', 'carrier_id': 'BRINKS_UPS', 'carrier_name': 'Brinks UPS',	'description': 'Overnight'}}
					]
				}
			]}
		}
 

	 	{
			'success': false,
			'error_message': 'The reference_number and external_transaction_id are empty or have incorrect values.',
			'warnings': '',
			'data': ''
		}
 

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
 
Returns list of rate types available. The locations standard rate will always have a rate id of 0 and a description of standard rate. When a preferred rate exists, the response will contain the rate_type_id and the name as a description. If the location does not have a preferred rate group set in the profile settings, the response will be empty. If location_id is not sent in the request, the response will default to the API User’s registered location by default. The parameter transaction_type is required.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: Location ID's can be obtained using the /common/locations endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
transaction_type string Yes Buy or Sell Transaction
Sample: BUY, SELL
location_id string No ID of the location whose information we want. If this parameter is not specified the system will retrieve the information of the user's location.
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
Body
			{
				'transaction_type': 'Buy',
				'location_id': '12345'
			}
 
Headers
*
Parameters
*
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success':true,
			'error_message':'',
			'warnings':'',
			'data':[
				{
	 				'rate_types':[
						{
							'rate_type':
							{
								'rate_type_id':0,
								'description':'Standard Rates'
							}
						}
					]
				}
			]
		}
 

	 	{
			'success': false,
			'error_message': 'Invalid Transaction Type',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
This call will return the status and details (such as currency, amount, rate, total, etc) of a specified transaction within the scope of the requester company/location. This endpoint accepts the reference_number of a transaction as well as an external_transaction_id. Not all transactions will have an external_transacton_id. The external_transaction_id is stored when the API User specifies one when submitting a transaction. The reference_number parameter is required if external_transaction_id is not sent in the request.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
reference_number string No The transaction's reference number
Sample: 6942899,7841447,7835847,7843750
external_transaction_id string No ID of external transaction
Sample: 1,2,3
language string No Language in which to display the data
Sample: English, French, Spanish
Body
			{
				'reference_number': '6942899',
				'external_transaction_id': '1',
				'language': 'English'
			}
 
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

	 	{
			'success': true,
			'error_message': '',
			'warnings': '',
			'data': {
				'references': [
					{
						'reference_number': 6942899,
						'transaction_type': 'Sell',
						'company': {
							'system_id': '112',
							'company_name': 'EZ Forex'
						},
						'location': {
							'location_name': 'Menno Travel Service'
						},
						'location_identifier': {
							'location_code': '240'
						},
						'external_user_id': 12345,
						'external_transaction_id': 65432,
						'user_name': 'john_doe',
						'employee_name': 'John Doe',
						'cvs_match': false,
						'status': {
							'id': 13,
							'description': 'DENY',
							'reason': 'Insufficient funds'
						},
						'delivery': {
							'type': 'BRANCH',
							'description': 'BRANCH'
						},
						'shipping': {
							'type': 'OVERNIGHT',
							'description': 'Overnight'
						},
						'carrier': 'FedEx',
						'tracking_number': '786601165924',
						'estimated_delivery': '2023-10-17T15:39:00-04:00',
						'delivered_at': '2023-10-23T15:39:00-04:00',
						'rows': [
							{
								'row': {
									'row_num': 1,
									'iso_code': 'EUR',
									'description': 'European Central Bank',
									'type': {
										'name': 'Cash',
										'abbreviation': 'CASH',
										'description': 'CASH'
									},
									'amount': '1050.00',
									'rate': 1.136947,
									'fee': '0.00'
								}
							}
						],
						'order_fees': [
							{
								'order_fee': {
									'type': 'FEE_SHIPPING_OVERNIGHT',
									'description': 'Overnight shipping Fee',
									'amount': 14.5
								}
							}
						],
						'payments': [
							{
								'payment': {
									'type': 'CASH',
									'description': 'Cash',
									'amount': 2383.02
								}
							}
						]
					}
				]
			}
		}
 

	 	{
			'success': false,
			'error_message': 'The reference_number and external_transaction_id are empty or have incorrect values.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
The search request will find transactions matching any search parameters included. This will return the transaction reference number, external reference id (if available), transaction total, and status. If there are no search parameters set in the request, the call will use the user’s home location and the current day. The response is limited to a maximum of the most recent 100 results.

Acceptable values for status:
0 - VOIDED
1 - SAVED
2 - DELETED
3 - CMPL_PENDING
5 - CMPL_APPROVED
6 - CMPL_DENIED
7 - CMPL_CLOSED_PENDING
8 - LIVE_STOP_FAILED
9 - LIVE_STOP_LIMIT_EXCEEDED
10 - WAITING_FOR_CLIENT_APPROVAL
11 - PROCESSING
12 - READY_TO_SHIP
13 - SC_DENIED
20 - SC_SHIPPED
21 - SC_SHIPPED_W_MOD
22 - SC_RECEIVED
23 - FINANCIAL_CHECKING_PASSED
24 - WAITING_FOR_FINANCIAL_APPROVAL
34 - PC_PREPARED
35 - PC_DENIED
36 - PC_SENT_BY_COURIER
37 - PC_SENT_BY_MAIL
38 - PC_POSTED
39 - PC_POSTED_W_MOD
40 - PC_INTEROFFICE_SEND
44 - INV_POSTED
55 - RETURNED
101 - PC_EXCLUDED
102 - PC_PREVIOUSLY_PREPARED
103 - PC_PREVIOUSLY_SENT_BY_COURIER
104 - PC_PREVIOUSLY_SENT_BY_MAIL
105 - PC_EDITED
112 - SC_EDITED
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
reference_number int No CEIFX Internal Id
Sample: 1254785
first_name string No Client's First Name
Sample: John
last_name string No Client's Last Name
Sample: Smith
external_transaction_id string No External Transaction ID
Sample: 1
status int No Transaction Status ID
Sample: 1
external_user_id string No External User ID
Sample: 2
company array No Company Information
Sample: [{'system_id': 123, 'company_name': 'ABC Bank'}]
location array No Location Information
Sample: [{'location_name': 'Main Branch', 'location_identifier': {'location_code': '123', 'internal_location_code': '00'}, 'location_settlement_identifier': {'settlement_account': '987654321012', 'financial_institution': '123456789'}}]
account_number string No Account Number
Sample: 12345678
id_number string No ID Number
Sample: ABC123456
start_date string No Start Date [MM/DD/YYYY]
Sample: 01/01/2017
start_time string No Start Time [HH:SS]
Sample: 00:00
end_date string No End Date [MM/DD/YYYY]
Sample: 08/01/2017
end_time string No End Time [HH:SS]
Sample: 23:59
currency_code string No Currency Code
Sample: EUR
total_range_start string No Transaction Total Search Range Start
total_range_end string No Transaction Total Search Range End
Sample: 10000
language string No Language
Sample: English, French, Spanish
other_1 string No Other 1 field
Sample: Other 1
other_2 string No Other 2 field
Sample: Other 2
other_3 string No Other 3 field
Sample: Other 3
other_4 string No Other 4 field
Sample: Other 4
other_5 string No Other 5 field
Sample: Other 5
referral_code string No Referral Code is an optional field that can be used to keep track of referrals brought to the system.
Sample: 123abc456def
Body
Headers
*
Parameters
Response

                                

                            
HTTP 200 OK
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success':true,
			'error_message':'',
			'warnings':'',
			'data':[
				{
					'reference_number':4068713,
					'external_transaction_id':null,
					'transaction_total':246.81,
					'cvs_match': false,
					'status':{
	      				'id': 37,
						'description': 'SENT BY MAIL',
						'reason': ''
					},
					'tracking_number': [
						'771576438829'
					],
					'carrier': 'FedEx'
				}
			]
	}

	 	{
			'success': false,
			'error_message': 'The reference_number and external_transaction_id are empty or have incorrect values.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
Check limits allow user to send customer info (or not)request to check a specific limit, and it will return the current amount under each category and the limit for that category.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite: Location ID's can be obtained using the /common/locations endpoint.

Acceptable values for limit_type:
DAILY_ACCOUNT_HOLDER
WEEKLY_ACCOUNT_HOLDER
MONTHLY_ACCOUNT_HOLDER
QUARTERLY_ACCOUNT_HOLDER
DAILY_NON_ACCOUNT_HOLDER
WEEKLY_NON_ACCOUNT_HOLDER
MONTHLY_NON_ACCOUNT_HOLDER
QUARTERLY_NON_ACCOUNT_HOLDER
BUYING_DRAFT
BUYING_PAYING_CREDIT_CARD
ACCOUNT_HOLDER_CLIENT_DELIVERY
NON_ACCOUNT_HOLDER_CLIENT_DELIVERY
DAILY_USER
WEEKLY_USER
MONTHLY_USER
QUARTERLY_USER
DAILY_COMPANY
WEEKLY_COMPANY
MONTHLY_COMPANY
QUARTERLY_COMPANY
DAILY_LOCATION
WEEKLY_LOCATION
MONTHLY_LOCATION
QUARTERLY_LOCATION
MAX_TRANSACTION
BUY_ACCOUNT_HOLDER_MIN_TRANSACTION
SELL_ACCOUNT_HOLDER_MIN_TRANSACTION
BUY_NON_ACCOUNT_HOLDER_MIN_TRANSACTION
SELL_NON_ACCOUNT_HOLDER_MIN_TRANSACTION
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
location_id string No ID of the location whose information we want. If this parameter is not specified the system will retrieve the information of the user's location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
language string No Language in which to display the data
Sample: English, French, Spanish
limit_type string No Limit type index
Sample: DAILY_ACCOUNT_HOLDER, DAILY_NON_ACCOUNT_HOLDER
client_type string No Client type, if not specified it will be INDIVIDUAL
Sample: INDIVIDUAL/BUSINESS
account_holder string No Is Account Holder or not
Sample: YES, NO
client_first_name string No Client first name, if client type is INDIVIDUAL.
Sample: Jon
client_last_name string No Client last name, if client type is INDIVIDUAL.
Sample: Dow
account_number string No Account number
Sample: FDE8797
client_dob_mon string No Client Date of Birth month, if client type is INDIVIDUAL.
Sample: 1
client_dob_day string No Client Date of Birth day, if client type is INDIVIDUAL.
Sample: 1
client_dob_year string No Client Date of Birth year, if client type is INDIVIDUAL.
Sample: 1950
client_social_number string No Client social number, if client type is INDIVIDUAL.
Sample: 123456789
client_id_number string No Client ID Number, if client type is INDIVIDUAL.
Sample: 123456
business_name string No Business name, if client type is BUSINESS.
Sample: CXI CORP
business_tax_id_number string No Business tax ID number, if client type is BUSINESS.
Sample: 123456789
pob_first_name string No Person on Behalf first name, if client type is BUSINESS.
Sample: Jon
pob_last_name string No Person on Behalf last name, if client type is BUSINESS.
Sample: Dow
pob_dob_mon string No Person on Behalf Date of Birth month, if client type is BUSINESS.
Sample: 1
pob_dob_day string No Person on Behalf Date of Birth day, if client type is BUSINESS.
Sample: 1
pob_dob_year string No Person on Behalf Date of Birth year, if client type is BUSINESS.
Sample: 1950
pob_social_number string No Person on Behalf social number, if client type is BUSINESS.
Sample: 123456789
pob_id_number string No Person on Behalf ID Number, if client type is BUSINESS.
Sample: 123456
Body
		{
			'location_id': '12345',
			'account_holder': 'Yes',
			'language': 'English',
			'limit_type': 'DAILY_ACCOUNT_HOLDER',
			'client_type': 'INDIVIDUAL',
			'client_first_name': 'John',
			'client_last_name': 'Smith',
			'account_number': '123456789',
			'client_dob_month': '01',
			'client_dob_day': '01',
			'client_dob_year': '1980',
			'client_social_number': '123456789',
			'client_id_number': 'ABC12345',
			'business_name': 'ABC Bank',
			'business_tax_id_number': '2345434',
			'pob_first_name': 'John',
			'pob_last_name': 'Smith',
			'pob_dob_month': '01',
			'pob_dob_day': '01',
			'pob_dob_year': '1980',
			'pob_social_number': '123456789',
			'pob_id_number': 'ABC12345'
		}
 
Headers
*
Parameters
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success': true,
			'error_message': '',
			'warnings': '',
			'data':{
				'limit_types': [
				{
					'limit_type': {
						'limit': 'DAILY_USER',
						'description': 'User Daily Limit',
						'current_amount': 500,
						'limit_amount': 1000
					}
				}]
			}
	}

		{
			'success': false,
			'error_message': 'Request is malformed or contains invalid input.',
			'warnings': '',
			'data': ''
		}

		{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
This endpoint handles submitting reservation transactions. If all data in the request is valid, then the endpoint will respond with successfully created reservation identifier.

Note:
For location_identifier, company_id is required if the company is setup without Internal Company ID in the companie's profile settings.

Prerequisite:
Location ID's can be obtained using the /common/locations endpoint.
List of currency/currency codes can be obtained using the /transaction/currencies endpoint.
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
language string No Language
Sample: English, French, Spanish
location_id string No Location ID, if not specified the system will default to the user location
Sample: 12345
location_identifier object No Location Information
Sample: {'external_company_id' : 'BANKID', 'location_code': '20a'}, {'company_id' : 'BANKID', 'location_code': '20a'}, {'external_company_id' : 'BANKID', 'location_code': '20a', 'internal_location_id': 'INTID'}
client_first_name string No Client first name for reservation.
Sample: Jon
client_middle_name string No Client middle name for reservation.
Sample: Liam
client_last_name string No Client last name for reservation.
Sample: Dow
client_suffix_name string No Client suffix name for reservation.
Sample: Jr.
client_telephone string No Client phone for reservation.
Sample: 123456789
client_email string No Client email for reservation.
Sample: [email protected]
rows array Yes All currency rows of the transaction reservation. Used to pass an array of values for currency_code and amount.
Sample: [{'iso_code': 'EUR', 'amount': 50000.00}]
special_requests string No Text box that contains special instructions for order reservation
Sample: Something
external_transaction_id string No External ID from the connecting system for easier reservation identification. If used, this value must be unique for every reservation. An error will occur if a duplicate External ID is submitted.
Sample: 123
referral_code string No Referral Code is an optional field that can be used to keep track of referrals brought to the system.
Sample: 123abc456def
Body
		{
			'language': 'English',
			'client_first_name': 'John',
	 		'client_last_name': 'Smith',
			'client_telephone': '1234567890',
			'client_email': '[email protected]',
			'rows': [
				{
					'iso_code': 'EUR',
					'amount': '50000.00'
				}
			],
			'special_requests': 'Small notes',
	        'external_transaction_id': 'EXTID'
		}
 
Headers
*
Parameters
*
Response

                                

                            
{'200':'HTTP 200 OK'}
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success': true,
			'error_message': '',
			'warnings': '',
			'data': {
				'reservation_id': 12345
			}
		}
 

		{
			'success': false,
			'error_message': 'The client_firstname and client_lastname are empty or have incorrect values.',
			'warnings': '',
			'data': ''
		}

		{
			'success': false,
			'error_message': 'API key invalid or API not allowed for this user.',
			'warnings': '',
			'data': ''
		}
If the purchase transaction doesn't have label(s), generate label(s) based on company setting (Laser/PDF, Thermal) and return tracking number and label(s).
Headers
Name Type Required Description
token string Yes Authentication Token
Parameters
Name Type Required Description
reference_number int Yes CEIFX Internal Id
Sample: 1254785
Body
			{
				'reference_number': '12364917'
			}
	 	
Headers
*
Parameters
*
Response

                                

                            
HTTP 200 OK
{'400':'HTTP 400 Bad Request'}
{'401':'HTTP 401 Unauthorized'}

		{
			'success': true,
			'error_message': '',
			'warnings': '',
			'data': {
				'extension':'pdf',
				'labels': {
					'794651722800': '%BASE64 FILE#1 CONTENT%',
					'794651722801': '%BASE64 FILE#2 CONTENT%',
					'794651722802': '%BASE64 FILE#3 CONTENT%'
				}
			}
		}
 

	 	{
			'success': false,
			'error_message': 'The reference_number is empty or have incorrect value.',
			'warnings': '',
			'data': ''
		}

	 	{
			'success': false,
			'error_message': 'Unauthorized',
			'warnings': '',
			'data': ''
		}