Class: CyberSourceMergedSpec::PointOfSaleInformation

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/cyber_source_merged_spec/models/point_of_sale_information.rb

Overview

PointOfSaleInformation Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(terminal_id: SKIP, terminal_serial_number: SKIP, cardholder_verification_method_used: SKIP, lane_number: SKIP, cat_level: SKIP, entry_mode: SKIP, terminal_capability: SKIP, operating_environment: SKIP, emv: SKIP, amex_capn_data: SKIP, track_data: SKIP, store_and_forward_indicator: SKIP, cardholder_verification_method: SKIP, terminal_category: SKIP, terminal_input_capability: SKIP, terminal_card_capture_capability: SKIP, terminal_output_capability: SKIP, terminal_pin_capability: SKIP, pin_entry_solution: SKIP, device_id: SKIP, pin_block_encoding_format: SKIP, encrypted_pin: SKIP, encrypted_key_serial_number: SKIP, encrypted_key_id: SKIP, partner_sdk_version: SKIP, emv_application_identifier_and_dedicated_file_name: SKIP, terminal_compliance: SKIP, is_dedicated_hardware_terminal: SKIP, terminal_model: SKIP, terminal_make: SKIP, service_code: SKIP, additional_properties: nil) ⇒ PointOfSaleInformation

Returns a new instance of PointOfSaleInformation.



782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 782

def initialize(terminal_id: SKIP, terminal_serial_number: SKIP,
               cardholder_verification_method_used: SKIP, lane_number: SKIP,
               cat_level: SKIP, entry_mode: SKIP, terminal_capability: SKIP,
               operating_environment: SKIP, emv: SKIP, amex_capn_data: SKIP,
               track_data: SKIP, store_and_forward_indicator: SKIP,
               cardholder_verification_method: SKIP,
               terminal_category: SKIP, terminal_input_capability: SKIP,
               terminal_card_capture_capability: SKIP,
               terminal_output_capability: SKIP,
               terminal_pin_capability: SKIP, pin_entry_solution: SKIP,
               device_id: SKIP, pin_block_encoding_format: SKIP,
               encrypted_pin: SKIP, encrypted_key_serial_number: SKIP,
               encrypted_key_id: SKIP, partner_sdk_version: SKIP,
               emv_application_identifier_and_dedicated_file_name: SKIP,
               terminal_compliance: SKIP,
               is_dedicated_hardware_terminal: SKIP, terminal_model: SKIP,
               terminal_make: SKIP, service_code: SKIP,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @terminal_id = terminal_id unless terminal_id == SKIP
  @terminal_serial_number = terminal_serial_number unless terminal_serial_number == SKIP
  unless cardholder_verification_method_used == SKIP
    @cardholder_verification_method_used =
      cardholder_verification_method_used
  end
  @lane_number = lane_number unless lane_number == SKIP
  @cat_level = cat_level unless cat_level == SKIP
  @entry_mode = entry_mode unless entry_mode == SKIP
  @terminal_capability = terminal_capability unless terminal_capability == SKIP
  @operating_environment = operating_environment unless operating_environment == SKIP
  @emv = emv unless emv == SKIP
  @amex_capn_data = amex_capn_data unless amex_capn_data == SKIP
  @track_data = track_data unless track_data == SKIP
  unless store_and_forward_indicator == SKIP
    @store_and_forward_indicator =
      store_and_forward_indicator
  end
  unless cardholder_verification_method == SKIP
    @cardholder_verification_method =
      cardholder_verification_method
  end
  @terminal_category = terminal_category unless terminal_category == SKIP
  unless terminal_input_capability == SKIP
    @terminal_input_capability =
      terminal_input_capability
  end
  unless terminal_card_capture_capability == SKIP
    @terminal_card_capture_capability =
      terminal_card_capture_capability
  end
  unless terminal_output_capability == SKIP
    @terminal_output_capability =
      terminal_output_capability
  end
  @terminal_pin_capability = terminal_pin_capability unless terminal_pin_capability == SKIP
  @pin_entry_solution = pin_entry_solution unless pin_entry_solution == SKIP
  @device_id = device_id unless device_id == SKIP
  unless pin_block_encoding_format == SKIP
    @pin_block_encoding_format =
      pin_block_encoding_format
  end
  @encrypted_pin = encrypted_pin unless encrypted_pin == SKIP
  unless encrypted_key_serial_number == SKIP
    @encrypted_key_serial_number =
      encrypted_key_serial_number
  end
  @encrypted_key_id = encrypted_key_id unless encrypted_key_id == SKIP
  @partner_sdk_version = partner_sdk_version unless partner_sdk_version == SKIP
  unless emv_application_identifier_and_dedicated_file_name == SKIP
    @emv_application_identifier_and_dedicated_file_name =
      emv_application_identifier_and_dedicated_file_name
  end
  @terminal_compliance = terminal_compliance unless terminal_compliance == SKIP
  unless is_dedicated_hardware_terminal == SKIP
    @is_dedicated_hardware_terminal =
      is_dedicated_hardware_terminal
  end
  @terminal_model = terminal_model unless terminal_model == SKIP
  @terminal_make = terminal_make unless terminal_make == SKIP
  @service_code = service_code unless service_code == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#amex_capn_dataString

Point-of-sale details for the transaction. This value is returned only for American Express Direct. CyberSource generates this value, which consists of a series of codes that identify terminal capability, security data, and specific conditions present at the time the transaction occurred. To comply with the CAPN requirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on credits. When you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from the authorization service to the subsequent services for you. However, when you perform authorizations through CyberSource and perform subsequent services through other financial institutions, you must ensure that your requests for captures and credits include this value.

Returns:

  • (String)


286
287
288
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 286

def amex_capn_data
  @amex_capn_data
end

#cardholder_verification_methodArray[String]

Complete list of cardholder verification methods (CVMs) supported by the terminal. Optional field. Possible values:

  • PIN: For terminals with a PIN Pad
  • Signature: For terminals capable of receiving a signature
  • pinOnGlass: For terminals where PIN is entered on a glass-based capture mechanism EXAMPLE: ["PIN","Signature"]; ["pinOnGlass","Signature"]

Returns:

  • (Array[String])


358
359
360
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 358

def cardholder_verification_method
  @cardholder_verification_method
end

#cardholder_verification_method_usedInteger

Method that was used to verify the cardholder's identity. Possible values:

- `0`: No verification
- `1`: Signature
- `2`: PIN
- `3`: Cardholder device CVM
- `4`: Biometric
- `5`: OTP

Returns:

  • (Integer)


93
94
95
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 93

def cardholder_verification_method_used
  @cardholder_verification_method_used
end

#cat_levelInteger

Type of cardholder-activated terminal. Possible values:

  • 1: Automated dispensing machine
  • 2: Self-service terminal
  • 3: Limited amount terminal
  • 4: In-flight commerce (IFC) terminal
  • 5: Radio frequency device
  • 6: Mobile acceptance terminal
  • 7: Electronic cash register
  • 8: E-commerce device at your location
  • 9: Terminal or cash register that uses a dialup connection to connect to the transaction processing network
  • 10: Card Activated Fuel Dispenser
  • 11: Travel ticket vending machine

Chase Paymentech Solutions

Only values 1, 2, and 3 are supported. Required if pointOfSaleInformation.terminalID is included in the request; otherwise, optional.

CyberSource through VisaNet

Values 1 through 6 are supported on CyberSource through VisaNet, but some acquirers do not support all six values. Optional field.

FDC Nashville Global

Only values 7, 8, and 9 are supported. Optional field for EMV transactions; otherwise, not used.

GPN

Only values 6, 7, 8, and 9 are supported. Required field.

JCN Gateway

Only values 6, 7, 8, and 9 are supported. Required field.

TSYS Acquiring Solutions

Only value 6 is supported. Required for transactions from mobile devices; otherwise, not used.

All other processors

Not used. Nonnegative integer.

Returns:

  • (Integer)


153
154
155
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 153

def cat_level
  @cat_level
end

#device_idString

Value created by the client software that uniquely identifies the POS device. This value is provided by the client software that is installed on the POS terminal. CyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource reporting functionality. This field is supported only on American Express Direct, FDC Nashville Global, and SIX.

Returns:

  • (String)


465
466
467
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 465

def device_id
  @device_id
end

#emvEmv

Operating environment. Possible values for all card types except Mastercard:

  • 0: No terminal used or unknown environment.
  • 1: On merchant premises, attended.
  • 2: On merchant premises, unattended. Examples: oil, kiosks, self-checkout, mobile telephone, personal digital assistant (PDA).
  • 3: Off merchant premises, attended. Examples: portable POS devices at trade shows, at service calls, or in taxis.
  • 4: Off merchant premises, unattended. Examples: vending machines, home computer, mobile telephone, PDA.
  • 5: On premises of cardholder, unattended.
  • 9: Unknown delivery mode.
  • S: Electronic delivery of product. Examples: music, software, or eTickets that are downloaded over the internet.
  • T: Physical delivery of product. Examples: music or software that is delivered by mail or by a courier.

Possible values for Mastercard:

  • 2: On merchant premises, unattended, or cardholder terminal. Examples: oil, kiosks, self-checkout, home computer, mobile telephone, personal digital assistant (PDA). Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.
  • 4: Off merchant premises, unattended, or cardholder terminal. Examples: vending machines, home computer, mobile telephone, PDA. Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet. This field is supported only for American Express Direct and CyberSource through VisaNet.

Returns:



267
268
269
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 267

def emv
  @emv
end

#emv_application_identifier_and_dedicated_file_nameString

This 32 byte length-maximum EBCDIC-K value is used to identify which chip application was performed between the terminal and the chip product. The included values are the Application Identifier (AID) and the Dedicated File (DF) name. It is available to early- or full-option VSDC issuers. Only single byte Katakana characters that can map to the EBCDIC-K table expected in the name.

Returns:

  • (String)


614
615
616
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 614

def emv_application_identifier_and_dedicated_file_name
  @emv_application_identifier_and_dedicated_file_name
end

#encrypted_key_idString

Identifies the Zone PIN Key (ZPK) used for Online PIN processing by providing the 10‑digit Key Set Identifier (KSI). This value indicates that the PIN block is encrypted under a ZPK and enables the Payment Security Service (PSS) to perform the correct ZPK→ZPK PIN translation during card‑present EMV PIN transactions.

Returns:

  • (String)


587
588
589
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 587

def encrypted_key_id
  @encrypted_key_id
end

#encrypted_key_serial_numberString

Combination of the device's unique identifier and a transaction counter that is used in the process of decrypting the encrypted PIN. The entity that injected the PIN encryption keys into the terminal decrypts the encrypted PIN and creates this value. For all terminals that are using derived unique key per transaction (DUKPT) encryption, this is generated as a single number within the terminal.

Used by

Authorization, PIN Debit

  • Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.
  • Required for PIN debit credit or PIN debit purchase.
  • Required for online PIN transactions For authorizations, this field is supported only on these processors:
  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • OmniPay Direct
  • SIX This field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards and Cardholder Verification Methods (CVMs) that these processors support:

| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and

Signature
American Express Direct Yes Yes Yes
Chase Paymentech Solutions No No Yes
Credit Mutuel-CIC Yes Yes Yes
CyberSource through VisaNet Yes No Yes
FDC Nashville Global Yes Yes Yes
GPN No No Yes
OmniPay Direct Yes No Yes
SIX Yes Yes Yes

Returns:

  • (String)


578
579
580
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 578

def encrypted_key_serial_number
  @encrypted_key_serial_number
end

#encrypted_pinString

Encrypted PIN. This value is provided by the client software that is installed on the POS terminal.

Used by

Authorization, PIN Debit Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN. Required for PIN debit credit or PIN debit purchase. Required for online PIN transactions. For authorizations, this field is supported only on these processors:

  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • OmniPay Direct
  • SIX This field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards and Cardholder Verification Methods (CVMs) that these processors support:

| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and

Signature
American Express Direct Yes Yes Yes
Chase Paymentech Solutions No No Yes
Credit Mutuel-CIC Yes Yes Yes
CyberSource through VisaNet Yes No Yes
FDC Nashville Global Yes Yes Yes
GPN No No Yes
OmniPay Direct Yes No Yes
SIX Yes Yes Yes

Returns:

  • (String)


541
542
543
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 541

def encrypted_pin
  @encrypted_pin
end

#entry_modeString

Method of entering payment card information into the POS terminal. Possible values:

  • contact: Read from direct contact with chip card.
  • contactless: Read from a contactless interface using chip data.
  • keyed: Manually keyed into POS terminal. This value is not supported on OmniPay Direct.
  • msd: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct.
  • swiped: Read from credit card magnetic stripe. The contact, contactless, and msd values are supported only for EMV transactions.

Used by

Authorization Required field.

Card Present

Card present information about EMV applies only to credit card processing and PIN debit processing. All other card present information applies only to credit card processing.

PIN debit

Required for a PIN debit purchase and a PIN debit credit request.

Returns:

  • (String)


176
177
178
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 176

def entry_mode
  @entry_mode
end

#is_dedicated_hardware_terminalString

Type of mPOS device. Possible values:

  • 0: Dongle
  • 1: Phone or tablet This optional field is supported only for Mastercard transactions on CyberSource through VisaNet. The value for this field corresponds to the following data in the TC 33 capture file:
  • Record: CP01 TCR6
  • Position: 141
  • Field: Mastercard mPOS Transaction The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource. CyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant’s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.

Returns:

  • (String)


668
669
670
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 668

def is_dedicated_hardware_terminal
  @is_dedicated_hardware_terminal
end

#lane_numberString

Identifier for an alternate terminal at your retail location. You define the value for this field. This field is supported only for MasterCard transactions on FDC Nashville Global. Otherwise, this field is not used by all other processors. Use the terminalId field to identify the main terminal at your retail location. If your retail location has multiple terminals, use this laneNumber field to identify the terminal used for the transaction. This field is a pass-through, which means that the value is not checked or modified in any way before sending it to the processor. Optional field.

Card present reply messaging

Identifier for an alternate terminal at your retail location. You defined the value for this field in the request message. This value must be printed on the receipt. This field is supported only for MasterCard transactions on FDC Nashville Global.

Returns:

  • (String)


113
114
115
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 113

def lane_number
  @lane_number
end

#operating_environmentString

Operating environment. Possible values for all card types except Mastercard:

  • 0: No terminal used or unknown environment.
  • 1: On merchant premises, attended.
  • 2: On merchant premises, unattended. Examples: oil, kiosks, self-checkout, mobile telephone, personal digital assistant (PDA).
  • 3: Off merchant premises, attended. Examples: portable POS devices at trade shows, at service calls, or in taxis.
  • 4: Off merchant premises, unattended. Examples: vending machines, home computer, mobile telephone, PDA.
  • 5: On premises of cardholder, unattended.
  • 9: Unknown delivery mode.
  • S: Electronic delivery of product. Examples: music, software, or eTickets that are downloaded over the internet.
  • T: Physical delivery of product. Examples: music or software that is delivered by mail or by a courier.

Possible values for Mastercard:

  • 2: On merchant premises, unattended, or cardholder terminal. Examples: oil, kiosks, self-checkout, home computer, mobile telephone, personal digital assistant (PDA). Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.
  • 4: Off merchant premises, unattended, or cardholder terminal. Examples: vending machines, home computer, mobile telephone, PDA. Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet. This field is supported only for American Express Direct and CyberSource through VisaNet.

Returns:

  • (String)


237
238
239
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 237

def operating_environment
  @operating_environment
end

#partner_sdk_versionString

Version of the software installed on the POS terminal. This value is provided by the client software that is installed on the POS terminal. CyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource reporting functionality. This field is supported only on American Express Direct, FDC Nashville Global, and SIX. For authorizations and credits, this field is supported only on these processors:

  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • OmniPay Direct
  • SIX

Returns:

  • (String)


605
606
607
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 605

def partner_sdk_version
  @partner_sdk_version
end

#pin_block_encoding_formatInteger

Format that is used to encode the PIN block. This value is provided by the client software that is installed on the POS terminal. Possible values:

  • 0: ISO 9564 format 0
  • 1: ISO 9564 format 1
  • 2: ISO 9564 format 2
  • 3: ISO 9564 format 3

Used by

Authorization, PIN Debit

  • Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.
  • Required for PIN debit credit or PIN debit purchase. For authorizations, this field is supported only on these processors:
  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • OmniPay Direct
  • SIX This field is also supported by processors that support chip and online PIN transactions. The following table lists the EMV Cards and Cardholder Verification Methods (CVMs) that these processors support:

| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and

Signature
American Express Direct Yes Yes Yes
Chase Paymentech Solutions No No Yes
Credit Mutuel-CIC Yes Yes Yes
CyberSource through VisaNet Yes No Yes
FDC Nashville Global Yes Yes Yes
GPN No No Yes
OmniPay Direct Yes No Yes
SIX Yes Yes Yes

GPX

For chip and online PIN transactions for authorization, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):

  • Chip and Offline PIN
  • Chip and Signature For PIN Debit Purchase and Credit Service transactions, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):
  • Chip and Online PIN

Returns:

  • (Integer)


509
510
511
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 509

def pin_block_encoding_format
  @pin_block_encoding_format
end

#pin_entry_solutionString

This field will contain the type of Pin Pad the terminal has. Possible values:

  • PCI-SPoC: Where the pin is being put on screen
  • PCI-PTS: Where the pin is being put on actual hardware pin pad

Returns:

  • (String)


454
455
456
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 454

def pin_entry_solution
  @pin_entry_solution
end

#service_codeString

Visa Platform Connect

Mastercard service code that is included in the track data. This field is supported only for Mastercard on Visa Platform Connect.
You can extract the service code from the track data and provide it in this API field. When not provided it will be extracted from:

- Track2Data for MSR transactions
- EMV tag 5F30 for EMV transactions

To enable this feature please call support.

Returns:

  • (String)


697
698
699
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 697

def service_code
  @service_code
end

#store_and_forward_indicatorString

When connectivity is unavailable, the client software that is installed on the POS terminal can store a transaction in its memory and send it for authorization when connectivity is restored. This value is provided by the client software that is installed on the POS terminal. This value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality. Possible values:

  • Y: Transaction was stored and then forwarded.
  • N (default): Transaction was not stored and then forwarded. For authorizations and credits, this field is supported only on these processors:
  • American Express Direct
  • FDC Nashville Global
  • OmniPay Direct
  • SIX Optional field.

Returns:

  • (String)


346
347
348
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 346

def store_and_forward_indicator
  @store_and_forward_indicator
end

#terminal_capabilityInteger

POS terminal’s capability. Possible values:

  • 1: Terminal has a magnetic stripe reader only.
  • 2: Terminal has a magnetic stripe reader and manual entry capability.
  • 3: Terminal has manual entry capability only.
  • 4: Terminal can read chip cards.
  • 5: Terminal can read contactless chip cards; cannot use contact to read chip cards. For an EMV transaction, the value of this field must be 4 or 5.

PIN debit

Required for PIN debit purchase and PIN debit credit request.

Used by

Authorization Required for the following processors:

  • American Express Direct
  • Chase Paymentech Solutions
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • FDMS Nashville
  • OmniPay Direct
  • SIX
  • Worldpay VAP Optional for the following processors:
  • CyberSource through VisaNet
  • GPN
  • GPX
  • JCN Gateway
  • RBS WorldPay Atlanta
  • TSYS Acquiring Solutions

Returns:

  • (Integer)


207
208
209
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 207

def terminal_capability
  @terminal_capability
end

#terminal_card_capture_capabilityString

Indicates whether the terminal can capture the card. Possible values:

  • 1: Terminal can capture card.
  • 0: Terminal cannot capture card. For authorizations and credits, this field is supported only by these processors:
  • American Express Direct
  • Credit Mutuel-CIC
  • OmniPay Direct Optional field.

Returns:

  • (String)


403
404
405
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 403

def terminal_card_capture_capability
  @terminal_card_capture_capability
end

#terminal_categoryString

Indicates the type of terminal. Possible values:

  • AFD: Automated Fuel Dispenser

Returns:

  • (String)


364
365
366
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 364

def terminal_category
  @terminal_category
end

#terminal_complianceString

Flag that indicates whether the terminal is compliant with standards mandated by the Reserve Bank of India for card-present domestic transactions in India. Format:

  • First character indicates whether the terminal supports terminal line encryption (TLE). Possible values:
    • 1: Not certified
    • 2: Certified
  • Second character indicates whether the terminal supports Unique Key Per Transaction (UKPT) and Derived Unique Key Per Transaction (DUKPT). Possible values:
    • 1: Not certified
    • 2: Certified Example 21 indicates that the terminal supports TLE but does not support UKPT/DUKPT. You and the terminal vendors are responsible for terminal certification. If you have questions, contact your acquirer. This field is supported only for Mastercard transactions on CyberSource through VisaNet. Note On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:
  • Record: CP01 TCR6
  • Position: 92-93
  • Field: Mastercard Terminal Compliance Indicator The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource. CyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant’s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.

Used by

Authorization Required for card-present transactions in India. Otherwise, not used.

Returns:

  • (String)


649
650
651
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 649

def terminal_compliance
  @terminal_compliance
end

#terminal_idString

Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.

CyberSource through VisaNet

A list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for your CyberSource account, the value you send for this field is validated against the list each time you include the field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support. When you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.

FDC Nashville Global

To have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.

For Payouts

This field is applicable for CyberSource through VisaNet.

GPX

Identifier for the terminal at your retail location. A list of all possible values is stored in your account. If terminal ID validation is enabled for your account, the value you send for this field is validated against the list each time you include the field in a request. To enable or disable terminal ID validation, contact customer support. When you do not include this field in a request, the default value that is defined in your account is used. Optional for authorizations.

Used by

Authorization Optional for the following processors. When you do not include this field in a request, the default value that is defined in your account is used.

  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • SIX
  • Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include pointOfSaleInformation.catLevel.
  • FDMS Nashville: The default value that is defined in your account is used.
  • GPX
  • OmniPay Direct: Optional field. For the following processors, this field is not used.
  • GPN
  • JCN Gateway
  • RBS WorldPay Atlanta
  • TSYS Acquiring Solutions
  • Worldpay VAP

Card Present reply

Terminal identifier assigned by the acquirer. This value must be printed on the receipt.

Returns:

  • (String)


65
66
67
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 65

def terminal_id
  @terminal_id
end

#terminal_input_capabilityArray[String]

Complete list of card input methods supported by the terminal. Possible values:

  • Keyed: Terminal can accept card data that is entered manually.
  • Swiped: Terminal can accept card data from a magnetic stripe reader.
  • Contact: Terminal can accept card data in EMV contact mode ("dipping a card").
  • Contactless: Terminal can accept card data in EMV contactless mode ("tapping a card").
  • BarCode: Terminal can read bar codes.
  • QRcode: Terminal can read or scan QR codes.
  • OCR: Terminal can perform optical character recognition (OCT) on the card. EXAMPLE: ["Keyed","Swiped","Contact","Contactless"]

Used by

Authorization and Credit Optional. This field is supported only by client software that is installed on your POS terminals for the following processors:

  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • OmniPay Direct
  • SIX

Returns:

  • (Array[String])


390
391
392
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 390

def terminal_input_capability
  @terminal_input_capability
end

#terminal_makeString

This is the manufacturer name of the reader which is used to accept the payment. Possible values:

  • PAX
  • Verifone
  • Ingenico

Returns:

  • (String)


685
686
687
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 685

def terminal_make
  @terminal_make
end

#terminal_modelString

This is the model name of the reader which is used to accept the payment. Possible values:

  • E3555
  • P400
  • A920

Returns:

  • (String)


676
677
678
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 676

def terminal_model
  @terminal_model
end

#terminal_output_capabilityString

Indicates whether the terminal can print or display messages. Possible values:

  • 1: Neither
  • 2: Print only
  • 3: Display only
  • 4: Print and display
  • 5: Merchant terminal supports purchase only approvals This field is supported for authorizations and credits only on the following processors:
  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • OmniPay Direct
  • SIX
  • VisaNet Optional field.

Returns:

  • (String)


422
423
424
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 422

def terminal_output_capability
  @terminal_output_capability
end

#terminal_pin_capabilityInteger

Maximum PIN length that the terminal can capture. Possible values:

  • 0: No PIN capture capability
  • 1: PIN capture capability unknown
  • 2: PIN Pad down
  • 4: Four characters
  • 5: Five characters
  • 6: Six characters
  • 7: Seven characters
  • 8: Eight characters
  • 9: Nine characters
  • 10: Ten characters
  • 11: Eleven characters
  • 12: Twelve characters This field is supported for authorizations and credits only on the following processors:
  • American Express Direct
  • Credit Mutuel-CIC
  • OmniPay Direct
  • SIX
  • Visa Platform Connect Required field for authorization or credit of PIN transactions.

Returns:

  • (Integer)


447
448
449
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 447

def terminal_pin_capability
  @terminal_pin_capability
end

#terminal_serial_numberString

Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that is installed on the POS terminal. This value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.

Used by

Authorization and Credit Optional. This field is supported only by client software that is installed on your POS terminals for the following processors:

  • American Express Direct
  • Credit Mutuel-CIC
  • FDC Nashville Global
  • OmniPay Direct
  • SIX

Returns:

  • (String)


83
84
85
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 83

def terminal_serial_number
  @terminal_serial_number
end

#track_dataString

Card’s track 1 and 2 data. For all processors except FDMS Nashville, this value consists of one of the following:

  • Track 1 data
  • Track 2 data
  • Data for both tracks 1 and 2 For FDMS Nashville, this value consists of one of the following:
  • Track 1 data
  • Data for both tracks 1 and 2 Example: %B4111111111111111^SMITH/JOHN ^1612101976110000868000000?;4111111111111111=16121019761186800000?

Used by

Authorization Required for Chase Paymentech Solutions, Credit Mutuel-CIC, CyberSource through VisaNet, FDC Nashville Global, JCN Gateway, OmniPay Direct, and SIX if pointOfSaleInformation.entryMode is equal to one of these values:

  • contact
  • contactless
  • msd
  • swiped Otherwise, this field not used. Required for all other processors if pointOfSaleInformation.entryMode=swiped; otherwise, this field is not used.

GPX

This field only supports transactions from the following card types:

  • Visa
  • Mastercard
  • AMEX
  • Discover
  • Diners
  • JCB
  • Union Pay International

PIN debit

Track 2 data from the debit card. The sentinels are required. Required field for a PIN debit purchase and a PIN debit credit.

Returns:

  • (String)


326
327
328
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 326

def track_data
  @track_data
end

Class Method Details

.from_element(root) ⇒ Object



965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 965

def self.from_element(root)
  terminal_id = XmlUtilities.from_element(root, 'terminalId', String)
  terminal_serial_number = XmlUtilities.from_element(root,
                                                     'terminalSerialNumber',
                                                     String)
  cardholder_verification_method_used = XmlUtilities.from_element(
    root, 'cardholderVerificationMethodUsed', Integer
  )
  lane_number = XmlUtilities.from_element(root, 'laneNumber', String)
  cat_level = XmlUtilities.from_element(root, 'catLevel', Integer)
  entry_mode = XmlUtilities.from_element(root, 'entryMode', String)
  terminal_capability = XmlUtilities.from_element(root,
                                                  'terminalCapability',
                                                  Integer)
  operating_environment = XmlUtilities.from_element(root,
                                                    'operatingEnvironment',
                                                    String)
  emv = XmlUtilities.from_element(root, 'Emv', Emv)
  amex_capn_data = XmlUtilities.from_element(root, 'amexCapnData', String)
  track_data = XmlUtilities.from_element(root, 'trackData', String)
  store_and_forward_indicator = XmlUtilities.from_element(
    root, 'storeAndForwardIndicator', String
  )
  cardholder_verification_method = XmlUtilities.from_element_to_array(
    root, 'cardholderVerificationMethod', String
  )
  terminal_category = XmlUtilities.from_element(root, 'terminalCategory',
                                                String)
  terminal_input_capability = XmlUtilities.from_element_to_array(
    root, 'terminalInputCapability', String
  )
  terminal_card_capture_capability = XmlUtilities.from_element(
    root, 'terminalCardCaptureCapability', String
  )
  terminal_output_capability = XmlUtilities.from_element(
    root, 'terminalOutputCapability', String
  )
  terminal_pin_capability = XmlUtilities.from_element(
    root, 'terminalPinCapability', Integer
  )
  pin_entry_solution = XmlUtilities.from_element(root, 'pinEntrySolution',
                                                 String)
  device_id = XmlUtilities.from_element(root, 'deviceId', String)
  pin_block_encoding_format = XmlUtilities.from_element(
    root, 'pinBlockEncodingFormat', Integer
  )
  encrypted_pin = XmlUtilities.from_element(root, 'encryptedPin', String)
  encrypted_key_serial_number = XmlUtilities.from_element(
    root, 'encryptedKeySerialNumber', String
  )
  encrypted_key_id = XmlUtilities.from_element(root, 'encryptedKeyId',
                                               String)
  partner_sdk_version = XmlUtilities.from_element(root, 'partnerSdkVersion',
                                                  String)
  emv_application_identifier_and_dedicated_file_name = XmlUtilities.from_element(
    root, 'emvApplicationIdentifierAndDedicatedFileName', String
  )
  terminal_compliance = XmlUtilities.from_element(root,
                                                  'terminalCompliance',
                                                  String)
  is_dedicated_hardware_terminal = XmlUtilities.from_element(
    root, 'isDedicatedHardwareTerminal', String
  )
  terminal_model = XmlUtilities.from_element(root, 'terminalModel', String)
  terminal_make = XmlUtilities.from_element(root, 'terminalMake', String)
  service_code = XmlUtilities.from_element(root, 'serviceCode', String)

  new(terminal_id: terminal_id,
      terminal_serial_number: terminal_serial_number,
      cardholder_verification_method_used: cardholder_verification_method_used,
      lane_number: lane_number,
      cat_level: cat_level,
      entry_mode: entry_mode,
      terminal_capability: terminal_capability,
      operating_environment: operating_environment,
      emv: emv,
      amex_capn_data: amex_capn_data,
      track_data: track_data,
      store_and_forward_indicator: store_and_forward_indicator,
      cardholder_verification_method: cardholder_verification_method,
      terminal_category: terminal_category,
      terminal_input_capability: terminal_input_capability,
      terminal_card_capture_capability: terminal_card_capture_capability,
      terminal_output_capability: terminal_output_capability,
      terminal_pin_capability: terminal_pin_capability,
      pin_entry_solution: pin_entry_solution,
      device_id: device_id,
      pin_block_encoding_format: pin_block_encoding_format,
      encrypted_pin: encrypted_pin,
      encrypted_key_serial_number: encrypted_key_serial_number,
      encrypted_key_id: encrypted_key_id,
      partner_sdk_version: partner_sdk_version,
      emv_application_identifier_and_dedicated_file_name: emv_application_identifier_and_dedicated_file_name,
      terminal_compliance: terminal_compliance,
      is_dedicated_hardware_terminal: is_dedicated_hardware_terminal,
      terminal_model: terminal_model,
      terminal_make: terminal_make,
      service_code: service_code,
      additional_properties: additional_properties)
end

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 868

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  terminal_id = hash.key?('terminalId') ? hash['terminalId'] : SKIP
  terminal_serial_number =
    hash.key?('terminalSerialNumber') ? hash['terminalSerialNumber'] : SKIP
  cardholder_verification_method_used =
    hash.key?('cardholderVerificationMethodUsed') ? hash['cardholderVerificationMethodUsed'] : SKIP
  lane_number = hash.key?('laneNumber') ? hash['laneNumber'] : SKIP
  cat_level = hash.key?('catLevel') ? hash['catLevel'] : SKIP
  entry_mode = hash.key?('entryMode') ? hash['entryMode'] : SKIP
  terminal_capability =
    hash.key?('terminalCapability') ? hash['terminalCapability'] : SKIP
  operating_environment =
    hash.key?('operatingEnvironment') ? hash['operatingEnvironment'] : SKIP
  emv = Emv.from_hash(hash['emv']) if hash['emv']
  amex_capn_data = hash.key?('amexCapnData') ? hash['amexCapnData'] : SKIP
  track_data = hash.key?('trackData') ? hash['trackData'] : SKIP
  store_and_forward_indicator =
    hash.key?('storeAndForwardIndicator') ? hash['storeAndForwardIndicator'] : SKIP
  cardholder_verification_method =
    hash.key?('cardholderVerificationMethod') ? hash['cardholderVerificationMethod'] : SKIP
  terminal_category =
    hash.key?('terminalCategory') ? hash['terminalCategory'] : SKIP
  terminal_input_capability =
    hash.key?('terminalInputCapability') ? hash['terminalInputCapability'] : SKIP
  terminal_card_capture_capability =
    hash.key?('terminalCardCaptureCapability') ? hash['terminalCardCaptureCapability'] : SKIP
  terminal_output_capability =
    hash.key?('terminalOutputCapability') ? hash['terminalOutputCapability'] : SKIP
  terminal_pin_capability =
    hash.key?('terminalPinCapability') ? hash['terminalPinCapability'] : SKIP
  pin_entry_solution =
    hash.key?('pinEntrySolution') ? hash['pinEntrySolution'] : SKIP
  device_id = hash.key?('deviceId') ? hash['deviceId'] : SKIP
  pin_block_encoding_format =
    hash.key?('pinBlockEncodingFormat') ? hash['pinBlockEncodingFormat'] : SKIP
  encrypted_pin = hash.key?('encryptedPin') ? hash['encryptedPin'] : SKIP
  encrypted_key_serial_number =
    hash.key?('encryptedKeySerialNumber') ? hash['encryptedKeySerialNumber'] : SKIP
  encrypted_key_id =
    hash.key?('encryptedKeyId') ? hash['encryptedKeyId'] : SKIP
  partner_sdk_version =
    hash.key?('partnerSdkVersion') ? hash['partnerSdkVersion'] : SKIP
  emv_application_identifier_and_dedicated_file_name =
    hash.key?('emvApplicationIdentifierAndDedicatedFileName') ? hash['emvApplicationIdentifierAndDedicatedFileName'] : SKIP
  terminal_compliance =
    hash.key?('terminalCompliance') ? hash['terminalCompliance'] : SKIP
  is_dedicated_hardware_terminal =
    hash.key?('isDedicatedHardwareTerminal') ? hash['isDedicatedHardwareTerminal'] : SKIP
  terminal_model = hash.key?('terminalModel') ? hash['terminalModel'] : SKIP
  terminal_make = hash.key?('terminalMake') ? hash['terminalMake'] : SKIP
  service_code = hash.key?('serviceCode') ? hash['serviceCode'] : SKIP

  # Create a new hash for additional properties, removing known properties.
  new_hash = hash.reject { |k, _| names.value?(k) }

  additional_properties = APIHelper.get_additional_properties(
    new_hash, proc { |value| value }
  )

  # Create object from extracted values.
  PointOfSaleInformation.new(terminal_id: terminal_id,
                             terminal_serial_number: terminal_serial_number,
                             cardholder_verification_method_used: cardholder_verification_method_used,
                             lane_number: lane_number,
                             cat_level: cat_level,
                             entry_mode: entry_mode,
                             terminal_capability: terminal_capability,
                             operating_environment: operating_environment,
                             emv: emv,
                             amex_capn_data: amex_capn_data,
                             track_data: track_data,
                             store_and_forward_indicator: store_and_forward_indicator,
                             cardholder_verification_method: cardholder_verification_method,
                             terminal_category: terminal_category,
                             terminal_input_capability: terminal_input_capability,
                             terminal_card_capture_capability: terminal_card_capture_capability,
                             terminal_output_capability: terminal_output_capability,
                             terminal_pin_capability: terminal_pin_capability,
                             pin_entry_solution: pin_entry_solution,
                             device_id: device_id,
                             pin_block_encoding_format: pin_block_encoding_format,
                             encrypted_pin: encrypted_pin,
                             encrypted_key_serial_number: encrypted_key_serial_number,
                             encrypted_key_id: encrypted_key_id,
                             partner_sdk_version: partner_sdk_version,
                             emv_application_identifier_and_dedicated_file_name: emv_application_identifier_and_dedicated_file_name,
                             terminal_compliance: terminal_compliance,
                             is_dedicated_hardware_terminal: is_dedicated_hardware_terminal,
                             terminal_model: terminal_model,
                             terminal_make: terminal_make,
                             service_code: service_code,
                             additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 700

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['terminal_id'] = 'terminalId'
  @_hash['terminal_serial_number'] = 'terminalSerialNumber'
  @_hash['cardholder_verification_method_used'] =
    'cardholderVerificationMethodUsed'
  @_hash['lane_number'] = 'laneNumber'
  @_hash['cat_level'] = 'catLevel'
  @_hash['entry_mode'] = 'entryMode'
  @_hash['terminal_capability'] = 'terminalCapability'
  @_hash['operating_environment'] = 'operatingEnvironment'
  @_hash['emv'] = 'emv'
  @_hash['amex_capn_data'] = 'amexCapnData'
  @_hash['track_data'] = 'trackData'
  @_hash['store_and_forward_indicator'] = 'storeAndForwardIndicator'
  @_hash['cardholder_verification_method'] =
    'cardholderVerificationMethod'
  @_hash['terminal_category'] = 'terminalCategory'
  @_hash['terminal_input_capability'] = 'terminalInputCapability'
  @_hash['terminal_card_capture_capability'] =
    'terminalCardCaptureCapability'
  @_hash['terminal_output_capability'] = 'terminalOutputCapability'
  @_hash['terminal_pin_capability'] = 'terminalPinCapability'
  @_hash['pin_entry_solution'] = 'pinEntrySolution'
  @_hash['device_id'] = 'deviceId'
  @_hash['pin_block_encoding_format'] = 'pinBlockEncodingFormat'
  @_hash['encrypted_pin'] = 'encryptedPin'
  @_hash['encrypted_key_serial_number'] = 'encryptedKeySerialNumber'
  @_hash['encrypted_key_id'] = 'encryptedKeyId'
  @_hash['partner_sdk_version'] = 'partnerSdkVersion'
  @_hash['emv_application_identifier_and_dedicated_file_name'] =
    'emvApplicationIdentifierAndDedicatedFileName'
  @_hash['terminal_compliance'] = 'terminalCompliance'
  @_hash['is_dedicated_hardware_terminal'] = 'isDedicatedHardwareTerminal'
  @_hash['terminal_model'] = 'terminalModel'
  @_hash['terminal_make'] = 'terminalMake'
  @_hash['service_code'] = 'serviceCode'
  @_hash
end

.nullablesObject

An array for nullable fields



778
779
780
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 778

def self.nullables
  []
end

.optionalsObject

An array for optional fields



741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 741

def self.optionals
  %w[
    terminal_id
    terminal_serial_number
    cardholder_verification_method_used
    lane_number
    cat_level
    entry_mode
    terminal_capability
    operating_environment
    emv
    amex_capn_data
    track_data
    store_and_forward_indicator
    cardholder_verification_method
    terminal_category
    terminal_input_capability
    terminal_card_capture_capability
    terminal_output_capability
    terminal_pin_capability
    pin_entry_solution
    device_id
    pin_block_encoding_format
    encrypted_pin
    encrypted_key_serial_number
    encrypted_key_id
    partner_sdk_version
    emv_application_identifier_and_dedicated_file_name
    terminal_compliance
    is_dedicated_hardware_terminal
    terminal_model
    terminal_make
    service_code
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 1156

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} terminal_id: #{@terminal_id.inspect}, terminal_serial_number:"\
  " #{@terminal_serial_number.inspect}, cardholder_verification_method_used:"\
  " #{@cardholder_verification_method_used.inspect}, lane_number: #{@lane_number.inspect},"\
  " cat_level: #{@cat_level.inspect}, entry_mode: #{@entry_mode.inspect}, terminal_capability:"\
  " #{@terminal_capability.inspect}, operating_environment: #{@operating_environment.inspect},"\
  " emv: #{@emv.inspect}, amex_capn_data: #{@amex_capn_data.inspect}, track_data:"\
  " #{@track_data.inspect}, store_and_forward_indicator:"\
  " #{@store_and_forward_indicator.inspect}, cardholder_verification_method:"\
  " #{@cardholder_verification_method.inspect}, terminal_category:"\
  " #{@terminal_category.inspect}, terminal_input_capability:"\
  " #{@terminal_input_capability.inspect}, terminal_card_capture_capability:"\
  " #{@terminal_card_capture_capability.inspect}, terminal_output_capability:"\
  " #{@terminal_output_capability.inspect}, terminal_pin_capability:"\
  " #{@terminal_pin_capability.inspect}, pin_entry_solution: #{@pin_entry_solution.inspect},"\
  " device_id: #{@device_id.inspect}, pin_block_encoding_format:"\
  " #{@pin_block_encoding_format.inspect}, encrypted_pin: #{@encrypted_pin.inspect},"\
  " encrypted_key_serial_number: #{@encrypted_key_serial_number.inspect}, encrypted_key_id:"\
  " #{@encrypted_key_id.inspect}, partner_sdk_version: #{@partner_sdk_version.inspect},"\
  ' emv_application_identifier_and_dedicated_file_name:'\
  " #{@emv_application_identifier_and_dedicated_file_name.inspect}, terminal_compliance:"\
  " #{@terminal_compliance.inspect}, is_dedicated_hardware_terminal:"\
  " #{@is_dedicated_hardware_terminal.inspect}, terminal_model: #{@terminal_model.inspect},"\
  " terminal_make: #{@terminal_make.inspect}, service_code: #{@service_code.inspect},"\
  " additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 1130

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} terminal_id: #{@terminal_id}, terminal_serial_number:"\
  " #{@terminal_serial_number}, cardholder_verification_method_used:"\
  " #{@cardholder_verification_method_used}, lane_number: #{@lane_number}, cat_level:"\
  " #{@cat_level}, entry_mode: #{@entry_mode}, terminal_capability: #{@terminal_capability},"\
  " operating_environment: #{@operating_environment}, emv: #{@emv}, amex_capn_data:"\
  " #{@amex_capn_data}, track_data: #{@track_data}, store_and_forward_indicator:"\
  " #{@store_and_forward_indicator}, cardholder_verification_method:"\
  " #{@cardholder_verification_method}, terminal_category: #{@terminal_category},"\
  " terminal_input_capability: #{@terminal_input_capability},"\
  " terminal_card_capture_capability: #{@terminal_card_capture_capability},"\
  " terminal_output_capability: #{@terminal_output_capability}, terminal_pin_capability:"\
  " #{@terminal_pin_capability}, pin_entry_solution: #{@pin_entry_solution}, device_id:"\
  " #{@device_id}, pin_block_encoding_format: #{@pin_block_encoding_format}, encrypted_pin:"\
  " #{@encrypted_pin}, encrypted_key_serial_number: #{@encrypted_key_serial_number},"\
  " encrypted_key_id: #{@encrypted_key_id}, partner_sdk_version: #{@partner_sdk_version},"\
  ' emv_application_identifier_and_dedicated_file_name:'\
  " #{@emv_application_identifier_and_dedicated_file_name}, terminal_compliance:"\
  " #{@terminal_compliance}, is_dedicated_hardware_terminal:"\
  " #{@is_dedicated_hardware_terminal}, terminal_model: #{@terminal_model}, terminal_make:"\
  " #{@terminal_make}, service_code: #{@service_code}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_xml_element(doc, root_name) ⇒ Object



1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
# File 'lib/cyber_source_merged_spec/models/point_of_sale_information.rb', line 1066

def to_xml_element(doc, root_name)
  root = doc.create_element(root_name)

  XmlUtilities.add_as_subelement(doc, root, 'terminalId', terminal_id)
  XmlUtilities.add_as_subelement(doc, root, 'terminalSerialNumber',
                                 terminal_serial_number)
  XmlUtilities.add_as_subelement(doc, root,
                                 'cardholderVerificationMethodUsed',
                                 cardholder_verification_method_used)
  XmlUtilities.add_as_subelement(doc, root, 'laneNumber', lane_number)
  XmlUtilities.add_as_subelement(doc, root, 'catLevel', cat_level)
  XmlUtilities.add_as_subelement(doc, root, 'entryMode', entry_mode)
  XmlUtilities.add_as_subelement(doc, root, 'terminalCapability',
                                 terminal_capability)
  XmlUtilities.add_as_subelement(doc, root, 'operatingEnvironment',
                                 operating_environment)
  XmlUtilities.add_as_subelement(doc, root, 'Emv', emv)
  XmlUtilities.add_as_subelement(doc, root, 'amexCapnData', amex_capn_data)
  XmlUtilities.add_as_subelement(doc, root, 'trackData', track_data)
  XmlUtilities.add_as_subelement(doc, root, 'storeAndForwardIndicator',
                                 store_and_forward_indicator)
  XmlUtilities.add_array_as_subelement(doc, root,
                                       'cardholderVerificationMethod',
                                       cardholder_verification_method)
  XmlUtilities.add_as_subelement(doc, root, 'terminalCategory',
                                 terminal_category)
  XmlUtilities.add_array_as_subelement(doc, root, 'terminalInputCapability',
                                       terminal_input_capability)
  XmlUtilities.add_as_subelement(doc, root, 'terminalCardCaptureCapability',
                                 terminal_card_capture_capability)
  XmlUtilities.add_as_subelement(doc, root, 'terminalOutputCapability',
                                 terminal_output_capability)
  XmlUtilities.add_as_subelement(doc, root, 'terminalPinCapability',
                                 terminal_pin_capability)
  XmlUtilities.add_as_subelement(doc, root, 'pinEntrySolution',
                                 pin_entry_solution)
  XmlUtilities.add_as_subelement(doc, root, 'deviceId', device_id)
  XmlUtilities.add_as_subelement(doc, root, 'pinBlockEncodingFormat',
                                 pin_block_encoding_format)
  XmlUtilities.add_as_subelement(doc, root, 'encryptedPin', encrypted_pin)
  XmlUtilities.add_as_subelement(doc, root, 'encryptedKeySerialNumber',
                                 encrypted_key_serial_number)
  XmlUtilities.add_as_subelement(doc, root, 'encryptedKeyId',
                                 encrypted_key_id)
  XmlUtilities.add_as_subelement(doc, root, 'partnerSdkVersion',
                                 partner_sdk_version)
  XmlUtilities.add_as_subelement(
    doc, root, 'emvApplicationIdentifierAndDedicatedFileName',
    emv_application_identifier_and_dedicated_file_name
  )
  XmlUtilities.add_as_subelement(doc, root, 'terminalCompliance',
                                 terminal_compliance)
  XmlUtilities.add_as_subelement(doc, root, 'isDedicatedHardwareTerminal',
                                 is_dedicated_hardware_terminal)
  XmlUtilities.add_as_subelement(doc, root, 'terminalModel', terminal_model)
  XmlUtilities.add_as_subelement(doc, root, 'terminalMake', terminal_make)
  XmlUtilities.add_as_subelement(doc, root, 'serviceCode', service_code)
  XmlUtilities.add_as_subelement(doc, root, 'additional_properties',
                                 additional_properties)

  root
end