diff --git a/cybersource_rest_client.gemspec b/cybersource_rest_client.gemspec index cd8b3ce6..7bede052 100644 --- a/cybersource_rest_client.gemspec +++ b/cybersource_rest_client.gemspec @@ -17,7 +17,7 @@ require "cybersource_rest_client/version" Gem::Specification.new do |s| s.name = "cybersource_rest_client" - s.version = "0.0.67" + s.version = "0.0.68" s.platform = Gem::Platform::RUBY s.authors = ["CyberSource"] s.email = ["cybersourcedev@gmail.com"] diff --git a/docs/CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurations.md b/docs/CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurations.md index 73ffb63e..7fde0f1e 100644 --- a/docs/CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurations.md +++ b/docs/CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurations.md @@ -4,5 +4,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **parent_profile_id** | **String** | Specify the Vault ID to which transacting MID needs to be assigned.Provide Vault ID as seen on EBC Vault management page. If not provided , transacting MID will be assigned to the existing default Vault at merchant's level. If there are no Vaults at merchant level , a new Vault will be created and transacting MID will be assigned to it. | [optional] +**vault** | [**CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault**](CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault.md) | | [optional] diff --git a/docs/CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault.md b/docs/CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault.md new file mode 100644 index 00000000..fb30e876 --- /dev/null +++ b/docs/CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault.md @@ -0,0 +1,14 @@ +# CyberSource::CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**default_token_type** | **String** | Default token type to be used. Possible Values: - 'CUSTOMER' - 'PAYMENT_INSTRUMENT' - 'INSTRUMENT_IDENTIFIER' | [optional] +**location** | **String** | Location where the vault will be stored. Use 'IDC' (the Indian Data Centre) when merchant is storing token data in India or 'GDC' (the Global Data Centre) for all other cases. Possible Values: - 'IDC' - 'GDC' | [optional] +**token_formats** | [**TmsTokenFormats**](TmsTokenFormats.md) | | [optional] +**token_permissions** | [**TokenPermissions**](TokenPermissions.md) | | [optional] +**sensitive_privileges** | [**TmsSensitivePrivileges**](TmsSensitivePrivileges.md) | | [optional] +**nullify** | [**TmsNullify**](TmsNullify.md) | | [optional] +**network_token_services** | [**TmsNetworkTokenServices**](TmsNetworkTokenServices.md) | | [optional] + + diff --git a/docs/ECheckConfigCommonInternalOnlyProcessors.md b/docs/ECheckConfigCommonInternalOnlyProcessors.md index f612cf93..2ab529e1 100644 --- a/docs/ECheckConfigCommonInternalOnlyProcessors.md +++ b/docs/ECheckConfigCommonInternalOnlyProcessors.md @@ -7,8 +7,8 @@ Name | Type | Description | Notes **terminal_id** | **String** | *NEW* The 'Terminal Id' aka TID, is an identifier used for with your payments processor. Depending on the processor and payment acceptance type this may also be the default Terminal ID used for Card Present and Virtual Terminal transactions. Applicable for VPC processors. | [optional] **enable15an_transaction_reference_number** | **BOOLEAN** | *NEW* This ensures the transaction reference # contains an identifier that can be viewed in CYBS | [optional] [default to true] **portal_supported_paytypes** | **String** | *NEW* This is used by the EBC2 application | [optional] [default to 'CHECK'] -**settlement_method** | **Object** | *NEW* | [optional] -**verification_level** | **Object** | *NEW* | [optional] +**settlement_method** | **String** | *NEW* Possible values: - BEST_GUESS | [optional] [default to 'BEST_GUESS'] +**verification_level** | **String** | *NEW* Possible values: - VALIDATION | [optional] [default to 'VALIDATION'] **set_completed_state** | **BOOLEAN** | *Moved* When set to Yes we will automatically update transactions to a completed status X-number of days after the transaction comes through; if no failure notification is received. When set to No means we will not update transaction status in this manner. For BAMS/Bank of America merchants, they should be set to No unless we are explicitly asked to set a merchant to YES. | [optional] [default to false] diff --git a/docs/ECheckConfigCommonProcessors.md b/docs/ECheckConfigCommonProcessors.md index 15e567a2..5bd239b5 100644 --- a/docs/ECheckConfigCommonProcessors.md +++ b/docs/ECheckConfigCommonProcessors.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes **company_id** | **String** | *EXISTING* company ID assigned to merchant by Acquiring bank. This field is alphanumeric | [optional] **batch_group** | **String** | *EXISTING* Capture requests are grouped into a batch bound for your payment processor. The batch time can be identified by reading the last 2-digits as military time. E.g., <processor>_16 = your processing cutoff is 4PM PST. Please note if you are in a different location you may then need to convert time zone as well. | [optional] **enable_accuity_for_avs** | **BOOLEAN** | *NEW* Accuity is the original validation service that checks the account/routing number for formatting issues. Used by WF and set to \"Yes\" unless told otherwise | [optional] [default to true] -**accuity_check_type** | **Object** | *NEW* | [optional] +**accuity_check_type** | **String** | *NEW* Possible values: - ALWAYS | [optional] [default to 'ALWAYS'] **set_completed_state** | **BOOLEAN** | *Moved* When set to Yes we will automatically update transactions to a completed status X-number of days after the transaction comes through; if no failure notification is received. When set to No means we will not update transaction status in this manner. For BAMS/Bank of America merchants, they should be set to No unless we are explicitly asked to set a merchant to YES. | [optional] [default to false] diff --git a/docs/ECheckConfigFeaturesAccountValidationServiceInternalOnlyProcessors.md b/docs/ECheckConfigFeaturesAccountValidationServiceInternalOnlyProcessors.md index 708de3dc..8a896436 100644 --- a/docs/ECheckConfigFeaturesAccountValidationServiceInternalOnlyProcessors.md +++ b/docs/ECheckConfigFeaturesAccountValidationServiceInternalOnlyProcessors.md @@ -3,6 +3,6 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**avs_version** | **Object** | *NEW* | [optional] +**avs_version** | **String** | *NEW* Possible values: - 2 | [optional] [default to '2'] diff --git a/docs/ECheckConfigFeaturesAccountValidationServiceProcessors.md b/docs/ECheckConfigFeaturesAccountValidationServiceProcessors.md index b18d590c..530e6c4a 100644 --- a/docs/ECheckConfigFeaturesAccountValidationServiceProcessors.md +++ b/docs/ECheckConfigFeaturesAccountValidationServiceProcessors.md @@ -6,11 +6,11 @@ Name | Type | Description | Notes **avs_account_ownership_service** | **BOOLEAN** | *NEW* Determined in WF eTicket if account has opted into the Account Ownership Service. | [optional] **avs_account_status_service** | **BOOLEAN** | *NEW* Determined in WF eTicket if account has opted into the Account Status Service. | [optional] **avs_signed_agreement** | **BOOLEAN** | *NEW* Taken from Addendum Agreement Column in boarding form. | [optional] -**avs_calculated_response_behavior** | **Object** | *NEW* | [optional] +**avs_calculated_response_behavior** | **String** | *NEW* Possible values: - continue | [optional] [default to 'continue'] **avs_additional_id** | **String** | *NEW* Also known as the Additional ID. Taken from the boarding form. | [optional] **enable_avs** | **BOOLEAN** | *NEW* | [optional] [default to true] **avs_entity_id** | **String** | *NEW* Also known as the AVS Gateway Entity ID. | [optional] -**avs_result_mode** | **Object** | *NEW* | [optional] +**avs_result_mode** | **String** | *NEW* Possible values: - FULL_RESPONSE - LOGIC_BOX | [optional] **enable_avs_token_creation** | **BOOLEAN** | *NEW* Applicable if the merchant wants to run AVS on token creation requests only. | [optional] [default to false] diff --git a/docs/GenerateCaptureContextRequest.md b/docs/GenerateCaptureContextRequest.md index 3afa5c03..648ca3a3 100644 --- a/docs/GenerateCaptureContextRequest.md +++ b/docs/GenerateCaptureContextRequest.md @@ -3,9 +3,9 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**target_origins** | **Array<String>** | The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Microform is defined by the scheme (protocol), hostname (domain) and port number (if used). You must use https://hostname (unless you use http://localhost) Wildcards are NOT supported. Ensure that subdomains are included. Any valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc) Examples: - https://example.com - https://subdomain.example.com - https://example.com:8080<br><br> If you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example: targetOrigins: [ \"https://example.com\", \"https://basket.example.com\", \"https://ecom.example.com\" ] | [optional] -**allowed_card_networks** | **Array<String>** | The list of card networks you want to use for this Microform transaction. Microform currently supports the following card networks: - VISA - MAESTRO - MASTERCARD - AMEX - DISCOVER - DINERSCLUB - JCB - CUP - CARTESBANCAIRES - CARNET | [optional] **client_version** | **String** | Specify the version of Microform that you want to use. | [optional] +**target_origins** | **Array<String>** | The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Microform is defined by the scheme (protocol), hostname (domain) and port number (if used). You must use https://hostname (unless you use http://localhost) Wildcards are NOT supported. Ensure that subdomains are included. Any valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc) Examples: - https://example.com - https://subdomain.example.com - https://example.com:8080<br><br> If you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example: targetOrigins: [ \"https://example.com\", \"https://basket.example.com\", \"https://ecom.example.com\" ] | [optional] +**allowed_card_networks** | **Array<String>** | The list of card networks you want to use for this Microform transaction. Microform currently supports the following card networks: - VISA - MASTERCARD - AMEX - CARNET - CARTESBANCAIRES - CUP - DINERSCLUB - DISCOVER - EFTPOS - ELO - JCB - JCREW - MADA - MAESTRO - MEEZA | [optional] **checkout_api_initialization** | [**Microformv2sessionsCheckoutApiInitialization**](Microformv2sessionsCheckoutApiInitialization.md) | | [optional] diff --git a/docs/GenerateUnifiedCheckoutCaptureContextRequest.md b/docs/GenerateUnifiedCheckoutCaptureContextRequest.md index 9bbada02..23468835 100644 --- a/docs/GenerateUnifiedCheckoutCaptureContextRequest.md +++ b/docs/GenerateUnifiedCheckoutCaptureContextRequest.md @@ -3,9 +3,9 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**target_origins** | **Array<String>** | The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Unified Checkout is defined by the scheme (protocol), hostname (domain) and port number (if used). You must use https://hostname (unless you use http://localhost) Wildcards are NOT supported. Ensure that subdomains are included. Any valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc) Examples: - https://example.com - https://subdomain.example.com - https://example.com:8080<br><br> If you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example: targetOrigins: [ \"https://example.com\", \"https://basket.example.com\", \"https://ecom.example.com\" ] | [optional] **client_version** | **String** | Specify the version of Unified Checkout that you want to use. | [optional] -**allowed_card_networks** | **Array<String>** | The list of card networks you want to use for this Unified Checkout transaction. Unified Checkout currently supports the following card networks: - VISA - MASTERCARD - AMEX - DISCOVER - DINERSCLUB - JCB | [optional] +**target_origins** | **Array<String>** | The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Unified Checkout is defined by the scheme (protocol), hostname (domain) and port number (if used). You must use https://hostname (unless you use http://localhost) Wildcards are NOT supported. Ensure that subdomains are included. Any valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc) Examples: - https://example.com - https://subdomain.example.com - https://example.com:8080<br><br> If you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example: targetOrigins: [ \"https://example.com\", \"https://basket.example.com\", \"https://ecom.example.com\" ] | [optional] +**allowed_card_networks** | **Array<String>** | The list of card networks you want to use for this Unified Checkout transaction. Unified Checkout currently supports the following card networks: - VISA - MASTERCARD - AMEX - CARNET - CARTESBANCAIRES - CUP - DINERSCLUB - DISCOVER - EFTPOS - ELO - JCB - JCREW - MADA - MAESTRO - MEEZA | [optional] **allowed_payment_types** | **Array<String>** | The payment types that are allowed for the merchant. Possible values when launching Unified Checkout: - PANENTRY - GOOGLEPAY - SRC - CHECK <br><br> Possible values when launching Unified Checkout with Checkout API: - PANENTRY - SRC <br><br> Possible values when launching Click To Pay Drop-In UI: - CLICKTOPAY <br><br> **Important:** - SRC and CLICKTOPAY are only available for Visa, Mastercard and AMEX. | [optional] **country** | **String** | Country the purchase is originating from (e.g. country of the merchant). Use the two-character ISO Standard | [optional] **locale** | **String** | Localization of the User experience conforming to the ISO 639-1 language standards and two-character ISO Standard Country Code. Please refer to list of [supported locales through Unified Checkout](https://developer.cybersource.com/docs/cybs/en-us/unified-checkout/developer/all/rest/unified-checkout/uc-appendix-languages.html) | [optional] diff --git a/docs/Ptsv2paymentsPaymentInformationCard.md b/docs/Ptsv2paymentsPaymentInformationCard.md index ed7fe9df..36f9040b 100644 --- a/docs/Ptsv2paymentsPaymentInformationCard.md +++ b/docs/Ptsv2paymentsPaymentInformationCard.md @@ -17,6 +17,7 @@ Name | Type | Description | Notes **start_month** | **String** | Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12. **Note** The start date is not required for Maestro (UK Domestic) transactions. | [optional] **start_year** | **String** | Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`. **Note** The start date is not required for Maestro (UK Domestic) transactions. | [optional] **product_name** | **String** | Name of the card product. Possible value: - BNDES This field is supported only for BNDES transactions on CyberSource through VisaNet. The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR4 - Position: 115-120 - Field: Brazil Country Data | [optional] +**product_subtype** | **String** | This field would contain the indicator for transaction type Possible values: - AC: Agriculture Maintenance Account - AE: Agriculture Debit Account/Electron - AG: Agriculture - AI: Agriculture Investment Loan - CG: Brazil Cargo - CS: Construction - DS: Distribution - HC: Healthcare - LP: Visa Large Purchase Advantage - MA: Visa Mobile Agent - MB: Interoperable Mobile Branchless Banking - MG: Visa Mobile General - VA: Visa Vale - Supermarket - VF: Visa Vale - Fuel - VR: Visa Vale - Restaurant | [optional] **type_selection_indicator** | **String** | Flag that identifies how the card type was selected. Possible values: - 0: Card type was selected based on default acquirer settings. - 1: Customer selected the card type. | [optional] diff --git a/docs/Ptsv2paymentsProcessingInformation.md b/docs/Ptsv2paymentsProcessingInformation.md index febd88db..d623d843 100644 --- a/docs/Ptsv2paymentsProcessingInformation.md +++ b/docs/Ptsv2paymentsProcessingInformation.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **bin_source** | **String** | Bin Source File Identifier. Possible values: - itmx - rupay | [optional] **capture** | **BOOLEAN** | Indicates whether to also include a capture in the submitted authorization request or not. Possible values: - `true`: Include a capture with an authorization request. - `false`: (default) Do not include a capture with an authorization request. #### Used by **Authorization and Capture** Optional field. | [optional] [default to false] **processor_id** | **String** | Value that identifies the processor/acquirer to use for the transaction. This value is supported only for **CyberSource through VisaNet**. Contact CyberSource Customer Support to get the value for this field. | [optional] -**business_application_id** | **String** | Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. | [optional] +**business_application_id** | **String** | Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values. - AA : Account-to-account - BB : Supplier Payments - BI : Bank-Initiated P2P Money Transfer - BP : Non-Card Bill Pay/Bill Pay - CD : Cash Deposit - CP : Credit card Bill Payment - FD : Funds disbursement - FT : Funds transfer - GD : Government Disbursement - GP : Gambling payout (non-online gambling) - LO : Loyalty credits and rebates - MD : Merchant Settlement - OG : Online Gambling Payout - PD : Payroll and pension disbursement - PP : Person-to-Person or Peer-to-Peer - TU : Top up, prepaid load - WT : Digital wallet | [optional] **commerce_indicator** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as \"moto\" | [optional] **commerce_indicator_label** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as `moto` | [optional] **payment_solution** | **String** | Type of digital payment solution for the transaction. Possible Values: - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the REST API.](https://developer.cybersource.com/content/dam/docs/cybs/en-us/apifields/reference/all/rest/api-fields.pdf) - `001`: Apple Pay. - `004`: Cybersource In-App Solution. - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. - `006`: Android Pay. - `007`: Chase Pay. - `008`: Samsung Pay. - `012`: Google Pay. - `013`: Cybersource P2PE Decryption - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `027`: Click to Pay. | [optional] diff --git a/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md b/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md index cfd4a012..ea71b022 100644 --- a/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md +++ b/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md @@ -4,11 +4,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **payment_method** | **String** | This value is a 2-digit code indicating the payment method. Use Payment Method Code value that applies to the tranasction. - 10 (One-time payment) - 21, 22, 23, 24 (Bonus(one-time)payment) - 61 (Installment payment) - 31, 32, 33, 34 (Integrated (Bonus + Installment)payment) - 80 (Revolving payment) | [optional] -**bonuses** | **String** | This value is a 2-digit code indicating the Number of Bonuses. Valid value from 1 to 6. | [optional] -**bonus_month** | **String** | This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12. | [optional] -**second_bonus_month** | **String** | This value is a 2-digit code indicating the second bonus month. Valid value from 1 to 12. | [optional] -**bonus_amount** | **String** | This value contains the bonus amount of the first month. Maximum value without decimal 99999999. | [optional] -**second_bonus_amount** | **String** | This value contains the bonus amount of the second month. Maximum value without decimal 99999999. | [optional] +**bonuses** | [**Array<Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses>**](Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses.md) | An array of objects, each of which contains a bonus month and bonus amount. Length of bonuses array is equal to the number of bonuses. Max length = 6. In case of bonus month and amount not specified, null objects to be returned in the array. Example: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null] | [optional] **preapproval_type** | **String** | This will contain the details of the kind of transaction that has been processe. Used only for Japan. Possible Values: - 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft) - 1 = Negative card authorization (authorization-only with 0 or 1 amount) - 2 = Reservation of authorization (authorization-only with amount) - 3 = Cancel transaction - 4 = Merchant-initiated reversal/refund transactions - 5 = Cancel reservation of authorization - 6 = Post authorization | [optional] **installments** | **String** | Number of Installments. | [optional] **terminal_id** | **String** | Unique Japan Credit Card Association (JCCA) terminal identifier. The difference between this field and the `pointOfSaleInformation.terminalID` field is that you can define `pointOfSaleInformation.terminalID`, but `processingInformation.japanPaymentOptions.terminalId` is defined by the JCCA and is used only in Japan. This field is supported only on CyberSource through VisaNet and JCN Gateway. Optional field. | [optional] diff --git a/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses.md b/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses.md new file mode 100644 index 00000000..2a5b78e2 --- /dev/null +++ b/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses.md @@ -0,0 +1,9 @@ +# CyberSource::Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**month** | **String** | This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12. | [optional] +**amount** | **String** | This value contains the bonus amount of the first month. Maximum value without decimal 99999999. | [optional] + + diff --git a/docs/Ptsv2paymentsRecipientInformation.md b/docs/Ptsv2paymentsRecipientInformation.md index d5a23452..fd9e6032 100644 --- a/docs/Ptsv2paymentsRecipientInformation.md +++ b/docs/Ptsv2paymentsRecipientInformation.md @@ -3,14 +3,14 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**account_id** | **String** | Identifier for the recipient's account. **Applicable for Barclays AFT transactions only.** It is mandatory for both Visa and Mastercard AFT. For Visa, the field has a maximum length of 34 character. For Mastercard, the field has a maximum length of 50 character. | [optional] -**account_type** | **String** | Identifies the recipient's account type. **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Valid values are: - `00` for Other - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN) - `02` for International Bank Account Number (IBAN) - `03` for Card Account - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code | [optional] -**first_name** | **String** | First name of the recipient. **Applicable for Barclays AFT transactions only.** The field is mandatory for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 35 characters. Values exceeding the above limits will be truncated. | [optional] -**last_name** | **String** | Last name of the recipient. **Applicable for Barclays AFT transactions only.** This field is optional for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 35 characters. Values exceeding these limits will be truncated. | [optional] -**middle_name** | **String** | Middle name of the recipient. **Applicable for Barclays AFT transactions only.** This field is optional for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 1 character. Values exceeding these limits will be truncated. | [optional] -**address1** | **String** | The street address of the recipient **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 50 characters. Values exceeding these limits will be truncated. | [optional] +**account_id** | **String** | Identifier for the recipient's account. This field is applicable for AFT transactions. | [optional] +**account_type** | **String** | Identifies the recipient's account type. This field is applicable for AFT transactions. Valid values are: - `00` for Other - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN) - `02` for International Bank Account Number (IBAN) - `03` for Card Account - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code | [optional] +**first_name** | **String** | First name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. | [optional] +**middle_name** | **String** | Middle name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. | [optional] +**last_name** | **String** | Last name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. | [optional] +**address1** | **String** | The street address of the recipient This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. | [optional] **postal_code** | **String** | Partial postal code for the recipient's address. For example, if the postal code is **NN5 7SG**, the value for this field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. | [optional] -**country** | **String** | The country associated with the address of the recipient. **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) | [optional] +**country** | **String** | The country associated with the address of the recipient. This field is applicable for AFT and OCT transactions. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) | [optional] **date_of_birth** | **String** | Recipient's date of birth. **Format**: `YYYYMMDD`. This field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters but otherwise does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. | [optional] **beneficiary_id** | **String** | Only for e-wallets: ID, username, hash or anything uniquely identifying the ultimate beneficiary. | [optional] **beneficiary_name** | **String** | Only for e-wallets: The ultimate beneficiary's full name. | [optional] diff --git a/docs/Ptsv2paymentsSenderInformation.md b/docs/Ptsv2paymentsSenderInformation.md index 34e5134b..8aa67035 100644 --- a/docs/Ptsv2paymentsSenderInformation.md +++ b/docs/Ptsv2paymentsSenderInformation.md @@ -3,12 +3,12 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**first_name** | **String** | First name of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding the above limits will be truncated. | [optional] -**last_name** | **String** | Last name of the sender. **Applicable for Barclays AFT transactions only.** This field is optional for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding these limits will be truncated. | [optional] -**middle_name** | **String** | Middle name of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding these limits will be truncated. | [optional] -**address1** | **String** | The street address of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 35 characters. Values exceeding these limits will be truncated. | [optional] -**locality** | **String** | The city or locality of the sender.in **Applicable for Barclays AFT transactions only.** The field is optional for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 25 characters. Values exceeding these limits will be truncated. | [optional] -**administrative_area** | **String** | The state or province of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa AFT when the sender country is US or CA else it is optional for Visa AFT. This field is not applicable for Mastercard AFT. Must be a two character value | [optional] -**country_code** | **String** | The country associated with the address of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) | [optional] +**first_name** | **String** | First name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported.Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to the processor. | [optional] +**middle_name** | **String** | Middle name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. | [optional] +**last_name** | **String** | Last name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. | [optional] +**address1** | **String** | The street address of the sender. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. | [optional] +**locality** | **String** | The city or locality of the sender. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. | [optional] +**administrative_area** | **String** | The state or province of the sender. This field is applicable for AFT transactions when the sender country is US or CA. Else it is optional. Must be a two character value | [optional] +**country_code** | **String** | The country associated with the address of the sender. This field is applicable for AFT transactions. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) | [optional] diff --git a/docs/Riskv1exportcomplianceinquiriesOrderInformationLineItems.md b/docs/Riskv1exportcomplianceinquiriesOrderInformationLineItems.md index 2264b147..1b0595fe 100644 --- a/docs/Riskv1exportcomplianceinquiriesOrderInformationLineItems.md +++ b/docs/Riskv1exportcomplianceinquiriesOrderInformationLineItems.md @@ -3,7 +3,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**unit_price** | **String** | Per-item price of the product. This value for this field cannot be negative. You must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request. You can include a decimal point (.), but you cannot include any other special characters. The value is truncated to the correct number of decimal places. #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either the 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request. #### Tax Calculation Required field for U.S., Canadian, international and value added taxes. #### Zero Amount Authorizations If your processor supports zero amount authorizations, you can set this field to 0 for the authorization to check if the card is lost or stolen. #### Maximum Field Lengths For GPN and JCN Gateway: Decimal (10) All other processors: Decimal (15) | +**unit_price** | **String** | Per-item price of the product. If line items are present in the request, the unit price is a mandatory field. | [optional] **allowed_export_countries** | **Array<String>** | | [optional] **restricted_export_countries** | **Array<String>** | | [optional] **quantity** | **Integer** | Number of units for this order. Must be a non-negative integer. The default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. | [optional] diff --git a/docs/TmsNetworkTokenServices.md b/docs/TmsNetworkTokenServices.md new file mode 100644 index 00000000..2b648635 --- /dev/null +++ b/docs/TmsNetworkTokenServices.md @@ -0,0 +1,13 @@ +# CyberSource::TmsNetworkTokenServices + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**notifications** | [**TmsNetworkTokenServicesNotifications**](TmsNetworkTokenServicesNotifications.md) | | [optional] +**payment_credentials** | [**TmsNetworkTokenServicesPaymentCredentials**](TmsNetworkTokenServicesPaymentCredentials.md) | | [optional] +**synchronous_provisioning** | [**TmsNetworkTokenServicesSynchronousProvisioning**](TmsNetworkTokenServicesSynchronousProvisioning.md) | | [optional] +**visa_token_service** | [**TmsNetworkTokenServicesVisaTokenService**](TmsNetworkTokenServicesVisaTokenService.md) | | [optional] +**mastercard_digital_enablement_service** | [**TmsNetworkTokenServicesMastercardDigitalEnablementService**](TmsNetworkTokenServicesMastercardDigitalEnablementService.md) | | [optional] +**american_express_token_service** | [**TmsNetworkTokenServicesAmericanExpressTokenService**](TmsNetworkTokenServicesAmericanExpressTokenService.md) | | [optional] + + diff --git a/docs/TmsNetworkTokenServicesAmericanExpressTokenService.md b/docs/TmsNetworkTokenServicesAmericanExpressTokenService.md new file mode 100644 index 00000000..13253dcb --- /dev/null +++ b/docs/TmsNetworkTokenServicesAmericanExpressTokenService.md @@ -0,0 +1,11 @@ +# CyberSource::TmsNetworkTokenServicesAmericanExpressTokenService + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enable_service** | **BOOLEAN** | Indicates if the service for network tokens for the American Express card association are enabled | [optional] +**enable_transactional_tokens** | **BOOLEAN** | Indicates if network tokens for the American Express card association are enabled for transactions | [optional] +**token_requestor_id** | **String** | Token Requestor ID provided by American Express during the registration process for the Tokenization Service Pattern: ^[0-9]{11}\\\\z$\" Min Length: 11 Max Length: 11 Example: \"12345678912\" | [optional] +**se_number** | **String** | SE Number assigned by American Express for the merchant's account Pattern: \"^[0-9]{11}\\\\z$\" Min Length: 10 Max Length: 10 Example: \"9876543212\" | [optional] + + diff --git a/docs/TmsNetworkTokenServicesMastercardDigitalEnablementService.md b/docs/TmsNetworkTokenServicesMastercardDigitalEnablementService.md new file mode 100644 index 00000000..68e19ebf --- /dev/null +++ b/docs/TmsNetworkTokenServicesMastercardDigitalEnablementService.md @@ -0,0 +1,10 @@ +# CyberSource::TmsNetworkTokenServicesMastercardDigitalEnablementService + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enable_service** | **BOOLEAN** | Indicates if the service for network tokens for the Mastercard card association are enabled | [optional] +**enable_transactional_tokens** | **BOOLEAN** | Indicates if network tokens for the Mastercard card association are enabled for transactions | [optional] +**token_requestor_id** | **String** | Token Requestor ID provided by Mastercard during the registration process for the Tokenization Service Pattern: ^[0-9]{11}\\\\z$\" Min Length: 11 Max Length: 11 Example: \"50162233570\" | [optional] + + diff --git a/docs/TmsNetworkTokenServicesNotifications.md b/docs/TmsNetworkTokenServicesNotifications.md new file mode 100644 index 00000000..03b0f5a5 --- /dev/null +++ b/docs/TmsNetworkTokenServicesNotifications.md @@ -0,0 +1,8 @@ +# CyberSource::TmsNetworkTokenServicesNotifications + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enabled** | **BOOLEAN** | Indicates if lifecycle management (LCM) notifications are enabled | [optional] + + diff --git a/docs/TmsNetworkTokenServicesPaymentCredentials.md b/docs/TmsNetworkTokenServicesPaymentCredentials.md new file mode 100644 index 00000000..0a69f005 --- /dev/null +++ b/docs/TmsNetworkTokenServicesPaymentCredentials.md @@ -0,0 +1,8 @@ +# CyberSource::TmsNetworkTokenServicesPaymentCredentials + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enabled** | **BOOLEAN** | Indicates if Payment Credentials are enabled. If enabled, this provides access to the unredacted token and its associated cryptogram. | [optional] + + diff --git a/docs/TmsNetworkTokenServicesSynchronousProvisioning.md b/docs/TmsNetworkTokenServicesSynchronousProvisioning.md new file mode 100644 index 00000000..7751fd65 --- /dev/null +++ b/docs/TmsNetworkTokenServicesSynchronousProvisioning.md @@ -0,0 +1,8 @@ +# CyberSource::TmsNetworkTokenServicesSynchronousProvisioning + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enabled** | **BOOLEAN** | Indicates if network tokens are provisioned synchronously (i.e. as part of the transaction flow) or asychronously (i.e. in parallel to the payment flow) NOTE: The synchronous provisioning feature is designed exclusively for aggregator merchants. Direct merchants should not enable synchronous provisioning as TMS manages the asynchronous creation of network tokens for direct clients. Activation of this feature by direct merchants will lead to latency in the authorization response. | [optional] + + diff --git a/docs/TmsNetworkTokenServicesVisaTokenService.md b/docs/TmsNetworkTokenServicesVisaTokenService.md new file mode 100644 index 00000000..b102cb3b --- /dev/null +++ b/docs/TmsNetworkTokenServicesVisaTokenService.md @@ -0,0 +1,11 @@ +# CyberSource::TmsNetworkTokenServicesVisaTokenService + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enable_service** | **BOOLEAN** | Indicates if the service for network tokens for the Visa card association are enabled | [optional] +**enable_transactional_tokens** | **BOOLEAN** | Indicates if network tokens for the Visa card association are enabled for transactions | [optional] +**token_requestor_id** | **String** | Token Requestor ID provided by Visa during the registration process for the Tokenization Service Pattern: ^[0-9]{11}\\\\z$\" Min Length: 11 Max Length: 11 Example: \"40000000082\" | [optional] +**relationship_id** | **String** | Relationship ID provided by visa Min Length: 1 Max Length: 100 Example: \"24681921-40000000082\" | [optional] + + diff --git a/docs/TmsNullify.md b/docs/TmsNullify.md new file mode 100644 index 00000000..82fdbc39 --- /dev/null +++ b/docs/TmsNullify.md @@ -0,0 +1,10 @@ +# CyberSource::TmsNullify + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**instrument_identifier_card_number** | **BOOLEAN** | Indicates if the card number should be nullified (i.e. not stored) | [optional] +**instrument_identifier_card_expiration** | **BOOLEAN** | Indicates if the expiration date associated to the instrument identifier should be nullified (i.e. not stored) | [optional] +**payment_instrument_card_details** | **BOOLEAN** | Indicates if the card details should be nullified (i.e. not stored) | [optional] + + diff --git a/docs/TmsSensitivePrivileges.md b/docs/TmsSensitivePrivileges.md new file mode 100644 index 00000000..bc361f4f --- /dev/null +++ b/docs/TmsSensitivePrivileges.md @@ -0,0 +1,8 @@ +# CyberSource::TmsSensitivePrivileges + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**card_number_masking_format** | **String** | Indicates which digits of the card number will be unmasked. Possible Values: - 'FIRST_6_LAST_4' - 'LAST_4' - 'MASKED' | [optional] + + diff --git a/docs/TmsTokenFormats.md b/docs/TmsTokenFormats.md new file mode 100644 index 00000000..74dcf441 --- /dev/null +++ b/docs/TmsTokenFormats.md @@ -0,0 +1,11 @@ +# CyberSource::TmsTokenFormats + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**customer** | **String** | Format for customer tokens. Possible Values: - '16_DIGIT' - '19_DIGIT' - '22_DIGIT' - '32_HEX' | [optional] +**payment_instrument** | **String** | Format for payment instrument tokens. Possible Values: - '16_DIGIT' - '19_DIGIT' - '22_DIGIT' - '32_HEX' | [optional] +**instrument_identifier_card** | **String** | Format for card based instrument identifier tokens. Possible Values: - '16_DIGIT' - '16_DIGIT_LAST_4' - '19_DIGIT' - '19_DIGIT_LAST_4' - '22_DIGIT' - '32_HEX' | [optional] +**instrument_identifier_bank_account** | **String** | Format for bank account based instrument identifier tokens. Possible Values: - '16_DIGIT' - '19_DIGIT' - '22_DIGIT' - '32_HEX' | [optional] + + diff --git a/docs/TokenPermissions.md b/docs/TokenPermissions.md new file mode 100644 index 00000000..f2e5c3be --- /dev/null +++ b/docs/TokenPermissions.md @@ -0,0 +1,11 @@ +# CyberSource::TokenPermissions + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**create** | **BOOLEAN** | Indicates if tokens may be created | [optional] +**read** | **BOOLEAN** | Indicates if tokens may be read | [optional] +**update** | **BOOLEAN** | Indicates if tokens may be updated | [optional] +**delete** | **BOOLEAN** | Indicates if tokens may be deleted | [optional] + + diff --git a/docs/TssV2TransactionsGet200ResponseProcessingInformation.md b/docs/TssV2TransactionsGet200ResponseProcessingInformation.md index 39defa3c..4edb5b49 100644 --- a/docs/TssV2TransactionsGet200ResponseProcessingInformation.md +++ b/docs/TssV2TransactionsGet200ResponseProcessingInformation.md @@ -8,7 +8,7 @@ Name | Type | Description | Notes **payment_solution** | **String** | Type of digital payment solution for the transaction. | [optional] **commerce_indicator** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as \"moto\" | [optional] **commerce_indicator_label** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as `moto` | [optional] -**business_application_id** | **String** | Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. | [optional] +**business_application_id** | **String** | Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values. - AA : Account-to-account - BB : Supplier Payments - BI : Bank-Initiated P2P Money Transfer - BP : Non-Card Bill Pay/Bill Pay - CD : Cash Deposit - CP : Credit card Bill Payment - FD : Funds disbursement - FT : Funds transfer - GD : Government Disbursement - GP : Gambling payout (non-online gambling) - LO : Loyalty credits and rebates - MD : Merchant Settlement - OG : Online Gambling Payout - PD : Payroll and pension disbursement - PP : Person-to-Person or Peer-to-Peer - TU : Top up, prepaid load - WT : Digital wallet | [optional] **authorization_options** | [**TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions**](TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions.md) | | [optional] **bank_transfer_options** | [**TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions**](TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions.md) | | [optional] **capture_options** | [**TssV2TransactionsGet200ResponseProcessingInformationCaptureOptions**](TssV2TransactionsGet200ResponseProcessingInformationCaptureOptions.md) | | [optional] diff --git a/docs/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions.md b/docs/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions.md index 740d4870..30b9f5d9 100644 --- a/docs/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions.md +++ b/docs/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions.md @@ -7,5 +7,10 @@ Name | Type | Description | Notes **terminal_id** | **String** | Unique Japan Credit Card Association (JCCA) terminal identifier. The difference between this field and the `pointOfSaleInformation.terminalID` field is that you can define `pointOfSaleInformation.terminalID`, but `processingInformation.japanPaymentOptions.terminalId` is defined by the JCCA and is used only in Japan. This field is supported only on CyberSource through VisaNet and JCN Gateway. Optional field. | [optional] **business_name** | **String** | Business name in Japanese characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet. | [optional] **business_name_katakana** | **String** | Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet. | [optional] +**business_name_english** | **String** | Business name in English characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet. | [optional] +**bonuses** | [**Array<Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses>**](Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses.md) | An array of objects, each of which contains a bonus month and bonus amount. Length of bonuses array is equal to the number of bonuses. Max length = 6. In case of bonus month and amount not specified, null objects to be returned in the array. Example: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null] | [optional] +**first_billing_month** | **String** | Billing month in MM format. | [optional] +**number_of_installments** | **String** | Number of Installments. | [optional] +**pre_approval_type** | **String** | This will contain the details of the kind of transaction that has been processe. Used only for Japan. Possible Values: - 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft) - 1 = Negative card authorization (authorization-only with 0 or 1 amount) - 2 = Reservation of authorization (authorization-only with amount) - 3 = Cancel transaction - 4 = Merchant-initiated reversal/refund transactions - 5 = Cancel reservation of authorization - 6 = Post authorization | [optional] diff --git a/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md b/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md index 77197ebf..6892cdee 100644 --- a/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md +++ b/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md @@ -4,7 +4,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **payment_solution** | **String** | Type of digital payment solution for the transaction. Possible Values: - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the REST API.](https://developer.cybersource.com/content/dam/docs/cybs/en-us/apifields/reference/all/rest/api-fields.pdf) - `001`: Apple Pay. - `004`: Cybersource In-App Solution. - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. - `006`: Android Pay. - `007`: Chase Pay. - `008`: Samsung Pay. - `012`: Google Pay. - `013`: Cybersource P2PE Decryption - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `027`: Click to Pay. | [optional] -**business_application_id** | **String** | Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. | [optional] +**business_application_id** | **String** | Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values. - AA : Account-to-account - BB : Supplier Payments - BI : Bank-Initiated P2P Money Transfer - BP : Non-Card Bill Pay/Bill Pay - CD : Cash Deposit - CP : Credit card Bill Payment - FD : Funds disbursement - FT : Funds transfer - GD : Government Disbursement - GP : Gambling payout (non-online gambling) - LO : Loyalty credits and rebates - MD : Merchant Settlement - OG : Online Gambling Payout - PD : Payroll and pension disbursement - PP : Person-to-Person or Peer-to-Peer - TU : Top up, prepaid load - WT : Digital wallet | [optional] **commerce_indicator** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as \"moto\" | [optional] **commerce_indicator_label** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as `moto` | [optional] diff --git a/generator/cybersource-rest-spec-ruby.json b/generator/cybersource-rest-spec-ruby.json index a75a2ae2..1102267f 100644 --- a/generator/cybersource-rest-spec-ruby.json +++ b/generator/cybersource-rest-spec-ruby.json @@ -377,7 +377,8 @@ "categoryTag": "Payments", "testingTriggers": "https://developer.cybersource.com/hello-world/testing-guide.html", "responseCodes": "https://developer.cybersource.com/api/reference/response-codes.html", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -490,7 +491,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "commerceIndicator": { "type": "string", @@ -857,29 +858,23 @@ "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" }, "bonuses": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the Number of Bonuses. Valid value from 1 to 6.\n" - }, - "bonusMonth": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12.\n" - }, - "secondBonusMonth": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the second bonus month. Valid value from 1 to 12.\n" - }, - "bonusAmount": { - "type": "string", - "maxLength": 8, - "description": "This value contains the bonus amount of the first month. Maximum value without decimal 99999999.\n" - }, - "secondBonusAmount": { - "type": "string", - "maxLength": 8, - "description": "This value contains the bonus amount of the second month. Maximum value without decimal 99999999.\n" + "type": "array", + "description": "An array of objects, each of which contains a bonus month and bonus amount. \nLength of bonuses array is equal to the number of bonuses. Max length = 6. \nIn case of bonus month and amount not specified, null objects to be returned in the array.\nExample: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null]\n", + "items": { + "type": "object", + "properties": { + "month": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12.\n" + }, + "amount": { + "type": "string", + "maxLength": 8, + "description": "This value contains the bonus amount of the first month. Maximum value without decimal 99999999.\n" + } + } + } }, "preapprovalType": { "type": "string", @@ -1057,6 +1052,11 @@ "maxLength": 15, "description": "Name of the card product.\n\nPossible value:\n- BNDES\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 115-120\n- Field: Brazil Country Data\n" }, + "productSubtype": { + "type": "string", + "maxLength": 2, + "description": "This field would contain the indicator for transaction type\n\nPossible values:\n- AC: Agriculture Maintenance Account\n- AE: Agriculture Debit Account/Electron \n- AG: Agriculture \n- AI: Agriculture Investment Loan\n- CG: Brazil Cargo\n- CS: Construction \n- DS: Distribution \n- HC: Healthcare\n- LP: Visa Large Purchase Advantage\n- MA: Visa Mobile Agent\n- MB: Interoperable Mobile Branchless Banking\n- MG: Visa Mobile General\n- VA: Visa Vale - Supermarket\n- VF: Visa Vale - Fuel\n- VR: Visa Vale - Restaurant\n" + }, "typeSelectionIndicator": { "type": "string", "maxLength": 1, @@ -2415,37 +2415,37 @@ "firstName": { "type": "string", "maxLength": 30, - "description": "First name of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nValues exceeding the above limits will be truncated.\n" - }, - "lastName": { - "type": "string", - "maxLength": 35, - "description": "Last name of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is optional for Visa and not applicable for Mastercard AFT.\n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nValues exceeding these limits will be truncated.\n" + "description": "First name of the sender.\nThis field is applicable for AFT and OCT transactions. \n\nOnly alpha numeric values are supported.Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to the processor.\n" }, "middleName": { "type": "string", "maxLength": 30, - "description": "Middle name of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nValues exceeding these limits will be truncated.\n" + "description": "Middle name of the sender.\nThis field is applicable for AFT and OCT transactions. \n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" + }, + "lastName": { + "type": "string", + "maxLength": 35, + "description": "Last name of the sender.\nThis field is applicable for AFT and OCT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" }, "address1": { "type": "string", "maxLength": 35, - "description": "The street address of the sender.\n \n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n \nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. \n \nThe field has a maximum length of 35 characters. \nValues exceeding these limits will be truncated.\n" + "description": "The street address of the sender.\nThis field is applicable for AFT transactions. \n \nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor.\n" }, "locality": { "type": "string", "maxLength": 25, - "description": "The city or locality of the sender.in\n\n**Applicable for Barclays AFT transactions only.**\nThe field is optional for Visa and not applicable for Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays.\n\nThe field has a maximum length of 25 characters. \nValues exceeding these limits will be truncated.\n" + "description": "The city or locality of the sender.\nThis field is applicable for AFT transactions.\n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor.\n" }, "administrativeArea": { "type": "string", "maxLength": 2, - "description": "The state or province of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa AFT when the sender country is US or CA else it is optional for Visa AFT.\nThis field is not applicable for Mastercard AFT.\n\nMust be a two character value\n" + "description": "The state or province of the sender.\nThis field is applicable for AFT transactions when the sender country is US or CA. Else it is optional.\n\nMust be a two character value\n" }, "countryCode": { "type": "string", "maxLength": 2, - "description": "The country associated with the address of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" + "description": "The country associated with the address of the sender.\nThis field is applicable for AFT transactions. \n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" } } }, @@ -2455,32 +2455,32 @@ "accountId": { "type": "string", "maxLength": 50, - "description": "Identifier for the recipient's account.\n\n**Applicable for Barclays AFT transactions only.**\nIt is mandatory for both Visa and Mastercard AFT.\n\nFor Visa, the field has a maximum length of 34 character. \nFor Mastercard, the field has a maximum length of 50 character.\n" + "description": "Identifier for the recipient's account.\nThis field is applicable for AFT transactions.\n" }, "accountType": { "type": "string", "maxLength": 2, - "description": "Identifies the recipient's account type.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is mandatory for Mastercard and not applicable for Visa AFT.\n\nValid values are:\n - `00` for Other\n - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN)\n - `02` for International Bank Account Number (IBAN)\n - `03` for Card Account\n - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code\n" + "description": "Identifies the recipient's account type.\nThis field is applicable for AFT transactions.\n\nValid values are:\n - `00` for Other\n - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN)\n - `02` for International Bank Account Number (IBAN)\n - `03` for Card Account\n - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code\n" }, "firstName": { "type": "string", "maxLength": 35, - "description": "First name of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for both Visa and Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nFor Mastercard, the field has a maximum length of 35 characters. \nValues exceeding the above limits will be truncated.\n" - }, - "lastName": { - "type": "string", - "maxLength": 35, - "description": "Last name of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is optional for both Visa and Mastercard AFT.\n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nFor Mastercard, the field has a maximum length of 35 characters. \nValues exceeding these limits will be truncated.\n" + "description": "First name of the recipient.\nThis field is applicable for AFT transactions. \n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" }, "middleName": { "type": "string", "maxLength": 30, - "description": "Middle name of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is optional for both Visa and Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nFor Mastercard, the field has a maximum length of 1 character. \nValues exceeding these limits will be truncated.\n" + "description": "Middle name of the recipient.\nThis field is applicable for AFT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" + }, + "lastName": { + "type": "string", + "maxLength": 35, + "description": "Last name of the recipient.\nThis field is applicable for AFT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" }, "address1": { "type": "string", "maxLength": 50, - "description": "The street address of the recipient\n \n**Applicable for Barclays AFT transactions only.**\nThis field is mandatory for Mastercard and not applicable for Visa AFT.\n \nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. \n \nThe field has a maximum length of 50 characters. \nValues exceeding these limits will be truncated.\n" + "description": "The street address of the recipient\nThis field is applicable for AFT and OCT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. \n" }, "postalCode": { "type": "string", @@ -2490,7 +2490,7 @@ "country": { "type": "string", "maxLength": 2, - "description": "The country associated with the address of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is mandatory for Mastercard and not applicable for Visa AFT.\n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" + "description": "The country associated with the address of the recipient.\nThis field is applicable for AFT and OCT transactions.\n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" }, "dateOfBirth": { "type": "string", @@ -8768,9 +8768,12 @@ }, "recipientInformation": { "firstName": "Ben", - "middleName": "A", + "middleName": "Ann", "lastName": "Stokes", - "accountId": "4929421234600821" + "accountId": "4929421234600821", + "accountType": "03", + "address1": "1 High Street", + "country": "GB" } } }, @@ -10642,7 +10645,8 @@ "operationId": "incrementAuth", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -11187,7 +11191,8 @@ "operationId": "authReversal", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -11774,7 +11779,8 @@ "x-devcenter-metaData": { "categoryTag": "Payments", "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", - "isClientSideApi": true + "isClientSideApi": true, + "isMLEsupported": true }, "parameters": [ { @@ -12285,7 +12291,8 @@ "operationId": "capturePayment", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -15177,7 +15184,8 @@ "operationId": "refundPayment", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -17844,7 +17852,8 @@ "operationId": "refundCapture", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -20489,7 +20498,8 @@ "operationId": "createCredit", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -24032,7 +24042,8 @@ "operationId": "voidPayment", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -24497,7 +24508,8 @@ "operationId": "voidCapture", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -24891,7 +24903,8 @@ "operationId": "voidRefund", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -25285,7 +25298,8 @@ "operationId": "voidCredit", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -25679,7 +25693,8 @@ "operationId": "mitVoid", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "x-example": { "example0": { @@ -26903,7 +26918,8 @@ "categoryTag": "Payments", "testingTriggers": "https://developer.cybersource.com/hello-world/testing-guide.html", "responseCodes": "https://developer.cybersource.com/api/reference/response-codes.html", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -27323,7 +27339,8 @@ "operationId": "billingAgreementsRegistration", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", + "isMLEsupported": true }, "parameters": [ { @@ -28485,7 +28502,8 @@ "operationId": "billingAgreementsDeRegistration", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", + "isMLEsupported": true }, "parameters": [ { @@ -29825,7 +29843,8 @@ "operationId": "billingAgreementsIntimation", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", + "isMLEsupported": true }, "parameters": [ { @@ -30477,7 +30496,8 @@ "operationId": "createOrderRequest", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -31028,7 +31048,8 @@ "operationId": "CreateSessionRequest", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -32173,7 +32194,8 @@ "operationId": "UpdateSessionReq", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -63467,6 +63489,10 @@ "type": "object", "description": "This is a server-to-server API request to generate the capture context that can be used to initiate instance of microform on a acceptance page. The capture context is a digitally signed JWT that provides authentication, one-time keys, and the target origin to the Microform Integration application. ", "properties": { + "clientVersion": { + "type": "string", + "description": "Specify the version of Microform that you want to use.\n" + }, "targetOrigins": { "type": "array", "items": { @@ -63480,11 +63506,7 @@ "items": { "type": "string" }, - "description": "The list of card networks you want to use for this Microform transaction.\n\nMicroform currently supports the following card networks:\n- VISA\n- MAESTRO\n- MASTERCARD\n- AMEX\n- DISCOVER\n- DINERSCLUB\n- JCB\n- CUP\n- CARTESBANCAIRES\n- CARNET\n" - }, - "clientVersion": { - "type": "string", - "description": "Specify the version of Microform that you want to use.\n" + "description": "The list of card networks you want to use for this Microform transaction.\n\nMicroform currently supports the following card networks:\n- VISA\n- MASTERCARD\n- AMEX\n- CARNET\n- CARTESBANCAIRES\n- CUP\n- DINERSCLUB\n- DISCOVER\n- EFTPOS\n- ELO\n- JCB\n- JCREW\n- MADA\n- MAESTRO\n- MEEZA\n" }, "checkoutApiInitialization": { "type": "object", @@ -63541,43 +63563,53 @@ "example0": { "summary": "Generate Capture Context simple", "value": { + "clientVersion": "v2", "targetOrigins": [ "https://www.test.com" ], "allowedCardNetworks": [ "VISA", - "MAESTRO", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", + "DISCOVER", + "EFTPOS", + "ELO", "JCB", - "CUP", - "CARTESBANCAIRES", - "CARNET" - ], - "clientVersion": "v2" + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" + ] } }, "example1": { "summary": "Generate Capture Context With Checkout API", "value": { + "clientVersion": "v2", "targetOrigins": [ "https://www.test.com" ], "allowedCardNetworks": [ "VISA", - "MAESTRO", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", + "DISCOVER", + "EFTPOS", + "ELO", "JCB", - "CUP", - "CARTESBANCAIRES", - "CARNET" + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], - "clientVersion": "v2", "checkoutApiInitialization": { "profile_id": "12341234-1234-1234-1234-123412341234", "access_key": "acce55acce55acce55acce55acce5500", @@ -67240,7 +67272,8 @@ ], "x-devcenter-metaData": { "categoryTag": "Payer_Authentication", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html", + "isMLEsupported": true }, "parameters": [ { @@ -67699,7 +67732,8 @@ ], "x-devcenter-metaData": { "categoryTag": "Payer_Authentication", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html", + "isMLEsupported": true }, "parameters": [ { @@ -70213,7 +70247,8 @@ "operationId": "validateAuthenticationResults", "x-devcenter-metaData": { "categoryTag": "Payer_Authentication", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html", + "isMLEsupported": true }, "parameters": [ { @@ -73383,14 +73418,11 @@ "type": "array", "items": { "type": "object", - "required": [ - "unitPrice" - ], "properties": { "unitPrice": { "type": "string", "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + "description": "Per-item price of the product. If line items are present in the request, the unit price is a mandatory field.\n" }, "allowedExportCountries": { "type": "array", @@ -74088,7 +74120,8 @@ ], "operationId": "octCreatePayment", "x-devcenter-metaData": { - "categoryTag": "Payouts" + "categoryTag": "Payouts", + "isMLEsupported": true }, "parameters": [ { @@ -75199,7 +75232,8 @@ "firstLevelApiLifeCycle": "hidden", "secondLevelApiLifeCycle": "hidden", "apiLifeCycle": "hidden", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payouts/Introduction.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payouts/Introduction.html", + "isMLEsupported": true }, "parameters": [ { @@ -82016,7 +82050,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "authorizationOptions": { "type": "object", @@ -82136,6 +82170,45 @@ "type": "string", "maxLength": 25, "description": "Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + }, + "businessNameEnglish": { + "type": "string", + "maxLength": 25, + "description": "Business name in English characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + }, + "bonuses": { + "type": "array", + "description": "An array of objects, each of which contains a bonus month and bonus amount. \nLength of bonuses array is equal to the number of bonuses. Max length = 6. \nIn case of bonus month and amount not specified, null objects to be returned in the array.\nExample: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null]\n", + "items": { + "type": "object", + "properties": { + "month": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12.\n" + }, + "amount": { + "type": "string", + "maxLength": 8, + "description": "This value contains the bonus amount of the first month. Maximum value without decimal 99999999.\n" + } + } + } + }, + "firstBillingMonth": { + "type": "string", + "maxLength": 2, + "description": "Billing month in MM format.\n" + }, + "numberOfInstallments": { + "type": "string", + "maximum": 99, + "description": "Number of Installments.\n" + }, + "preApprovalType": { + "type": "string", + "maxLength": 1, + "description": "This will contain the details of the kind of transaction that has been processe. Used only for Japan.\nPossible Values:\n- 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft)\n- 1 = Negative card authorization (authorization-only with 0 or 1 amount)\n- 2 = Reservation of authorization (authorization-only with amount)\n- 3 = Cancel transaction\n- 4 = Merchant-initiated reversal/refund transactions\n- 5 = Cancel reservation of authorization\n- 6 = Post authorization\n" } } } @@ -82876,7 +82949,21 @@ "paymentMethod": "1", "terminalId": "1234567890123", "businessName": "shop_local", - "businessNameKatakana": "shop_katakana" + "businessNameKatakana": "shop_katakana", + "businessNameEnglish": "shop_local_english", + "bonuses": [ + { + "month": "07", + "amount": "999" + }, + { + "month": "08", + "amount": "9889" + } + ], + "firstBillingMonth": "06", + "numberOfInstallments": "99", + "preApprovalType": "1" } }, "processorInformation": { @@ -83687,7 +83774,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "commerceIndicator": { "type": "string", @@ -84534,7 +84621,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "commerceIndicator": { "type": "string", @@ -99862,11 +99949,9 @@ "description": "*NEW* Accuity is the original validation service that checks the account/routing number for formatting issues. Used by WF and set to \"Yes\" unless told otherwise" }, "accuityCheckType": { - "enum": [ - "ALWAYS" - ], + "type": "string", "default": "ALWAYS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- ALWAYS" }, "setCompletedState": { "type": "boolean", @@ -99917,18 +100002,14 @@ "description": "*NEW* This is used by the EBC2 application" }, "settlementMethod": { - "enum": [ - "BEST_GUESS" - ], + "type": "string", "default": "BEST_GUESS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- BEST_GUESS" }, "verificationLevel": { - "enum": [ - "VALIDATION" - ], + "type": "string", "default": "VALIDATION", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- VALIDATION" }, "setCompletedState": { "type": "boolean", @@ -100051,11 +100132,9 @@ "description": "Name of the payment processor. Example - \"wellsfargoach\"", "properties": { "avsVersion": { - "enum": [ - "2" - ], + "type": "string", "default": "2", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- 2" } } } @@ -100082,11 +100161,9 @@ "description": "*NEW* Taken from Addendum Agreement Column in boarding form." }, "avsCalculatedResponseBehavior": { - "enum": [ - "continue" - ], + "type": "string", "default": "continue", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- continue" }, "avsAdditionalId": { "type": "string", @@ -100102,11 +100179,8 @@ "description": "*NEW* Also known as the AVS Gateway Entity ID." }, "avsResultMode": { - "enum": [ - "FULL_RESPONSE", - "LOGIC_BOX" - ], - "description": "*NEW*" + "type": "string", + "description": "*NEW* \nPossible values:\n- FULL_RESPONSE\n- LOGIC_BOX" }, "enableAvsTokenCreation": { "type": "boolean", @@ -102144,6 +102218,201 @@ "parentProfileId": { "type": "string", "description": "Specify the Vault ID to which transacting MID needs to be assigned.Provide Vault ID as seen on EBC Vault management page. If not provided , transacting MID will be assigned to the existing default Vault at merchant's level. If there are no Vaults at merchant level , a new Vault will be created and transacting MID will be assigned to it." + }, + "vault": { + "type": "object", + "properties": { + "defaultTokenType": { + "type": "string", + "description": "Default token type to be used.\nPossible Values: \n - 'CUSTOMER'\n - 'PAYMENT_INSTRUMENT'\n - 'INSTRUMENT_IDENTIFIER'\n", + "example": "CUSTOMER" + }, + "location": { + "type": "string", + "description": "Location where the vault will be stored.\n\nUse 'IDC' (the Indian Data Centre) when merchant is storing token data in India or 'GDC' (the Global Data Centre) for all other cases.\n\nPossible Values: \n - 'IDC'\n - 'GDC'\n", + "example": "GDC" + }, + "tokenFormats": { + "title": "tmsTokenFormats", + "type": "object", + "properties": { + "customer": { + "type": "string", + "description": "Format for customer tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "paymentInstrument": { + "type": "string", + "description": "Format for payment instrument tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "instrumentIdentifierCard": { + "type": "string", + "description": "Format for card based instrument identifier tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '16_DIGIT_LAST_4'\n - '19_DIGIT'\n - '19_DIGIT_LAST_4'\n - '22_DIGIT'\n - '32_HEX'\n" + }, + "instrumentIdentifierBankAccount": { + "type": "string", + "description": "Format for bank account based instrument identifier tokens.\n\nPossible Values: \n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n" + } + } + }, + "tokenPermissions": { + "title": "TokenPermissions", + "type": "object", + "properties": { + "create": { + "type": "boolean", + "description": "Indicates if tokens may be created" + }, + "read": { + "type": "boolean", + "description": "Indicates if tokens may be read" + }, + "update": { + "type": "boolean", + "description": "Indicates if tokens may be updated" + }, + "delete": { + "type": "boolean", + "description": "Indicates if tokens may be deleted" + } + } + }, + "sensitivePrivileges": { + "title": "tmsSensitivePrivileges", + "type": "object", + "properties": { + "cardNumberMaskingFormat": { + "type": "string", + "description": "Indicates which digits of the card number will be unmasked.\n\nPossible Values: \n - 'FIRST_6_LAST_4'\n - 'LAST_4'\n - 'MASKED'\n" + } + } + }, + "nullify": { + "title": "tmsNullify", + "type": "object", + "properties": { + "instrumentIdentifierCardNumber": { + "type": "boolean", + "description": "Indicates if the card number should be nullified (i.e. not stored)" + }, + "instrumentIdentifierCardExpiration": { + "type": "boolean", + "description": "Indicates if the expiration date associated to the instrument identifier should be nullified (i.e. not stored)" + }, + "paymentInstrumentCardDetails": { + "type": "boolean", + "description": "Indicates if the card details should be nullified (i.e. not stored)" + } + } + }, + "networkTokenServices": { + "title": "tmsNetworkTokenServices", + "type": "object", + "properties": { + "notifications": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if lifecycle management (LCM) notifications are enabled" + } + } + }, + "paymentCredentials": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if Payment Credentials are enabled. If enabled, this provides access to the unredacted token and its associated cryptogram." + } + } + }, + "synchronousProvisioning": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if network tokens are provisioned synchronously (i.e. as part of the transaction flow) or asychronously (i.e. in parallel to the payment flow)\n\nNOTE: The synchronous provisioning feature is designed exclusively for aggregator merchants.\n\nDirect merchants should not enable synchronous provisioning as TMS manages the asynchronous creation of network tokens for direct clients. \n\nActivation of this feature by direct merchants will lead to latency in the authorization response.\n" + } + } + }, + "visaTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Visa card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Visa card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Visa during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"40000000082\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "relationshipId": { + "type": "string", + "description": "Relationship ID provided by visa\n\nMin Length: 1\nMax Length: 100\nExample: \"24681921-40000000082\"\n", + "minLength": 1, + "maxLength": 100 + } + } + }, + "mastercardDigitalEnablementService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Mastercard card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Mastercard card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Mastercard during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"50162233570\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + } + } + }, + "americanExpressTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the American Express card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the American Express card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by American Express during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"12345678912\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "seNumber": { + "type": "string", + "minLength": 10, + "maxLength": 10, + "pattern": "^[0-9]{11}\\z$", + "description": "SE Number assigned by American Express for the merchant's account\n\nPattern: \"^[0-9]{11}\\\\z$\"\nMin Length: 10\nMax Length: 10\nExample: \"9876543212\"\n" + } + } + } + } + } + } } } } @@ -105956,6 +106225,89 @@ } } } + }, + "example11": { + "summary": "Merchant Boarding with TMS and Network Token Enablement", + "value": { + "organizationInformation": { + "parentOrganizationId": "apitester00", + "type": "MERCHANT", + "configurable": "true", + "businessInformation": { + "name": "StuartWickedFastEatz", + "address": { + "country": "US", + "address1": "123456 SandMarket", + "locality": "ORMOND BEACH", + "administrativeArea": "FL", + "postalCode": "32176" + }, + "websiteUrl": "https://www.NetworkTokenMerchant.com", + "businessContact": { + "firstName": "Token", + "lastName": "Man", + "phoneNumber": "6574567813", + "email": "networktokenman@visa.com" + } + } + }, + "productInformation": { + "selectedProducts": { + "commerceSolutions": { + "tokenManagement": { + "subscriptionInformation": { + "enabled": true + }, + "configurationInformation": { + "configurations": { + "vault": { + "defaultTokenType": "CUSTOMER", + "location": "GDC", + "tokenFormats": { + "customer": "32_HEX", + "paymentInstrument": "32_HEX", + "instrumentIdentifierCard": "19_DIGIT_LAST_4", + "instrumentIdentifierBankAccount": "32_HEX" + }, + "sensitivePrivileges": { + "cardNumberMaskingFormat": "FIRST_6_LAST_4" + }, + "networkTokenServices": { + "visaTokenService": { + "enableService": true, + "enableTransactionalTokens": true, + "tokenRequestorId": "40000000082", + "relationshipId": "24681921-40000000082" + }, + "mastercardDigitalEnablementService": { + "enableService": true, + "enableTransactionalTokens": true, + "tokenRequestorId": "50162233570" + }, + "americanExpressTokenService": { + "enableService": true, + "enableTransactionalTokens": true, + "tokenRequestorId": "12345678912", + "seNumber": "9876543212" + }, + "notifications": { + "enabled": true + }, + "paymentCredentials": { + "enabled": true + }, + "synchronousProvisioning": { + "enabled": false + } + } + } + } + } + } + } + } + } + } } } } @@ -108025,11 +108377,9 @@ "description": "*NEW* Accuity is the original validation service that checks the account/routing number for formatting issues. Used by WF and set to \"Yes\" unless told otherwise" }, "accuityCheckType": { - "enum": [ - "ALWAYS" - ], + "type": "string", "default": "ALWAYS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- ALWAYS" }, "setCompletedState": { "type": "boolean", @@ -108080,18 +108430,14 @@ "description": "*NEW* This is used by the EBC2 application" }, "settlementMethod": { - "enum": [ - "BEST_GUESS" - ], + "type": "string", "default": "BEST_GUESS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- BEST_GUESS" }, "verificationLevel": { - "enum": [ - "VALIDATION" - ], + "type": "string", "default": "VALIDATION", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- VALIDATION" }, "setCompletedState": { "type": "boolean", @@ -108214,11 +108560,9 @@ "description": "Name of the payment processor. Example - \"wellsfargoach\"", "properties": { "avsVersion": { - "enum": [ - "2" - ], + "type": "string", "default": "2", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- 2" } } } @@ -108245,11 +108589,9 @@ "description": "*NEW* Taken from Addendum Agreement Column in boarding form." }, "avsCalculatedResponseBehavior": { - "enum": [ - "continue" - ], + "type": "string", "default": "continue", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- continue" }, "avsAdditionalId": { "type": "string", @@ -108265,11 +108607,8 @@ "description": "*NEW* Also known as the AVS Gateway Entity ID." }, "avsResultMode": { - "enum": [ - "FULL_RESPONSE", - "LOGIC_BOX" - ], - "description": "*NEW*" + "type": "string", + "description": "*NEW* \nPossible values:\n- FULL_RESPONSE\n- LOGIC_BOX" }, "enableAvsTokenCreation": { "type": "boolean", @@ -110307,6 +110646,201 @@ "parentProfileId": { "type": "string", "description": "Specify the Vault ID to which transacting MID needs to be assigned.Provide Vault ID as seen on EBC Vault management page. If not provided , transacting MID will be assigned to the existing default Vault at merchant's level. If there are no Vaults at merchant level , a new Vault will be created and transacting MID will be assigned to it." + }, + "vault": { + "type": "object", + "properties": { + "defaultTokenType": { + "type": "string", + "description": "Default token type to be used.\nPossible Values: \n - 'CUSTOMER'\n - 'PAYMENT_INSTRUMENT'\n - 'INSTRUMENT_IDENTIFIER'\n", + "example": "CUSTOMER" + }, + "location": { + "type": "string", + "description": "Location where the vault will be stored.\n\nUse 'IDC' (the Indian Data Centre) when merchant is storing token data in India or 'GDC' (the Global Data Centre) for all other cases.\n\nPossible Values: \n - 'IDC'\n - 'GDC'\n", + "example": "GDC" + }, + "tokenFormats": { + "title": "tmsTokenFormats", + "type": "object", + "properties": { + "customer": { + "type": "string", + "description": "Format for customer tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "paymentInstrument": { + "type": "string", + "description": "Format for payment instrument tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "instrumentIdentifierCard": { + "type": "string", + "description": "Format for card based instrument identifier tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '16_DIGIT_LAST_4'\n - '19_DIGIT'\n - '19_DIGIT_LAST_4'\n - '22_DIGIT'\n - '32_HEX'\n" + }, + "instrumentIdentifierBankAccount": { + "type": "string", + "description": "Format for bank account based instrument identifier tokens.\n\nPossible Values: \n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n" + } + } + }, + "tokenPermissions": { + "title": "TokenPermissions", + "type": "object", + "properties": { + "create": { + "type": "boolean", + "description": "Indicates if tokens may be created" + }, + "read": { + "type": "boolean", + "description": "Indicates if tokens may be read" + }, + "update": { + "type": "boolean", + "description": "Indicates if tokens may be updated" + }, + "delete": { + "type": "boolean", + "description": "Indicates if tokens may be deleted" + } + } + }, + "sensitivePrivileges": { + "title": "tmsSensitivePrivileges", + "type": "object", + "properties": { + "cardNumberMaskingFormat": { + "type": "string", + "description": "Indicates which digits of the card number will be unmasked.\n\nPossible Values: \n - 'FIRST_6_LAST_4'\n - 'LAST_4'\n - 'MASKED'\n" + } + } + }, + "nullify": { + "title": "tmsNullify", + "type": "object", + "properties": { + "instrumentIdentifierCardNumber": { + "type": "boolean", + "description": "Indicates if the card number should be nullified (i.e. not stored)" + }, + "instrumentIdentifierCardExpiration": { + "type": "boolean", + "description": "Indicates if the expiration date associated to the instrument identifier should be nullified (i.e. not stored)" + }, + "paymentInstrumentCardDetails": { + "type": "boolean", + "description": "Indicates if the card details should be nullified (i.e. not stored)" + } + } + }, + "networkTokenServices": { + "title": "tmsNetworkTokenServices", + "type": "object", + "properties": { + "notifications": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if lifecycle management (LCM) notifications are enabled" + } + } + }, + "paymentCredentials": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if Payment Credentials are enabled. If enabled, this provides access to the unredacted token and its associated cryptogram." + } + } + }, + "synchronousProvisioning": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if network tokens are provisioned synchronously (i.e. as part of the transaction flow) or asychronously (i.e. in parallel to the payment flow)\n\nNOTE: The synchronous provisioning feature is designed exclusively for aggregator merchants.\n\nDirect merchants should not enable synchronous provisioning as TMS manages the asynchronous creation of network tokens for direct clients. \n\nActivation of this feature by direct merchants will lead to latency in the authorization response.\n" + } + } + }, + "visaTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Visa card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Visa card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Visa during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"40000000082\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "relationshipId": { + "type": "string", + "description": "Relationship ID provided by visa\n\nMin Length: 1\nMax Length: 100\nExample: \"24681921-40000000082\"\n", + "minLength": 1, + "maxLength": 100 + } + } + }, + "mastercardDigitalEnablementService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Mastercard card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Mastercard card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Mastercard during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"50162233570\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + } + } + }, + "americanExpressTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the American Express card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the American Express card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by American Express during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"12345678912\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "seNumber": { + "type": "string", + "minLength": 10, + "maxLength": 10, + "pattern": "^[0-9]{11}\\z$", + "description": "SE Number assigned by American Express for the merchant's account\n\nPattern: \"^[0-9]{11}\\\\z$\"\nMin Length: 10\nMax Length: 10\nExample: \"9876543212\"\n" + } + } + } + } + } + } } } } @@ -114779,6 +115313,12 @@ "schema": { "type": "object", "properties": { + "clientVersion": { + "type": "string", + "example": 0.22, + "maxLength": 60, + "description": "Specify the version of Unified Checkout that you want to use." + }, "targetOrigins": { "type": "array", "items": { @@ -114787,12 +115327,6 @@ }, "description": "The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Unified Checkout is defined by the scheme (protocol), hostname (domain) and port number (if used). \n\nYou must use https://hostname (unless you use http://localhost)\nWildcards are NOT supported. Ensure that subdomains are included.\nAny valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc)\n\nExamples:\n - https://example.com\n - https://subdomain.example.com\n - https://example.com:8080

\n\nIf you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example:\n\n targetOrigins: [\n \"https://example.com\",\n \"https://basket.example.com\",\n \"https://ecom.example.com\"\n ]\n" }, - "clientVersion": { - "type": "string", - "example": 0.22, - "maxLength": 60, - "description": "Specify the version of Unified Checkout that you want to use." - }, "allowedCardNetworks": { "type": "array", "items": { @@ -114803,7 +115337,7 @@ "MASTERCARD" ] }, - "description": "The list of card networks you want to use for this Unified Checkout transaction.\n\nUnified Checkout currently supports the following card networks:\n - VISA\n - MASTERCARD\n - AMEX\n - DISCOVER\n - DINERSCLUB\n - JCB\n" + "description": "The list of card networks you want to use for this Unified Checkout transaction.\n\nUnified Checkout currently supports the following card networks:\n - VISA\n - MASTERCARD\n - AMEX\n - CARNET\n - CARTESBANCAIRES\n - CUP\n - DINERSCLUB\n - DISCOVER\n - EFTPOS\n - ELO\n - JCB\n - JCREW\n - MADA\n - MAESTRO\n - MEEZA\n" }, "allowedPaymentTypes": { "type": "array", @@ -115190,18 +115724,26 @@ "example0": { "summary": "Generate Unified Checkout Capture Context", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "VISA", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "PANENTRY", @@ -115233,17 +115775,26 @@ "example1": { "summary": "Generate Unified Checkout Capture Context with Checkout API", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "PANENTRY", @@ -115285,17 +115836,26 @@ "example3": { "summary": "Generate Unified Checkout Capture Context passing Billing & Shipping", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "PANENTRY", @@ -115373,17 +115933,26 @@ "example4": { "summary": "Generate Capture Context For Click To Pay Drop-In UI", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "CLICKTOPAY" diff --git a/generator/cybersource-rest-spec.json b/generator/cybersource-rest-spec.json index 272953a8..35f69c59 100644 --- a/generator/cybersource-rest-spec.json +++ b/generator/cybersource-rest-spec.json @@ -377,7 +377,8 @@ "categoryTag": "Payments", "testingTriggers": "https://developer.cybersource.com/hello-world/testing-guide.html", "responseCodes": "https://developer.cybersource.com/api/reference/response-codes.html", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -490,7 +491,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "commerceIndicator": { "type": "string", @@ -857,29 +858,23 @@ "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" }, "bonuses": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the Number of Bonuses. Valid value from 1 to 6.\n" - }, - "bonusMonth": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12.\n" - }, - "secondBonusMonth": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the second bonus month. Valid value from 1 to 12.\n" - }, - "bonusAmount": { - "type": "string", - "maxLength": 8, - "description": "This value contains the bonus amount of the first month. Maximum value without decimal 99999999.\n" - }, - "secondBonusAmount": { - "type": "string", - "maxLength": 8, - "description": "This value contains the bonus amount of the second month. Maximum value without decimal 99999999.\n" + "type": "array", + "description": "An array of objects, each of which contains a bonus month and bonus amount. \nLength of bonuses array is equal to the number of bonuses. Max length = 6. \nIn case of bonus month and amount not specified, null objects to be returned in the array.\nExample: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null]\n", + "items": { + "type": "object", + "properties": { + "month": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12.\n" + }, + "amount": { + "type": "string", + "maxLength": 8, + "description": "This value contains the bonus amount of the first month. Maximum value without decimal 99999999.\n" + } + } + } }, "preapprovalType": { "type": "string", @@ -1057,6 +1052,11 @@ "maxLength": 15, "description": "Name of the card product.\n\nPossible value:\n- BNDES\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 115-120\n- Field: Brazil Country Data\n" }, + "productSubtype": { + "type": "string", + "maxLength": 2, + "description": "This field would contain the indicator for transaction type\n\nPossible values:\n- AC: Agriculture Maintenance Account\n- AE: Agriculture Debit Account/Electron \n- AG: Agriculture \n- AI: Agriculture Investment Loan\n- CG: Brazil Cargo\n- CS: Construction \n- DS: Distribution \n- HC: Healthcare\n- LP: Visa Large Purchase Advantage\n- MA: Visa Mobile Agent\n- MB: Interoperable Mobile Branchless Banking\n- MG: Visa Mobile General\n- VA: Visa Vale - Supermarket\n- VF: Visa Vale - Fuel\n- VR: Visa Vale - Restaurant\n" + }, "typeSelectionIndicator": { "type": "string", "maxLength": 1, @@ -2415,37 +2415,37 @@ "firstName": { "type": "string", "maxLength": 30, - "description": "First name of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nValues exceeding the above limits will be truncated.\n" - }, - "lastName": { - "type": "string", - "maxLength": 35, - "description": "Last name of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is optional for Visa and not applicable for Mastercard AFT.\n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nValues exceeding these limits will be truncated.\n" + "description": "First name of the sender.\nThis field is applicable for AFT and OCT transactions. \n\nOnly alpha numeric values are supported.Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to the processor.\n" }, "middleName": { "type": "string", "maxLength": 30, - "description": "Middle name of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nValues exceeding these limits will be truncated.\n" + "description": "Middle name of the sender.\nThis field is applicable for AFT and OCT transactions. \n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" + }, + "lastName": { + "type": "string", + "maxLength": 35, + "description": "Last name of the sender.\nThis field is applicable for AFT and OCT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" }, "address1": { "type": "string", "maxLength": 35, - "description": "The street address of the sender.\n \n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n \nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. \n \nThe field has a maximum length of 35 characters. \nValues exceeding these limits will be truncated.\n" + "description": "The street address of the sender.\nThis field is applicable for AFT transactions. \n \nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor.\n" }, "locality": { "type": "string", "maxLength": 25, - "description": "The city or locality of the sender.in\n\n**Applicable for Barclays AFT transactions only.**\nThe field is optional for Visa and not applicable for Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays.\n\nThe field has a maximum length of 25 characters. \nValues exceeding these limits will be truncated.\n" + "description": "The city or locality of the sender.\nThis field is applicable for AFT transactions.\n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor.\n" }, "administrativeArea": { "type": "string", "maxLength": 2, - "description": "The state or province of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa AFT when the sender country is US or CA else it is optional for Visa AFT.\nThis field is not applicable for Mastercard AFT.\n\nMust be a two character value\n" + "description": "The state or province of the sender.\nThis field is applicable for AFT transactions when the sender country is US or CA. Else it is optional.\n\nMust be a two character value\n" }, "countryCode": { "type": "string", "maxLength": 2, - "description": "The country associated with the address of the sender.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for Visa and not applicable for Mastercard AFT. \n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" + "description": "The country associated with the address of the sender.\nThis field is applicable for AFT transactions. \n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" } } }, @@ -2455,32 +2455,32 @@ "accountId": { "type": "string", "maxLength": 50, - "description": "Identifier for the recipient's account.\n\n**Applicable for Barclays AFT transactions only.**\nIt is mandatory for both Visa and Mastercard AFT.\n\nFor Visa, the field has a maximum length of 34 character. \nFor Mastercard, the field has a maximum length of 50 character.\n" + "description": "Identifier for the recipient's account.\nThis field is applicable for AFT transactions.\n" }, "accountType": { "type": "string", "maxLength": 2, - "description": "Identifies the recipient's account type.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is mandatory for Mastercard and not applicable for Visa AFT.\n\nValid values are:\n - `00` for Other\n - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN)\n - `02` for International Bank Account Number (IBAN)\n - `03` for Card Account\n - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code\n" + "description": "Identifies the recipient's account type.\nThis field is applicable for AFT transactions.\n\nValid values are:\n - `00` for Other\n - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN)\n - `02` for International Bank Account Number (IBAN)\n - `03` for Card Account\n - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code\n" }, "firstName": { "type": "string", "maxLength": 35, - "description": "First name of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThe field is mandatory for both Visa and Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nFor Mastercard, the field has a maximum length of 35 characters. \nValues exceeding the above limits will be truncated.\n" - }, - "lastName": { - "type": "string", - "maxLength": 35, - "description": "Last name of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is optional for both Visa and Mastercard AFT.\n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nFor Mastercard, the field has a maximum length of 35 characters. \nValues exceeding these limits will be truncated.\n" + "description": "First name of the recipient.\nThis field is applicable for AFT transactions. \n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" }, "middleName": { "type": "string", "maxLength": 30, - "description": "Middle name of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is optional for both Visa and Mastercard AFT. \n\nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays.\n\nFor Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. \nFor Mastercard, the field has a maximum length of 1 character. \nValues exceeding these limits will be truncated.\n" + "description": "Middle name of the recipient.\nThis field is applicable for AFT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" + }, + "lastName": { + "type": "string", + "maxLength": 35, + "description": "Last name of the recipient.\nThis field is applicable for AFT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.\n" }, "address1": { "type": "string", "maxLength": 50, - "description": "The street address of the recipient\n \n**Applicable for Barclays AFT transactions only.**\nThis field is mandatory for Mastercard and not applicable for Visa AFT.\n \nOnly alpha numeric values are supported. \nSpecial characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. \n \nThe field has a maximum length of 50 characters. \nValues exceeding these limits will be truncated.\n" + "description": "The street address of the recipient\nThis field is applicable for AFT and OCT transactions.\n\nOnly alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. \n" }, "postalCode": { "type": "string", @@ -2490,7 +2490,7 @@ "country": { "type": "string", "maxLength": 2, - "description": "The country associated with the address of the recipient.\n\n**Applicable for Barclays AFT transactions only.**\nThis field is mandatory for Mastercard and not applicable for Visa AFT.\n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" + "description": "The country associated with the address of the recipient.\nThis field is applicable for AFT and OCT transactions.\n\nMust be a two character ISO country code. \nFor example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)\n" }, "dateOfBirth": { "type": "string", @@ -8768,9 +8768,12 @@ }, "recipientInformation": { "firstName": "Ben", - "middleName": "A", + "middleName": "Ann", "lastName": "Stokes", - "accountId": "4929421234600821" + "accountId": "4929421234600821", + "accountType": "03", + "address1": "1 High Street", + "country": "GB" } } }, @@ -10642,7 +10645,8 @@ "operationId": "incrementAuth", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -11187,7 +11191,8 @@ "operationId": "authReversal", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -11774,7 +11779,8 @@ "x-devcenter-metaData": { "categoryTag": "Payments", "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", - "isClientSideApi": true + "isClientSideApi": true, + "isMLEsupported": true }, "parameters": [ { @@ -12285,7 +12291,8 @@ "operationId": "capturePayment", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -15177,7 +15184,8 @@ "operationId": "refundPayment", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -17844,7 +17852,8 @@ "operationId": "refundCapture", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -20489,7 +20498,8 @@ "operationId": "createCredit", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -24032,7 +24042,8 @@ "operationId": "voidPayment", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -24497,7 +24508,8 @@ "operationId": "voidCapture", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -24891,7 +24903,8 @@ "operationId": "voidRefund", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -25285,7 +25298,8 @@ "operationId": "voidCredit", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -25679,7 +25693,8 @@ "operationId": "mitVoid", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "x-example": { "example0": { @@ -26903,7 +26918,8 @@ "categoryTag": "Payments", "testingTriggers": "https://developer.cybersource.com/hello-world/testing-guide.html", "responseCodes": "https://developer.cybersource.com/api/reference/response-codes.html", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -27323,7 +27339,8 @@ "operationId": "billingAgreementsRegistration", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", + "isMLEsupported": true }, "parameters": [ { @@ -28485,7 +28502,8 @@ "operationId": "billingAgreementsDeRegistration", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", + "isMLEsupported": true }, "parameters": [ { @@ -29825,7 +29843,8 @@ "operationId": "billingAgreementsIntimation", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", + "isMLEsupported": true }, "parameters": [ { @@ -30477,7 +30496,8 @@ "operationId": "createOrderRequest", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -31028,7 +31048,8 @@ "operationId": "CreateSessionRequest", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -32173,7 +32194,8 @@ "operationId": "UpdateSessionReq", "x-devcenter-metaData": { "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html", + "isMLEsupported": true }, "parameters": [ { @@ -63467,6 +63489,10 @@ "type": "object", "description": "This is a server-to-server API request to generate the capture context that can be used to initiate instance of microform on a acceptance page. The capture context is a digitally signed JWT that provides authentication, one-time keys, and the target origin to the Microform Integration application. ", "properties": { + "clientVersion": { + "type": "string", + "description": "Specify the version of Microform that you want to use.\n" + }, "targetOrigins": { "type": "array", "items": { @@ -63480,11 +63506,7 @@ "items": { "type": "string" }, - "description": "The list of card networks you want to use for this Microform transaction.\n\nMicroform currently supports the following card networks:\n- VISA\n- MAESTRO\n- MASTERCARD\n- AMEX\n- DISCOVER\n- DINERSCLUB\n- JCB\n- CUP\n- CARTESBANCAIRES\n- CARNET\n" - }, - "clientVersion": { - "type": "string", - "description": "Specify the version of Microform that you want to use.\n" + "description": "The list of card networks you want to use for this Microform transaction.\n\nMicroform currently supports the following card networks:\n- VISA\n- MASTERCARD\n- AMEX\n- CARNET\n- CARTESBANCAIRES\n- CUP\n- DINERSCLUB\n- DISCOVER\n- EFTPOS\n- ELO\n- JCB\n- JCREW\n- MADA\n- MAESTRO\n- MEEZA\n" }, "checkoutApiInitialization": { "type": "object", @@ -63541,43 +63563,53 @@ "example0": { "summary": "Generate Capture Context simple", "value": { + "clientVersion": "v2", "targetOrigins": [ "https://www.test.com" ], "allowedCardNetworks": [ "VISA", - "MAESTRO", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", + "DISCOVER", + "EFTPOS", + "ELO", "JCB", - "CUP", - "CARTESBANCAIRES", - "CARNET" - ], - "clientVersion": "v2" + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" + ] } }, "example1": { "summary": "Generate Capture Context With Checkout API", "value": { + "clientVersion": "v2", "targetOrigins": [ "https://www.test.com" ], "allowedCardNetworks": [ "VISA", - "MAESTRO", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", + "DISCOVER", + "EFTPOS", + "ELO", "JCB", - "CUP", - "CARTESBANCAIRES", - "CARNET" + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], - "clientVersion": "v2", "checkoutApiInitialization": { "profile_id": "12341234-1234-1234-1234-123412341234", "access_key": "acce55acce55acce55acce55acce5500", @@ -67240,7 +67272,8 @@ ], "x-devcenter-metaData": { "categoryTag": "Payer_Authentication", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html", + "isMLEsupported": true }, "parameters": [ { @@ -67699,7 +67732,8 @@ ], "x-devcenter-metaData": { "categoryTag": "Payer_Authentication", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html", + "isMLEsupported": true }, "parameters": [ { @@ -70213,7 +70247,8 @@ "operationId": "validateAuthenticationResults", "x-devcenter-metaData": { "categoryTag": "Payer_Authentication", - "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html" + "developerGuides": "https://developer.cybersource.com/docs/cybs/en-us/payer-authentication/developer/all/rest/payer-auth/pa-about-guide.html", + "isMLEsupported": true }, "parameters": [ { @@ -73383,14 +73418,11 @@ "type": "array", "items": { "type": "object", - "required": [ - "unitPrice" - ], "properties": { "unitPrice": { "type": "string", "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + "description": "Per-item price of the product. If line items are present in the request, the unit price is a mandatory field.\n" }, "allowedExportCountries": { "type": "array", @@ -74088,7 +74120,8 @@ ], "operationId": "octCreatePayment", "x-devcenter-metaData": { - "categoryTag": "Payouts" + "categoryTag": "Payouts", + "isMLEsupported": true }, "parameters": [ { @@ -75199,7 +75232,8 @@ "firstLevelApiLifeCycle": "hidden", "secondLevelApiLifeCycle": "hidden", "apiLifeCycle": "hidden", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payouts/Introduction.html" + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payouts/Introduction.html", + "isMLEsupported": true }, "parameters": [ { @@ -82016,7 +82050,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "authorizationOptions": { "type": "object", @@ -82136,6 +82170,45 @@ "type": "string", "maxLength": 25, "description": "Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + }, + "businessNameEnglish": { + "type": "string", + "maxLength": 25, + "description": "Business name in English characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + }, + "bonuses": { + "type": "array", + "description": "An array of objects, each of which contains a bonus month and bonus amount. \nLength of bonuses array is equal to the number of bonuses. Max length = 6. \nIn case of bonus month and amount not specified, null objects to be returned in the array.\nExample: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null]\n", + "items": { + "type": "object", + "properties": { + "month": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12.\n" + }, + "amount": { + "type": "string", + "maxLength": 8, + "description": "This value contains the bonus amount of the first month. Maximum value without decimal 99999999.\n" + } + } + } + }, + "firstBillingMonth": { + "type": "string", + "maxLength": 2, + "description": "Billing month in MM format.\n" + }, + "numberOfInstallments": { + "type": "string", + "maximum": 99, + "description": "Number of Installments.\n" + }, + "preApprovalType": { + "type": "string", + "maxLength": 1, + "description": "This will contain the details of the kind of transaction that has been processe. Used only for Japan.\nPossible Values:\n- 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft)\n- 1 = Negative card authorization (authorization-only with 0 or 1 amount)\n- 2 = Reservation of authorization (authorization-only with amount)\n- 3 = Cancel transaction\n- 4 = Merchant-initiated reversal/refund transactions\n- 5 = Cancel reservation of authorization\n- 6 = Post authorization\n" } } } @@ -82876,7 +82949,21 @@ "paymentMethod": "1", "terminalId": "1234567890123", "businessName": "shop_local", - "businessNameKatakana": "shop_katakana" + "businessNameKatakana": "shop_katakana", + "businessNameEnglish": "shop_local_english", + "bonuses": [ + { + "month": "07", + "amount": "999" + }, + { + "month": "08", + "amount": "9889" + } + ], + "firstBillingMonth": "06", + "numberOfInstallments": "99", + "preApprovalType": "1" } }, "processorInformation": { @@ -83687,7 +83774,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "commerceIndicator": { "type": "string", @@ -84534,7 +84621,7 @@ }, "businessApplicationId": { "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n" + "description": "Required for AFT and OCT transactions.\n\nGiven below is a list of all the BAI values available. However, the processors may support only few specific BAI values.\n\n- AA : Account-to-account \n- BB : Supplier Payments\n- BI : Bank-Initiated P2P Money Transfer\n- BP : Non-Card Bill Pay/Bill Pay\n- CD : Cash Deposit\n- CP : Credit card Bill Payment\n- FD : Funds disbursement \n- FT : Funds transfer\n- GD : Government Disbursement\n- GP : Gambling payout (non-online gambling)\n- LO : Loyalty credits and rebates\n- MD : Merchant Settlement\n- OG : Online Gambling Payout\n- PD : Payroll and pension disbursement\n- PP : Person-to-Person or Peer-to-Peer\n- TU : Top up, prepaid load\n- WT : Digital wallet \n" }, "commerceIndicator": { "type": "string", @@ -99862,11 +99949,9 @@ "description": "*NEW* Accuity is the original validation service that checks the account/routing number for formatting issues. Used by WF and set to \"Yes\" unless told otherwise" }, "accuityCheckType": { - "enum": [ - "ALWAYS" - ], + "type": "string", "default": "ALWAYS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- ALWAYS" }, "setCompletedState": { "type": "boolean", @@ -99917,18 +100002,14 @@ "description": "*NEW* This is used by the EBC2 application" }, "settlementMethod": { - "enum": [ - "BEST_GUESS" - ], + "type": "string", "default": "BEST_GUESS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- BEST_GUESS" }, "verificationLevel": { - "enum": [ - "VALIDATION" - ], + "type": "string", "default": "VALIDATION", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- VALIDATION" }, "setCompletedState": { "type": "boolean", @@ -100051,11 +100132,9 @@ "description": "Name of the payment processor. Example - \"wellsfargoach\"", "properties": { "avsVersion": { - "enum": [ - "2" - ], + "type": "string", "default": "2", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- 2" } } } @@ -100082,11 +100161,9 @@ "description": "*NEW* Taken from Addendum Agreement Column in boarding form." }, "avsCalculatedResponseBehavior": { - "enum": [ - "continue" - ], + "type": "string", "default": "continue", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- continue" }, "avsAdditionalId": { "type": "string", @@ -100102,11 +100179,8 @@ "description": "*NEW* Also known as the AVS Gateway Entity ID." }, "avsResultMode": { - "enum": [ - "FULL_RESPONSE", - "LOGIC_BOX" - ], - "description": "*NEW*" + "type": "string", + "description": "*NEW* \nPossible values:\n- FULL_RESPONSE\n- LOGIC_BOX" }, "enableAvsTokenCreation": { "type": "boolean", @@ -102144,6 +102218,201 @@ "parentProfileId": { "type": "string", "description": "Specify the Vault ID to which transacting MID needs to be assigned.Provide Vault ID as seen on EBC Vault management page. If not provided , transacting MID will be assigned to the existing default Vault at merchant's level. If there are no Vaults at merchant level , a new Vault will be created and transacting MID will be assigned to it." + }, + "vault": { + "type": "object", + "properties": { + "defaultTokenType": { + "type": "string", + "description": "Default token type to be used.\nPossible Values: \n - 'CUSTOMER'\n - 'PAYMENT_INSTRUMENT'\n - 'INSTRUMENT_IDENTIFIER'\n", + "example": "CUSTOMER" + }, + "location": { + "type": "string", + "description": "Location where the vault will be stored.\n\nUse 'IDC' (the Indian Data Centre) when merchant is storing token data in India or 'GDC' (the Global Data Centre) for all other cases.\n\nPossible Values: \n - 'IDC'\n - 'GDC'\n", + "example": "GDC" + }, + "tokenFormats": { + "title": "tmsTokenFormats", + "type": "object", + "properties": { + "customer": { + "type": "string", + "description": "Format for customer tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "paymentInstrument": { + "type": "string", + "description": "Format for payment instrument tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "instrumentIdentifierCard": { + "type": "string", + "description": "Format for card based instrument identifier tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '16_DIGIT_LAST_4'\n - '19_DIGIT'\n - '19_DIGIT_LAST_4'\n - '22_DIGIT'\n - '32_HEX'\n" + }, + "instrumentIdentifierBankAccount": { + "type": "string", + "description": "Format for bank account based instrument identifier tokens.\n\nPossible Values: \n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n" + } + } + }, + "tokenPermissions": { + "title": "TokenPermissions", + "type": "object", + "properties": { + "create": { + "type": "boolean", + "description": "Indicates if tokens may be created" + }, + "read": { + "type": "boolean", + "description": "Indicates if tokens may be read" + }, + "update": { + "type": "boolean", + "description": "Indicates if tokens may be updated" + }, + "delete": { + "type": "boolean", + "description": "Indicates if tokens may be deleted" + } + } + }, + "sensitivePrivileges": { + "title": "tmsSensitivePrivileges", + "type": "object", + "properties": { + "cardNumberMaskingFormat": { + "type": "string", + "description": "Indicates which digits of the card number will be unmasked.\n\nPossible Values: \n - 'FIRST_6_LAST_4'\n - 'LAST_4'\n - 'MASKED'\n" + } + } + }, + "nullify": { + "title": "tmsNullify", + "type": "object", + "properties": { + "instrumentIdentifierCardNumber": { + "type": "boolean", + "description": "Indicates if the card number should be nullified (i.e. not stored)" + }, + "instrumentIdentifierCardExpiration": { + "type": "boolean", + "description": "Indicates if the expiration date associated to the instrument identifier should be nullified (i.e. not stored)" + }, + "paymentInstrumentCardDetails": { + "type": "boolean", + "description": "Indicates if the card details should be nullified (i.e. not stored)" + } + } + }, + "networkTokenServices": { + "title": "tmsNetworkTokenServices", + "type": "object", + "properties": { + "notifications": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if lifecycle management (LCM) notifications are enabled" + } + } + }, + "paymentCredentials": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if Payment Credentials are enabled. If enabled, this provides access to the unredacted token and its associated cryptogram." + } + } + }, + "synchronousProvisioning": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if network tokens are provisioned synchronously (i.e. as part of the transaction flow) or asychronously (i.e. in parallel to the payment flow)\n\nNOTE: The synchronous provisioning feature is designed exclusively for aggregator merchants.\n\nDirect merchants should not enable synchronous provisioning as TMS manages the asynchronous creation of network tokens for direct clients. \n\nActivation of this feature by direct merchants will lead to latency in the authorization response.\n" + } + } + }, + "visaTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Visa card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Visa card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Visa during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"40000000082\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "relationshipId": { + "type": "string", + "description": "Relationship ID provided by visa\n\nMin Length: 1\nMax Length: 100\nExample: \"24681921-40000000082\"\n", + "minLength": 1, + "maxLength": 100 + } + } + }, + "mastercardDigitalEnablementService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Mastercard card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Mastercard card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Mastercard during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"50162233570\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + } + } + }, + "americanExpressTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the American Express card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the American Express card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by American Express during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"12345678912\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "seNumber": { + "type": "string", + "minLength": 10, + "maxLength": 10, + "pattern": "^[0-9]{11}\\z$", + "description": "SE Number assigned by American Express for the merchant's account\n\nPattern: \"^[0-9]{11}\\\\z$\"\nMin Length: 10\nMax Length: 10\nExample: \"9876543212\"\n" + } + } + } + } + } + } } } } @@ -105956,6 +106225,89 @@ } } } + }, + "example11": { + "summary": "Merchant Boarding with TMS and Network Token Enablement", + "value": { + "organizationInformation": { + "parentOrganizationId": "apitester00", + "type": "MERCHANT", + "configurable": "true", + "businessInformation": { + "name": "StuartWickedFastEatz", + "address": { + "country": "US", + "address1": "123456 SandMarket", + "locality": "ORMOND BEACH", + "administrativeArea": "FL", + "postalCode": "32176" + }, + "websiteUrl": "https://www.NetworkTokenMerchant.com", + "businessContact": { + "firstName": "Token", + "lastName": "Man", + "phoneNumber": "6574567813", + "email": "networktokenman@visa.com" + } + } + }, + "productInformation": { + "selectedProducts": { + "commerceSolutions": { + "tokenManagement": { + "subscriptionInformation": { + "enabled": true + }, + "configurationInformation": { + "configurations": { + "vault": { + "defaultTokenType": "CUSTOMER", + "location": "GDC", + "tokenFormats": { + "customer": "32_HEX", + "paymentInstrument": "32_HEX", + "instrumentIdentifierCard": "19_DIGIT_LAST_4", + "instrumentIdentifierBankAccount": "32_HEX" + }, + "sensitivePrivileges": { + "cardNumberMaskingFormat": "FIRST_6_LAST_4" + }, + "networkTokenServices": { + "visaTokenService": { + "enableService": true, + "enableTransactionalTokens": true, + "tokenRequestorId": "40000000082", + "relationshipId": "24681921-40000000082" + }, + "mastercardDigitalEnablementService": { + "enableService": true, + "enableTransactionalTokens": true, + "tokenRequestorId": "50162233570" + }, + "americanExpressTokenService": { + "enableService": true, + "enableTransactionalTokens": true, + "tokenRequestorId": "12345678912", + "seNumber": "9876543212" + }, + "notifications": { + "enabled": true + }, + "paymentCredentials": { + "enabled": true + }, + "synchronousProvisioning": { + "enabled": false + } + } + } + } + } + } + } + } + } + } } } } @@ -108025,11 +108377,9 @@ "description": "*NEW* Accuity is the original validation service that checks the account/routing number for formatting issues. Used by WF and set to \"Yes\" unless told otherwise" }, "accuityCheckType": { - "enum": [ - "ALWAYS" - ], + "type": "string", "default": "ALWAYS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- ALWAYS" }, "setCompletedState": { "type": "boolean", @@ -108080,18 +108430,14 @@ "description": "*NEW* This is used by the EBC2 application" }, "settlementMethod": { - "enum": [ - "BEST_GUESS" - ], + "type": "string", "default": "BEST_GUESS", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- BEST_GUESS" }, "verificationLevel": { - "enum": [ - "VALIDATION" - ], + "type": "string", "default": "VALIDATION", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- VALIDATION" }, "setCompletedState": { "type": "boolean", @@ -108214,11 +108560,9 @@ "description": "Name of the payment processor. Example - \"wellsfargoach\"", "properties": { "avsVersion": { - "enum": [ - "2" - ], + "type": "string", "default": "2", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- 2" } } } @@ -108245,11 +108589,9 @@ "description": "*NEW* Taken from Addendum Agreement Column in boarding form." }, "avsCalculatedResponseBehavior": { - "enum": [ - "continue" - ], + "type": "string", "default": "continue", - "description": "*NEW*" + "description": "*NEW* \nPossible values:\n- continue" }, "avsAdditionalId": { "type": "string", @@ -108265,11 +108607,8 @@ "description": "*NEW* Also known as the AVS Gateway Entity ID." }, "avsResultMode": { - "enum": [ - "FULL_RESPONSE", - "LOGIC_BOX" - ], - "description": "*NEW*" + "type": "string", + "description": "*NEW* \nPossible values:\n- FULL_RESPONSE\n- LOGIC_BOX" }, "enableAvsTokenCreation": { "type": "boolean", @@ -110307,6 +110646,201 @@ "parentProfileId": { "type": "string", "description": "Specify the Vault ID to which transacting MID needs to be assigned.Provide Vault ID as seen on EBC Vault management page. If not provided , transacting MID will be assigned to the existing default Vault at merchant's level. If there are no Vaults at merchant level , a new Vault will be created and transacting MID will be assigned to it." + }, + "vault": { + "type": "object", + "properties": { + "defaultTokenType": { + "type": "string", + "description": "Default token type to be used.\nPossible Values: \n - 'CUSTOMER'\n - 'PAYMENT_INSTRUMENT'\n - 'INSTRUMENT_IDENTIFIER'\n", + "example": "CUSTOMER" + }, + "location": { + "type": "string", + "description": "Location where the vault will be stored.\n\nUse 'IDC' (the Indian Data Centre) when merchant is storing token data in India or 'GDC' (the Global Data Centre) for all other cases.\n\nPossible Values: \n - 'IDC'\n - 'GDC'\n", + "example": "GDC" + }, + "tokenFormats": { + "title": "tmsTokenFormats", + "type": "object", + "properties": { + "customer": { + "type": "string", + "description": "Format for customer tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "paymentInstrument": { + "type": "string", + "description": "Format for payment instrument tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n", + "example": "32_HEX" + }, + "instrumentIdentifierCard": { + "type": "string", + "description": "Format for card based instrument identifier tokens.\n\nPossible Values:\n - '16_DIGIT'\n - '16_DIGIT_LAST_4'\n - '19_DIGIT'\n - '19_DIGIT_LAST_4'\n - '22_DIGIT'\n - '32_HEX'\n" + }, + "instrumentIdentifierBankAccount": { + "type": "string", + "description": "Format for bank account based instrument identifier tokens.\n\nPossible Values: \n - '16_DIGIT'\n - '19_DIGIT'\n - '22_DIGIT'\n - '32_HEX'\n" + } + } + }, + "tokenPermissions": { + "title": "TokenPermissions", + "type": "object", + "properties": { + "create": { + "type": "boolean", + "description": "Indicates if tokens may be created" + }, + "read": { + "type": "boolean", + "description": "Indicates if tokens may be read" + }, + "update": { + "type": "boolean", + "description": "Indicates if tokens may be updated" + }, + "delete": { + "type": "boolean", + "description": "Indicates if tokens may be deleted" + } + } + }, + "sensitivePrivileges": { + "title": "tmsSensitivePrivileges", + "type": "object", + "properties": { + "cardNumberMaskingFormat": { + "type": "string", + "description": "Indicates which digits of the card number will be unmasked.\n\nPossible Values: \n - 'FIRST_6_LAST_4'\n - 'LAST_4'\n - 'MASKED'\n" + } + } + }, + "nullify": { + "title": "tmsNullify", + "type": "object", + "properties": { + "instrumentIdentifierCardNumber": { + "type": "boolean", + "description": "Indicates if the card number should be nullified (i.e. not stored)" + }, + "instrumentIdentifierCardExpiration": { + "type": "boolean", + "description": "Indicates if the expiration date associated to the instrument identifier should be nullified (i.e. not stored)" + }, + "paymentInstrumentCardDetails": { + "type": "boolean", + "description": "Indicates if the card details should be nullified (i.e. not stored)" + } + } + }, + "networkTokenServices": { + "title": "tmsNetworkTokenServices", + "type": "object", + "properties": { + "notifications": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if lifecycle management (LCM) notifications are enabled" + } + } + }, + "paymentCredentials": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if Payment Credentials are enabled. If enabled, this provides access to the unredacted token and its associated cryptogram." + } + } + }, + "synchronousProvisioning": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates if network tokens are provisioned synchronously (i.e. as part of the transaction flow) or asychronously (i.e. in parallel to the payment flow)\n\nNOTE: The synchronous provisioning feature is designed exclusively for aggregator merchants.\n\nDirect merchants should not enable synchronous provisioning as TMS manages the asynchronous creation of network tokens for direct clients. \n\nActivation of this feature by direct merchants will lead to latency in the authorization response.\n" + } + } + }, + "visaTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Visa card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Visa card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Visa during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"40000000082\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "relationshipId": { + "type": "string", + "description": "Relationship ID provided by visa\n\nMin Length: 1\nMax Length: 100\nExample: \"24681921-40000000082\"\n", + "minLength": 1, + "maxLength": 100 + } + } + }, + "mastercardDigitalEnablementService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the Mastercard card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the Mastercard card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by Mastercard during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"50162233570\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + } + } + }, + "americanExpressTokenService": { + "type": "object", + "properties": { + "enableService": { + "type": "boolean", + "description": "Indicates if the service for network tokens for the American Express card association are enabled" + }, + "enableTransactionalTokens": { + "type": "boolean", + "description": "Indicates if network tokens for the American Express card association are enabled for transactions" + }, + "tokenRequestorId": { + "type": "string", + "description": "Token Requestor ID provided by American Express during the registration process for the Tokenization Service\n\nPattern: ^[0-9]{11}\\\\z$\"\nMin Length: 11\nMax Length: 11\nExample: \"12345678912\"\n", + "pattern": "^[0-9]{11}\\\\z$\"", + "minLength": 11, + "maxLength": 11 + }, + "seNumber": { + "type": "string", + "minLength": 10, + "maxLength": 10, + "pattern": "^[0-9]{11}\\z$", + "description": "SE Number assigned by American Express for the merchant's account\n\nPattern: \"^[0-9]{11}\\\\z$\"\nMin Length: 10\nMax Length: 10\nExample: \"9876543212\"\n" + } + } + } + } + } + } } } } @@ -114779,6 +115313,12 @@ "schema": { "type": "object", "properties": { + "clientVersion": { + "type": "string", + "example": 0.22, + "maxLength": 60, + "description": "Specify the version of Unified Checkout that you want to use." + }, "targetOrigins": { "type": "array", "items": { @@ -114787,12 +115327,6 @@ }, "description": "The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Unified Checkout is defined by the scheme (protocol), hostname (domain) and port number (if used). \n\nYou must use https://hostname (unless you use http://localhost)\nWildcards are NOT supported. Ensure that subdomains are included.\nAny valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc)\n\nExamples:\n - https://example.com\n - https://subdomain.example.com\n - https://example.com:8080

\n\nIf you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example:\n\n targetOrigins: [\n \"https://example.com\",\n \"https://basket.example.com\",\n \"https://ecom.example.com\"\n ]\n" }, - "clientVersion": { - "type": "string", - "example": 0.22, - "maxLength": 60, - "description": "Specify the version of Unified Checkout that you want to use." - }, "allowedCardNetworks": { "type": "array", "items": { @@ -114803,7 +115337,7 @@ "MASTERCARD" ] }, - "description": "The list of card networks you want to use for this Unified Checkout transaction.\n\nUnified Checkout currently supports the following card networks:\n - VISA\n - MASTERCARD\n - AMEX\n - DISCOVER\n - DINERSCLUB\n - JCB\n" + "description": "The list of card networks you want to use for this Unified Checkout transaction.\n\nUnified Checkout currently supports the following card networks:\n - VISA\n - MASTERCARD\n - AMEX\n - CARNET\n - CARTESBANCAIRES\n - CUP\n - DINERSCLUB\n - DISCOVER\n - EFTPOS\n - ELO\n - JCB\n - JCREW\n - MADA\n - MAESTRO\n - MEEZA\n" }, "allowedPaymentTypes": { "type": "array", @@ -115190,18 +115724,26 @@ "example0": { "summary": "Generate Unified Checkout Capture Context", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "VISA", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "PANENTRY", @@ -115233,17 +115775,26 @@ "example1": { "summary": "Generate Unified Checkout Capture Context with Checkout API", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "PANENTRY", @@ -115285,17 +115836,26 @@ "example3": { "summary": "Generate Unified Checkout Capture Context passing Billing & Shipping", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "PANENTRY", @@ -115373,17 +115933,26 @@ "example4": { "summary": "Generate Capture Context For Click To Pay Drop-In UI", "value": { + "clientVersion": "0.22", "targetOrigins": [ "https://yourCheckoutPage.com" ], - "clientVersion": "0.22", "allowedCardNetworks": [ "VISA", "MASTERCARD", "AMEX", - "DISCOVER", + "CARNET", + "CARTESBANCAIRES", + "CUP", "DINERSCLUB", - "JCB" + "DISCOVER", + "EFTPOS", + "ELO", + "JCB", + "JCREW", + "MADA", + "MAESTRO", + "MEEZA" ], "allowedPaymentTypes": [ "CLICKTOPAY" diff --git a/lib/cybersource_rest_client.rb b/lib/cybersource_rest_client.rb index 514357ef..c718dcbd 100644 --- a/lib/cybersource_rest_client.rb +++ b/lib/cybersource_rest_client.rb @@ -103,6 +103,7 @@ require 'cybersource_rest_client/models/commerce_solutions_products_token_management' require 'cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information' require 'cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations' +require 'cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault' require 'cybersource_rest_client/models/create_adhoc_report_request' require 'cybersource_rest_client/models/create_billing_agreement' require 'cybersource_rest_client/models/create_bin_lookup_request' @@ -797,6 +798,7 @@ require 'cybersource_rest_client/models/ptsv2payments_processing_information_capture_options' require 'cybersource_rest_client/models/ptsv2payments_processing_information_electronic_benefits_transfer' require 'cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options' +require 'cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses' require 'cybersource_rest_client/models/ptsv2payments_processing_information_loan_options' require 'cybersource_rest_client/models/ptsv2payments_processing_information_purchase_options' require 'cybersource_rest_client/models/ptsv2payments_processing_information_recurring_options' @@ -1168,8 +1170,18 @@ require 'cybersource_rest_client/models/tms_embedded_instrument_identifier__links_self' require 'cybersource_rest_client/models/tms_embedded_instrument_identifier_metadata' require 'cybersource_rest_client/models/tms_embedded_instrument_identifier_processing_information' +require 'cybersource_rest_client/models/tms_network_token_services' +require 'cybersource_rest_client/models/tms_network_token_services_american_express_token_service' +require 'cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service' +require 'cybersource_rest_client/models/tms_network_token_services_notifications' +require 'cybersource_rest_client/models/tms_network_token_services_payment_credentials' +require 'cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning' +require 'cybersource_rest_client/models/tms_network_token_services_visa_token_service' +require 'cybersource_rest_client/models/tms_nullify' require 'cybersource_rest_client/models/tms_payment_instrument_processing_info' require 'cybersource_rest_client/models/tms_payment_instrument_processing_info_bank_transfer_options' +require 'cybersource_rest_client/models/tms_sensitive_privileges' +require 'cybersource_rest_client/models/tms_token_formats' require 'cybersource_rest_client/models/tmsv2_tokenized_card' require 'cybersource_rest_client/models/tmsv2_tokenized_card_card' require 'cybersource_rest_client/models/tmsv2_tokenized_card_metadata' @@ -1225,6 +1237,7 @@ require 'cybersource_rest_client/models/tmsv2customers_merchant_defined_information' require 'cybersource_rest_client/models/tmsv2customers_metadata' require 'cybersource_rest_client/models/tmsv2customers_object_information' +require 'cybersource_rest_client/models/token_permissions' require 'cybersource_rest_client/models/tss_v2_get_emv_tags200_response' require 'cybersource_rest_client/models/tss_v2_get_emv_tags200_response_emv_tag_breakdown_list' require 'cybersource_rest_client/models/tss_v2_post_emv_tags200_response' diff --git a/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb b/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb index ed023e18..c0352251 100644 --- a/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb +++ b/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb @@ -16,24 +16,29 @@ class CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurat # Specify the Vault ID to which transacting MID needs to be assigned.Provide Vault ID as seen on EBC Vault management page. If not provided , transacting MID will be assigned to the existing default Vault at merchant's level. If there are no Vaults at merchant level , a new Vault will be created and transacting MID will be assigned to it. attr_accessor :parent_profile_id + attr_accessor :vault + # Attribute mapping from ruby-style variable name to JSON key. def self.attribute_map { - :'parent_profile_id' => :'parentProfileId' + :'parent_profile_id' => :'parentProfileId', + :'vault' => :'vault' } end # Attribute mapping from JSON key to ruby-style variable name. def self.json_map { - :'parent_profile_id' => :'parent_profile_id' + :'parent_profile_id' => :'parent_profile_id', + :'vault' => :'vault' } end # Attribute type mapping. def self.swagger_types { - :'parent_profile_id' => :'String' + :'parent_profile_id' => :'String', + :'vault' => :'CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault' } end @@ -48,6 +53,10 @@ def initialize(attributes = {}) if attributes.has_key?(:'parentProfileId') self.parent_profile_id = attributes[:'parentProfileId'] end + + if attributes.has_key?(:'vault') + self.vault = attributes[:'vault'] + end end # Show invalid properties with the reasons. Usually used together with valid? @@ -68,7 +77,8 @@ def valid? def ==(o) return true if self.equal?(o) self.class == o.class && - parent_profile_id == o.parent_profile_id + parent_profile_id == o.parent_profile_id && + vault == o.vault end # @see the `==` method @@ -80,7 +90,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [parent_profile_id].hash + [parent_profile_id, vault].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault.rb b/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault.rb new file mode 100644 index 00000000..61ed3c83 --- /dev/null +++ b/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault.rb @@ -0,0 +1,251 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault + # Default token type to be used. Possible Values: - 'CUSTOMER' - 'PAYMENT_INSTRUMENT' - 'INSTRUMENT_IDENTIFIER' + attr_accessor :default_token_type + + # Location where the vault will be stored. Use 'IDC' (the Indian Data Centre) when merchant is storing token data in India or 'GDC' (the Global Data Centre) for all other cases. Possible Values: - 'IDC' - 'GDC' + attr_accessor :location + + attr_accessor :token_formats + + attr_accessor :token_permissions + + attr_accessor :sensitive_privileges + + attr_accessor :nullify + + attr_accessor :network_token_services + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'default_token_type' => :'defaultTokenType', + :'location' => :'location', + :'token_formats' => :'tokenFormats', + :'token_permissions' => :'tokenPermissions', + :'sensitive_privileges' => :'sensitivePrivileges', + :'nullify' => :'nullify', + :'network_token_services' => :'networkTokenServices' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'default_token_type' => :'default_token_type', + :'location' => :'location', + :'token_formats' => :'token_formats', + :'token_permissions' => :'token_permissions', + :'sensitive_privileges' => :'sensitive_privileges', + :'nullify' => :'nullify', + :'network_token_services' => :'network_token_services' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'default_token_type' => :'String', + :'location' => :'String', + :'token_formats' => :'TmsTokenFormats', + :'token_permissions' => :'TokenPermissions', + :'sensitive_privileges' => :'TmsSensitivePrivileges', + :'nullify' => :'TmsNullify', + :'network_token_services' => :'TmsNetworkTokenServices' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'defaultTokenType') + self.default_token_type = attributes[:'defaultTokenType'] + end + + if attributes.has_key?(:'location') + self.location = attributes[:'location'] + end + + if attributes.has_key?(:'tokenFormats') + self.token_formats = attributes[:'tokenFormats'] + end + + if attributes.has_key?(:'tokenPermissions') + self.token_permissions = attributes[:'tokenPermissions'] + end + + if attributes.has_key?(:'sensitivePrivileges') + self.sensitive_privileges = attributes[:'sensitivePrivileges'] + end + + if attributes.has_key?(:'nullify') + self.nullify = attributes[:'nullify'] + end + + if attributes.has_key?(:'networkTokenServices') + self.network_token_services = attributes[:'networkTokenServices'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + default_token_type == o.default_token_type && + location == o.location && + token_formats == o.token_formats && + token_permissions == o.token_permissions && + sensitive_privileges == o.sensitive_privileges && + nullify == o.nullify && + network_token_services == o.network_token_services + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [default_token_type, location, token_formats, token_permissions, sensitive_privileges, nullify, network_token_services].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb b/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb index e29103f7..babeec56 100644 --- a/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb +++ b/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb @@ -26,10 +26,10 @@ class ECheckConfigCommonInternalOnlyProcessors # *NEW* This is used by the EBC2 application attr_accessor :portal_supported_paytypes - # *NEW* + # *NEW* Possible values: - BEST_GUESS attr_accessor :settlement_method - # *NEW* + # *NEW* Possible values: - VALIDATION attr_accessor :verification_level # *Moved* When set to Yes we will automatically update transactions to a completed status X-number of days after the transaction comes through; if no failure notification is received. When set to No means we will not update transaction status in this manner. For BAMS/Bank of America merchants, they should be set to No unless we are explicitly asked to set a merchant to YES. @@ -68,8 +68,8 @@ def self.swagger_types :'terminal_id' => :'String', :'enable15an_transaction_reference_number' => :'BOOLEAN', :'portal_supported_paytypes' => :'String', - :'settlement_method' => :'Object', - :'verification_level' => :'Object', + :'settlement_method' => :'String', + :'verification_level' => :'String', :'set_completed_state' => :'BOOLEAN' } end @@ -104,10 +104,14 @@ def initialize(attributes = {}) if attributes.has_key?(:'settlementMethod') self.settlement_method = attributes[:'settlementMethod'] + else + self.settlement_method = 'BEST_GUESS' end if attributes.has_key?(:'verificationLevel') self.verification_level = attributes[:'verificationLevel'] + else + self.verification_level = 'VALIDATION' end if attributes.has_key?(:'setCompletedState') diff --git a/lib/cybersource_rest_client/models/e_check_config_common_processors.rb b/lib/cybersource_rest_client/models/e_check_config_common_processors.rb index 6d35f8e0..064916b9 100644 --- a/lib/cybersource_rest_client/models/e_check_config_common_processors.rb +++ b/lib/cybersource_rest_client/models/e_check_config_common_processors.rb @@ -26,7 +26,7 @@ class ECheckConfigCommonProcessors # *NEW* Accuity is the original validation service that checks the account/routing number for formatting issues. Used by WF and set to \"Yes\" unless told otherwise attr_accessor :enable_accuity_for_avs - # *NEW* + # *NEW* Possible values: - ALWAYS attr_accessor :accuity_check_type # *Moved* When set to Yes we will automatically update transactions to a completed status X-number of days after the transaction comes through; if no failure notification is received. When set to No means we will not update transaction status in this manner. For BAMS/Bank of America merchants, they should be set to No unless we are explicitly asked to set a merchant to YES. @@ -63,7 +63,7 @@ def self.swagger_types :'company_id' => :'String', :'batch_group' => :'String', :'enable_accuity_for_avs' => :'BOOLEAN', - :'accuity_check_type' => :'Object', + :'accuity_check_type' => :'String', :'set_completed_state' => :'BOOLEAN' } end @@ -96,6 +96,8 @@ def initialize(attributes = {}) if attributes.has_key?(:'accuityCheckType') self.accuity_check_type = attributes[:'accuityCheckType'] + else + self.accuity_check_type = 'ALWAYS' end if attributes.has_key?(:'setCompletedState') diff --git a/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb b/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb index 04fdc402..04060bc6 100644 --- a/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb +++ b/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb @@ -14,7 +14,7 @@ module CyberSource # Name of the payment processor. Example - \"wellsfargoach\" class ECheckConfigFeaturesAccountValidationServiceInternalOnlyProcessors - # *NEW* + # *NEW* Possible values: - 2 attr_accessor :avs_version # Attribute mapping from ruby-style variable name to JSON key. @@ -34,7 +34,7 @@ def self.json_map # Attribute type mapping. def self.swagger_types { - :'avs_version' => :'Object' + :'avs_version' => :'String' } end @@ -48,6 +48,8 @@ def initialize(attributes = {}) if attributes.has_key?(:'avsVersion') self.avs_version = attributes[:'avsVersion'] + else + self.avs_version = '2' end end diff --git a/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb b/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb index ae3e42cc..c05c5255 100644 --- a/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb +++ b/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb @@ -23,7 +23,7 @@ class ECheckConfigFeaturesAccountValidationServiceProcessors # *NEW* Taken from Addendum Agreement Column in boarding form. attr_accessor :avs_signed_agreement - # *NEW* + # *NEW* Possible values: - continue attr_accessor :avs_calculated_response_behavior # *NEW* Also known as the Additional ID. Taken from the boarding form. @@ -35,7 +35,7 @@ class ECheckConfigFeaturesAccountValidationServiceProcessors # *NEW* Also known as the AVS Gateway Entity ID. attr_accessor :avs_entity_id - # *NEW* + # *NEW* Possible values: - FULL_RESPONSE - LOGIC_BOX attr_accessor :avs_result_mode # *NEW* Applicable if the merchant wants to run AVS on token creation requests only. @@ -77,11 +77,11 @@ def self.swagger_types :'avs_account_ownership_service' => :'BOOLEAN', :'avs_account_status_service' => :'BOOLEAN', :'avs_signed_agreement' => :'BOOLEAN', - :'avs_calculated_response_behavior' => :'Object', + :'avs_calculated_response_behavior' => :'String', :'avs_additional_id' => :'String', :'enable_avs' => :'BOOLEAN', :'avs_entity_id' => :'String', - :'avs_result_mode' => :'Object', + :'avs_result_mode' => :'String', :'enable_avs_token_creation' => :'BOOLEAN' } end @@ -108,6 +108,8 @@ def initialize(attributes = {}) if attributes.has_key?(:'avsCalculatedResponseBehavior') self.avs_calculated_response_behavior = attributes[:'avsCalculatedResponseBehavior'] + else + self.avs_calculated_response_behavior = 'continue' end if attributes.has_key?(:'avsAdditionalId') diff --git a/lib/cybersource_rest_client/models/generate_capture_context_request.rb b/lib/cybersource_rest_client/models/generate_capture_context_request.rb index dcea62bb..99da196d 100644 --- a/lib/cybersource_rest_client/models/generate_capture_context_request.rb +++ b/lib/cybersource_rest_client/models/generate_capture_context_request.rb @@ -14,23 +14,23 @@ module CyberSource # This is a server-to-server API request to generate the capture context that can be used to initiate instance of microform on a acceptance page. The capture context is a digitally signed JWT that provides authentication, one-time keys, and the target origin to the Microform Integration application. class GenerateCaptureContextRequest + # Specify the version of Microform that you want to use. + attr_accessor :client_version + # The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Microform is defined by the scheme (protocol), hostname (domain) and port number (if used). You must use https://hostname (unless you use http://localhost) Wildcards are NOT supported. Ensure that subdomains are included. Any valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc) Examples: - https://example.com - https://subdomain.example.com - https://example.com:8080

If you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example: targetOrigins: [ \"https://example.com\", \"https://basket.example.com\", \"https://ecom.example.com\" ] attr_accessor :target_origins - # The list of card networks you want to use for this Microform transaction. Microform currently supports the following card networks: - VISA - MAESTRO - MASTERCARD - AMEX - DISCOVER - DINERSCLUB - JCB - CUP - CARTESBANCAIRES - CARNET + # The list of card networks you want to use for this Microform transaction. Microform currently supports the following card networks: - VISA - MASTERCARD - AMEX - CARNET - CARTESBANCAIRES - CUP - DINERSCLUB - DISCOVER - EFTPOS - ELO - JCB - JCREW - MADA - MAESTRO - MEEZA attr_accessor :allowed_card_networks - # Specify the version of Microform that you want to use. - attr_accessor :client_version - attr_accessor :checkout_api_initialization # Attribute mapping from ruby-style variable name to JSON key. def self.attribute_map { + :'client_version' => :'clientVersion', :'target_origins' => :'targetOrigins', :'allowed_card_networks' => :'allowedCardNetworks', - :'client_version' => :'clientVersion', :'checkout_api_initialization' => :'checkoutApiInitialization' } end @@ -38,9 +38,9 @@ def self.attribute_map # Attribute mapping from JSON key to ruby-style variable name. def self.json_map { + :'client_version' => :'client_version', :'target_origins' => :'target_origins', :'allowed_card_networks' => :'allowed_card_networks', - :'client_version' => :'client_version', :'checkout_api_initialization' => :'checkout_api_initialization' } end @@ -48,9 +48,9 @@ def self.json_map # Attribute type mapping. def self.swagger_types { + :'client_version' => :'String', :'target_origins' => :'Array', :'allowed_card_networks' => :'Array', - :'client_version' => :'String', :'checkout_api_initialization' => :'Microformv2sessionsCheckoutApiInitialization' } end @@ -63,6 +63,10 @@ def initialize(attributes = {}) # convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + if attributes.has_key?(:'clientVersion') + self.client_version = attributes[:'clientVersion'] + end + if attributes.has_key?(:'targetOrigins') if (value = attributes[:'targetOrigins']).is_a?(Array) self.target_origins = value @@ -75,10 +79,6 @@ def initialize(attributes = {}) end end - if attributes.has_key?(:'clientVersion') - self.client_version = attributes[:'clientVersion'] - end - if attributes.has_key?(:'checkoutApiInitialization') self.checkout_api_initialization = attributes[:'checkoutApiInitialization'] end @@ -102,9 +102,9 @@ def valid? def ==(o) return true if self.equal?(o) self.class == o.class && + client_version == o.client_version && target_origins == o.target_origins && allowed_card_networks == o.allowed_card_networks && - client_version == o.client_version && checkout_api_initialization == o.checkout_api_initialization end @@ -117,7 +117,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [target_origins, allowed_card_networks, client_version, checkout_api_initialization].hash + [client_version, target_origins, allowed_card_networks, checkout_api_initialization].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb b/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb index 6cd3366b..71c97c64 100644 --- a/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +++ b/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb @@ -13,13 +13,13 @@ module CyberSource class GenerateUnifiedCheckoutCaptureContextRequest - # The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Unified Checkout is defined by the scheme (protocol), hostname (domain) and port number (if used). You must use https://hostname (unless you use http://localhost) Wildcards are NOT supported. Ensure that subdomains are included. Any valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc) Examples: - https://example.com - https://subdomain.example.com - https://example.com:8080

If you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example: targetOrigins: [ \"https://example.com\", \"https://basket.example.com\", \"https://ecom.example.com\" ] - attr_accessor :target_origins - # Specify the version of Unified Checkout that you want to use. attr_accessor :client_version - # The list of card networks you want to use for this Unified Checkout transaction. Unified Checkout currently supports the following card networks: - VISA - MASTERCARD - AMEX - DISCOVER - DINERSCLUB - JCB + # The [target origin](https://developer.mozilla.org/en-US/docs/Glossary/Origin) of the website on which you will be launching Unified Checkout is defined by the scheme (protocol), hostname (domain) and port number (if used). You must use https://hostname (unless you use http://localhost) Wildcards are NOT supported. Ensure that subdomains are included. Any valid top-level domain is supported (e.g. .com, .co.uk, .gov.br etc) Examples: - https://example.com - https://subdomain.example.com - https://example.com:8080

If you are embedding within multiple nested iframes you need to specify the origins of all the browser contexts used, for example: targetOrigins: [ \"https://example.com\", \"https://basket.example.com\", \"https://ecom.example.com\" ] + attr_accessor :target_origins + + # The list of card networks you want to use for this Unified Checkout transaction. Unified Checkout currently supports the following card networks: - VISA - MASTERCARD - AMEX - CARNET - CARTESBANCAIRES - CUP - DINERSCLUB - DISCOVER - EFTPOS - ELO - JCB - JCREW - MADA - MAESTRO - MEEZA attr_accessor :allowed_card_networks # The payment types that are allowed for the merchant. Possible values when launching Unified Checkout: - PANENTRY - GOOGLEPAY - SRC - CHECK

Possible values when launching Unified Checkout with Checkout API: - PANENTRY - SRC

Possible values when launching Click To Pay Drop-In UI: - CLICKTOPAY

**Important:** - SRC and CLICKTOPAY are only available for Visa, Mastercard and AMEX. @@ -40,8 +40,8 @@ class GenerateUnifiedCheckoutCaptureContextRequest # Attribute mapping from ruby-style variable name to JSON key. def self.attribute_map { - :'target_origins' => :'targetOrigins', :'client_version' => :'clientVersion', + :'target_origins' => :'targetOrigins', :'allowed_card_networks' => :'allowedCardNetworks', :'allowed_payment_types' => :'allowedPaymentTypes', :'country' => :'country', @@ -55,8 +55,8 @@ def self.attribute_map # Attribute mapping from JSON key to ruby-style variable name. def self.json_map { - :'target_origins' => :'target_origins', :'client_version' => :'client_version', + :'target_origins' => :'target_origins', :'allowed_card_networks' => :'allowed_card_networks', :'allowed_payment_types' => :'allowed_payment_types', :'country' => :'country', @@ -70,8 +70,8 @@ def self.json_map # Attribute type mapping. def self.swagger_types { - :'target_origins' => :'Array', :'client_version' => :'String', + :'target_origins' => :'Array', :'allowed_card_networks' => :'Array', :'allowed_payment_types' => :'Array', :'country' => :'String', @@ -90,16 +90,16 @@ def initialize(attributes = {}) # convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + if attributes.has_key?(:'clientVersion') + self.client_version = attributes[:'clientVersion'] + end + if attributes.has_key?(:'targetOrigins') if (value = attributes[:'targetOrigins']).is_a?(Array) self.target_origins = value end end - if attributes.has_key?(:'clientVersion') - self.client_version = attributes[:'clientVersion'] - end - if attributes.has_key?(:'allowedCardNetworks') if (value = attributes[:'allowedCardNetworks']).is_a?(Array) self.allowed_card_networks = value @@ -163,8 +163,8 @@ def country=(country) def ==(o) return true if self.equal?(o) self.class == o.class && - target_origins == o.target_origins && client_version == o.client_version && + target_origins == o.target_origins && allowed_card_networks == o.allowed_card_networks && allowed_payment_types == o.allowed_payment_types && country == o.country && @@ -183,7 +183,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [target_origins, client_version, allowed_card_networks, allowed_payment_types, country, locale, capture_mandate, order_information, checkout_api_initialization].hash + [client_version, target_origins, allowed_card_networks, allowed_payment_types, country, locale, capture_mandate, order_information, checkout_api_initialization].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb b/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb index 8a6226db..2934bed4 100644 --- a/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +++ b/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb @@ -55,6 +55,9 @@ class Ptsv2paymentsPaymentInformationCard # Name of the card product. Possible value: - BNDES This field is supported only for BNDES transactions on CyberSource through VisaNet. The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR4 - Position: 115-120 - Field: Brazil Country Data attr_accessor :product_name + # This field would contain the indicator for transaction type Possible values: - AC: Agriculture Maintenance Account - AE: Agriculture Debit Account/Electron - AG: Agriculture - AI: Agriculture Investment Loan - CG: Brazil Cargo - CS: Construction - DS: Distribution - HC: Healthcare - LP: Visa Large Purchase Advantage - MA: Visa Mobile Agent - MB: Interoperable Mobile Branchless Banking - MG: Visa Mobile General - VA: Visa Vale - Supermarket - VF: Visa Vale - Fuel - VR: Visa Vale - Restaurant + attr_accessor :product_subtype + # Flag that identifies how the card type was selected. Possible values: - 0: Card type was selected based on default acquirer settings. - 1: Customer selected the card type. attr_accessor :type_selection_indicator @@ -75,6 +78,7 @@ def self.attribute_map :'start_month' => :'startMonth', :'start_year' => :'startYear', :'product_name' => :'productName', + :'product_subtype' => :'productSubtype', :'type_selection_indicator' => :'typeSelectionIndicator' } end @@ -96,6 +100,7 @@ def self.json_map :'start_month' => :'start_month', :'start_year' => :'start_year', :'product_name' => :'product_name', + :'product_subtype' => :'product_subtype', :'type_selection_indicator' => :'type_selection_indicator' } end @@ -117,6 +122,7 @@ def self.swagger_types :'start_month' => :'String', :'start_year' => :'String', :'product_name' => :'String', + :'product_subtype' => :'String', :'type_selection_indicator' => :'String' } end @@ -185,6 +191,10 @@ def initialize(attributes = {}) self.product_name = attributes[:'productName'] end + if attributes.has_key?(:'productSubtype') + self.product_subtype = attributes[:'productSubtype'] + end + if attributes.has_key?(:'typeSelectionIndicator') self.type_selection_indicator = attributes[:'typeSelectionIndicator'] end @@ -281,6 +291,12 @@ def product_name=(product_name) @product_name = product_name end + # Custom attribute writer method with validation + # @param [Object] product_subtype Value to be assigned + def product_subtype=(product_subtype) + @product_subtype = product_subtype + end + # Custom attribute writer method with validation # @param [Object] type_selection_indicator Value to be assigned def type_selection_indicator=(type_selection_indicator) @@ -306,6 +322,7 @@ def ==(o) start_month == o.start_month && start_year == o.start_year && product_name == o.product_name && + product_subtype == o.product_subtype && type_selection_indicator == o.type_selection_indicator end @@ -318,7 +335,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [number, expiration_month, expiration_year, type, use_as, source_account_type, source_account_type_details, security_code, security_code_indicator, account_encoder_id, issue_number, start_month, start_year, product_name, type_selection_indicator].hash + [number, expiration_month, expiration_year, type, use_as, source_account_type, source_account_type_details, security_code, security_code_indicator, account_encoder_id, issue_number, start_month, start_year, product_name, product_subtype, type_selection_indicator].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb b/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb index e6813efc..4ab3825e 100644 --- a/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +++ b/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb @@ -31,7 +31,7 @@ class Ptsv2paymentsProcessingInformation # Value that identifies the processor/acquirer to use for the transaction. This value is supported only for **CyberSource through VisaNet**. Contact CyberSource Customer Support to get the value for this field. attr_accessor :processor_id - # Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. + # Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values. - AA : Account-to-account - BB : Supplier Payments - BI : Bank-Initiated P2P Money Transfer - BP : Non-Card Bill Pay/Bill Pay - CD : Cash Deposit - CP : Credit card Bill Payment - FD : Funds disbursement - FT : Funds transfer - GD : Government Disbursement - GP : Gambling payout (non-online gambling) - LO : Loyalty credits and rebates - MD : Merchant Settlement - OG : Online Gambling Payout - PD : Payroll and pension disbursement - PP : Person-to-Person or Peer-to-Peer - TU : Top up, prepaid load - WT : Digital wallet attr_accessor :business_application_id # Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as \"moto\" diff --git a/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb b/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb index e24ee21a..73a12600 100644 --- a/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb +++ b/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb @@ -16,21 +16,9 @@ class Ptsv2paymentsProcessingInformationJapanPaymentOptions # This value is a 2-digit code indicating the payment method. Use Payment Method Code value that applies to the tranasction. - 10 (One-time payment) - 21, 22, 23, 24 (Bonus(one-time)payment) - 61 (Installment payment) - 31, 32, 33, 34 (Integrated (Bonus + Installment)payment) - 80 (Revolving payment) attr_accessor :payment_method - # This value is a 2-digit code indicating the Number of Bonuses. Valid value from 1 to 6. + # An array of objects, each of which contains a bonus month and bonus amount. Length of bonuses array is equal to the number of bonuses. Max length = 6. In case of bonus month and amount not specified, null objects to be returned in the array. Example: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null] attr_accessor :bonuses - # This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12. - attr_accessor :bonus_month - - # This value is a 2-digit code indicating the second bonus month. Valid value from 1 to 12. - attr_accessor :second_bonus_month - - # This value contains the bonus amount of the first month. Maximum value without decimal 99999999. - attr_accessor :bonus_amount - - # This value contains the bonus amount of the second month. Maximum value without decimal 99999999. - attr_accessor :second_bonus_amount - # This will contain the details of the kind of transaction that has been processe. Used only for Japan. Possible Values: - 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft) - 1 = Negative card authorization (authorization-only with 0 or 1 amount) - 2 = Reservation of authorization (authorization-only with amount) - 3 = Cancel transaction - 4 = Merchant-initiated reversal/refund transactions - 5 = Cancel reservation of authorization - 6 = Post authorization attr_accessor :preapproval_type @@ -60,10 +48,6 @@ def self.attribute_map { :'payment_method' => :'paymentMethod', :'bonuses' => :'bonuses', - :'bonus_month' => :'bonusMonth', - :'second_bonus_month' => :'secondBonusMonth', - :'bonus_amount' => :'bonusAmount', - :'second_bonus_amount' => :'secondBonusAmount', :'preapproval_type' => :'preapprovalType', :'installments' => :'installments', :'terminal_id' => :'terminalId', @@ -80,10 +64,6 @@ def self.json_map { :'payment_method' => :'payment_method', :'bonuses' => :'bonuses', - :'bonus_month' => :'bonus_month', - :'second_bonus_month' => :'second_bonus_month', - :'bonus_amount' => :'bonus_amount', - :'second_bonus_amount' => :'second_bonus_amount', :'preapproval_type' => :'preapproval_type', :'installments' => :'installments', :'terminal_id' => :'terminal_id', @@ -99,11 +79,7 @@ def self.json_map def self.swagger_types { :'payment_method' => :'String', - :'bonuses' => :'String', - :'bonus_month' => :'String', - :'second_bonus_month' => :'String', - :'bonus_amount' => :'String', - :'second_bonus_amount' => :'String', + :'bonuses' => :'Array', :'preapproval_type' => :'String', :'installments' => :'String', :'terminal_id' => :'String', @@ -128,23 +104,9 @@ def initialize(attributes = {}) end if attributes.has_key?(:'bonuses') - self.bonuses = attributes[:'bonuses'] - end - - if attributes.has_key?(:'bonusMonth') - self.bonus_month = attributes[:'bonusMonth'] - end - - if attributes.has_key?(:'secondBonusMonth') - self.second_bonus_month = attributes[:'secondBonusMonth'] - end - - if attributes.has_key?(:'bonusAmount') - self.bonus_amount = attributes[:'bonusAmount'] - end - - if attributes.has_key?(:'secondBonusAmount') - self.second_bonus_amount = attributes[:'secondBonusAmount'] + if (value = attributes[:'bonuses']).is_a?(Array) + self.bonuses = value + end end if attributes.has_key?(:'preapprovalType') @@ -199,36 +161,6 @@ def payment_method=(payment_method) @payment_method = payment_method end - # Custom attribute writer method with validation - # @param [Object] bonuses Value to be assigned - def bonuses=(bonuses) - @bonuses = bonuses - end - - # Custom attribute writer method with validation - # @param [Object] bonus_month Value to be assigned - def bonus_month=(bonus_month) - @bonus_month = bonus_month - end - - # Custom attribute writer method with validation - # @param [Object] second_bonus_month Value to be assigned - def second_bonus_month=(second_bonus_month) - @second_bonus_month = second_bonus_month - end - - # Custom attribute writer method with validation - # @param [Object] bonus_amount Value to be assigned - def bonus_amount=(bonus_amount) - @bonus_amount = bonus_amount - end - - # Custom attribute writer method with validation - # @param [Object] second_bonus_amount Value to be assigned - def second_bonus_amount=(second_bonus_amount) - @second_bonus_amount = second_bonus_amount - end - # Custom attribute writer method with validation # @param [Object] preapproval_type Value to be assigned def preapproval_type=(preapproval_type) @@ -278,10 +210,6 @@ def ==(o) self.class == o.class && payment_method == o.payment_method && bonuses == o.bonuses && - bonus_month == o.bonus_month && - second_bonus_month == o.second_bonus_month && - bonus_amount == o.bonus_amount && - second_bonus_amount == o.second_bonus_amount && preapproval_type == o.preapproval_type && installments == o.installments && terminal_id == o.terminal_id && @@ -301,7 +229,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [payment_method, bonuses, bonus_month, second_bonus_month, bonus_amount, second_bonus_amount, preapproval_type, installments, terminal_id, first_billing_month, business_name, business_name_katakana, jis2_track_data, business_name_alpha_numeric].hash + [payment_method, bonuses, preapproval_type, installments, terminal_id, first_billing_month, business_name, business_name_katakana, jis2_track_data, business_name_alpha_numeric].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses.rb b/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses.rb new file mode 100644 index 00000000..3d2cef26 --- /dev/null +++ b/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses.rb @@ -0,0 +1,213 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses + # This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12. + attr_accessor :month + + # This value contains the bonus amount of the first month. Maximum value without decimal 99999999. + attr_accessor :amount + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'month' => :'month', + :'amount' => :'amount' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'month' => :'month', + :'amount' => :'amount' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'month' => :'String', + :'amount' => :'String' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'month') + self.month = attributes[:'month'] + end + + if attributes.has_key?(:'amount') + self.amount = attributes[:'amount'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Custom attribute writer method with validation + # @param [Object] month Value to be assigned + def month=(month) + @month = month + end + + # Custom attribute writer method with validation + # @param [Object] amount Value to be assigned + def amount=(amount) + @amount = amount + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + month == o.month && + amount == o.amount + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [month, amount].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb b/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb index 40a59505..f61bf89a 100644 --- a/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +++ b/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb @@ -13,28 +13,28 @@ module CyberSource class Ptsv2paymentsRecipientInformation - # Identifier for the recipient's account. **Applicable for Barclays AFT transactions only.** It is mandatory for both Visa and Mastercard AFT. For Visa, the field has a maximum length of 34 character. For Mastercard, the field has a maximum length of 50 character. + # Identifier for the recipient's account. This field is applicable for AFT transactions. attr_accessor :account_id - # Identifies the recipient's account type. **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Valid values are: - `00` for Other - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN) - `02` for International Bank Account Number (IBAN) - `03` for Card Account - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code + # Identifies the recipient's account type. This field is applicable for AFT transactions. Valid values are: - `00` for Other - `01` for Routing Transit Number (RTN) + Bank Account Number (BAN) - `02` for International Bank Account Number (IBAN) - `03` for Card Account - `06` for Bank Account Number (BAN) + Bank Identification Code (BIC), also known as a SWIFT code attr_accessor :account_type - # First name of the recipient. **Applicable for Barclays AFT transactions only.** The field is mandatory for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 35 characters. Values exceeding the above limits will be truncated. + # First name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. attr_accessor :first_name - # Last name of the recipient. **Applicable for Barclays AFT transactions only.** This field is optional for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 35 characters. Values exceeding these limits will be truncated. - attr_accessor :last_name - - # Middle name of the recipient. **Applicable for Barclays AFT transactions only.** This field is optional for both Visa and Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. For Mastercard, the field has a maximum length of 1 character. Values exceeding these limits will be truncated. + # Middle name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. attr_accessor :middle_name - # The street address of the recipient **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 50 characters. Values exceeding these limits will be truncated. + # Last name of the recipient. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. + attr_accessor :last_name + + # The street address of the recipient This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. attr_accessor :address1 # Partial postal code for the recipient's address. For example, if the postal code is **NN5 7SG**, the value for this field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. attr_accessor :postal_code - # The country associated with the address of the recipient. **Applicable for Barclays AFT transactions only.** This field is mandatory for Mastercard and not applicable for Visa AFT. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) + # The country associated with the address of the recipient. This field is applicable for AFT and OCT transactions. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) attr_accessor :country # Recipient's date of birth. **Format**: `YYYYMMDD`. This field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters but otherwise does not verify the value or modify it in any way before sending it to the processor. If the field is not required for the transaction, CyberSource does not forward it to the processor. @@ -55,8 +55,8 @@ def self.attribute_map :'account_id' => :'accountId', :'account_type' => :'accountType', :'first_name' => :'firstName', - :'last_name' => :'lastName', :'middle_name' => :'middleName', + :'last_name' => :'lastName', :'address1' => :'address1', :'postal_code' => :'postalCode', :'country' => :'country', @@ -73,8 +73,8 @@ def self.json_map :'account_id' => :'account_id', :'account_type' => :'account_type', :'first_name' => :'first_name', - :'last_name' => :'last_name', :'middle_name' => :'middle_name', + :'last_name' => :'last_name', :'address1' => :'address1', :'postal_code' => :'postal_code', :'country' => :'country', @@ -91,8 +91,8 @@ def self.swagger_types :'account_id' => :'String', :'account_type' => :'String', :'first_name' => :'String', - :'last_name' => :'String', :'middle_name' => :'String', + :'last_name' => :'String', :'address1' => :'String', :'postal_code' => :'String', :'country' => :'String', @@ -123,14 +123,14 @@ def initialize(attributes = {}) self.first_name = attributes[:'firstName'] end - if attributes.has_key?(:'lastName') - self.last_name = attributes[:'lastName'] - end - if attributes.has_key?(:'middleName') self.middle_name = attributes[:'middleName'] end + if attributes.has_key?(:'lastName') + self.last_name = attributes[:'lastName'] + end + if attributes.has_key?(:'address1') self.address1 = attributes[:'address1'] end @@ -191,18 +191,18 @@ def first_name=(first_name) @first_name = first_name end - # Custom attribute writer method with validation - # @param [Object] last_name Value to be assigned - def last_name=(last_name) - @last_name = last_name - end - # Custom attribute writer method with validation # @param [Object] middle_name Value to be assigned def middle_name=(middle_name) @middle_name = middle_name end + # Custom attribute writer method with validation + # @param [Object] last_name Value to be assigned + def last_name=(last_name) + @last_name = last_name + end + # Custom attribute writer method with validation # @param [Object] address1 Value to be assigned def address1=(address1) @@ -253,8 +253,8 @@ def ==(o) account_id == o.account_id && account_type == o.account_type && first_name == o.first_name && - last_name == o.last_name && middle_name == o.middle_name && + last_name == o.last_name && address1 == o.address1 && postal_code == o.postal_code && country == o.country && @@ -273,7 +273,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [account_id, account_type, first_name, last_name, middle_name, address1, postal_code, country, date_of_birth, beneficiary_id, beneficiary_name, beneficiary_address].hash + [account_id, account_type, first_name, middle_name, last_name, address1, postal_code, country, date_of_birth, beneficiary_id, beneficiary_name, beneficiary_address].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb b/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb index e2ddafe1..607465d2 100644 --- a/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +++ b/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb @@ -13,33 +13,33 @@ module CyberSource class Ptsv2paymentsSenderInformation - # First name of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding the above limits will be truncated. + # First name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported.Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to the processor. attr_accessor :first_name - # Last name of the sender. **Applicable for Barclays AFT transactions only.** This field is optional for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding these limits will be truncated. - attr_accessor :last_name - - # Middle name of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding these limits will be truncated. + # Middle name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. attr_accessor :middle_name - # The street address of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 35 characters. Values exceeding these limits will be truncated. + # Last name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor. + attr_accessor :last_name + + # The street address of the sender. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. attr_accessor :address1 - # The city or locality of the sender.in **Applicable for Barclays AFT transactions only.** The field is optional for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 25 characters. Values exceeding these limits will be truncated. + # The city or locality of the sender. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor. attr_accessor :locality - # The state or province of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa AFT when the sender country is US or CA else it is optional for Visa AFT. This field is not applicable for Mastercard AFT. Must be a two character value + # The state or province of the sender. This field is applicable for AFT transactions when the sender country is US or CA. Else it is optional. Must be a two character value attr_accessor :administrative_area - # The country associated with the address of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) + # The country associated with the address of the sender. This field is applicable for AFT transactions. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html) attr_accessor :country_code # Attribute mapping from ruby-style variable name to JSON key. def self.attribute_map { :'first_name' => :'firstName', - :'last_name' => :'lastName', :'middle_name' => :'middleName', + :'last_name' => :'lastName', :'address1' => :'address1', :'locality' => :'locality', :'administrative_area' => :'administrativeArea', @@ -51,8 +51,8 @@ def self.attribute_map def self.json_map { :'first_name' => :'first_name', - :'last_name' => :'last_name', :'middle_name' => :'middle_name', + :'last_name' => :'last_name', :'address1' => :'address1', :'locality' => :'locality', :'administrative_area' => :'administrative_area', @@ -64,8 +64,8 @@ def self.json_map def self.swagger_types { :'first_name' => :'String', - :'last_name' => :'String', :'middle_name' => :'String', + :'last_name' => :'String', :'address1' => :'String', :'locality' => :'String', :'administrative_area' => :'String', @@ -85,14 +85,14 @@ def initialize(attributes = {}) self.first_name = attributes[:'firstName'] end - if attributes.has_key?(:'lastName') - self.last_name = attributes[:'lastName'] - end - if attributes.has_key?(:'middleName') self.middle_name = attributes[:'middleName'] end + if attributes.has_key?(:'lastName') + self.last_name = attributes[:'lastName'] + end + if attributes.has_key?(:'address1') self.address1 = attributes[:'address1'] end @@ -129,18 +129,18 @@ def first_name=(first_name) @first_name = first_name end - # Custom attribute writer method with validation - # @param [Object] last_name Value to be assigned - def last_name=(last_name) - @last_name = last_name - end - # Custom attribute writer method with validation # @param [Object] middle_name Value to be assigned def middle_name=(middle_name) @middle_name = middle_name end + # Custom attribute writer method with validation + # @param [Object] last_name Value to be assigned + def last_name=(last_name) + @last_name = last_name + end + # Custom attribute writer method with validation # @param [Object] address1 Value to be assigned def address1=(address1) @@ -171,8 +171,8 @@ def ==(o) return true if self.equal?(o) self.class == o.class && first_name == o.first_name && - last_name == o.last_name && middle_name == o.middle_name && + last_name == o.last_name && address1 == o.address1 && locality == o.locality && administrative_area == o.administrative_area && @@ -188,7 +188,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [first_name, last_name, middle_name, address1, locality, administrative_area, country_code].hash + [first_name, middle_name, last_name, address1, locality, administrative_area, country_code].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb b/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb index 332048a4..8afc8e87 100644 --- a/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb +++ b/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb @@ -13,7 +13,7 @@ module CyberSource class Riskv1exportcomplianceinquiriesOrderInformationLineItems - # Per-item price of the product. This value for this field cannot be negative. You must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request. You can include a decimal point (.), but you cannot include any other special characters. The value is truncated to the correct number of decimal places. #### DCC with a Third-Party Provider Set this field to the converted amount that was returned by the DCC provider. You must include either the 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request. #### Tax Calculation Required field for U.S., Canadian, international and value added taxes. #### Zero Amount Authorizations If your processor supports zero amount authorizations, you can set this field to 0 for the authorization to check if the card is lost or stolen. #### Maximum Field Lengths For GPN and JCN Gateway: Decimal (10) All other processors: Decimal (15) + # Per-item price of the product. If line items are present in the request, the unit price is a mandatory field. attr_accessor :unit_price attr_accessor :allowed_export_countries @@ -126,27 +126,18 @@ def initialize(attributes = {}) # @return Array for valid properties with the reasons def list_invalid_properties invalid_properties = Array.new - if @unit_price.nil? - invalid_properties.push('invalid value for "unit_price", unit_price cannot be nil.') - end - invalid_properties end # Check to see if the all the properties in the model are valid # @return true if the model is valid def valid? - return false if @unit_price.nil? true end # Custom attribute writer method with validation # @param [Object] unit_price Value to be assigned def unit_price=(unit_price) - #if unit_price.nil? - #fail ArgumentError, 'unit_price cannot be nil' - #end - @unit_price = unit_price end diff --git a/lib/cybersource_rest_client/models/tms_network_token_services.rb b/lib/cybersource_rest_client/models/tms_network_token_services.rb new file mode 100644 index 00000000..0728768e --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_network_token_services.rb @@ -0,0 +1,239 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNetworkTokenServices + attr_accessor :notifications + + attr_accessor :payment_credentials + + attr_accessor :synchronous_provisioning + + attr_accessor :visa_token_service + + attr_accessor :mastercard_digital_enablement_service + + attr_accessor :american_express_token_service + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'notifications' => :'notifications', + :'payment_credentials' => :'paymentCredentials', + :'synchronous_provisioning' => :'synchronousProvisioning', + :'visa_token_service' => :'visaTokenService', + :'mastercard_digital_enablement_service' => :'mastercardDigitalEnablementService', + :'american_express_token_service' => :'americanExpressTokenService' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'notifications' => :'notifications', + :'payment_credentials' => :'payment_credentials', + :'synchronous_provisioning' => :'synchronous_provisioning', + :'visa_token_service' => :'visa_token_service', + :'mastercard_digital_enablement_service' => :'mastercard_digital_enablement_service', + :'american_express_token_service' => :'american_express_token_service' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'notifications' => :'TmsNetworkTokenServicesNotifications', + :'payment_credentials' => :'TmsNetworkTokenServicesPaymentCredentials', + :'synchronous_provisioning' => :'TmsNetworkTokenServicesSynchronousProvisioning', + :'visa_token_service' => :'TmsNetworkTokenServicesVisaTokenService', + :'mastercard_digital_enablement_service' => :'TmsNetworkTokenServicesMastercardDigitalEnablementService', + :'american_express_token_service' => :'TmsNetworkTokenServicesAmericanExpressTokenService' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'notifications') + self.notifications = attributes[:'notifications'] + end + + if attributes.has_key?(:'paymentCredentials') + self.payment_credentials = attributes[:'paymentCredentials'] + end + + if attributes.has_key?(:'synchronousProvisioning') + self.synchronous_provisioning = attributes[:'synchronousProvisioning'] + end + + if attributes.has_key?(:'visaTokenService') + self.visa_token_service = attributes[:'visaTokenService'] + end + + if attributes.has_key?(:'mastercardDigitalEnablementService') + self.mastercard_digital_enablement_service = attributes[:'mastercardDigitalEnablementService'] + end + + if attributes.has_key?(:'americanExpressTokenService') + self.american_express_token_service = attributes[:'americanExpressTokenService'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + notifications == o.notifications && + payment_credentials == o.payment_credentials && + synchronous_provisioning == o.synchronous_provisioning && + visa_token_service == o.visa_token_service && + mastercard_digital_enablement_service == o.mastercard_digital_enablement_service && + american_express_token_service == o.american_express_token_service + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [notifications, payment_credentials, synchronous_provisioning, visa_token_service, mastercard_digital_enablement_service, american_express_token_service].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_network_token_services_american_express_token_service.rb b/lib/cybersource_rest_client/models/tms_network_token_services_american_express_token_service.rb new file mode 100644 index 00000000..3a35ff56 --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_network_token_services_american_express_token_service.rb @@ -0,0 +1,253 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNetworkTokenServicesAmericanExpressTokenService + # Indicates if the service for network tokens for the American Express card association are enabled + attr_accessor :enable_service + + # Indicates if network tokens for the American Express card association are enabled for transactions + attr_accessor :enable_transactional_tokens + + # Token Requestor ID provided by American Express during the registration process for the Tokenization Service Pattern: ^[0-9]{11}\\\\z$\" Min Length: 11 Max Length: 11 Example: \"12345678912\" + attr_accessor :token_requestor_id + + # SE Number assigned by American Express for the merchant's account Pattern: \"^[0-9]{11}\\\\z$\" Min Length: 10 Max Length: 10 Example: \"9876543212\" + attr_accessor :se_number + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'enable_service' => :'enableService', + :'enable_transactional_tokens' => :'enableTransactionalTokens', + :'token_requestor_id' => :'tokenRequestorId', + :'se_number' => :'seNumber' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'enable_service' => :'enable_service', + :'enable_transactional_tokens' => :'enable_transactional_tokens', + :'token_requestor_id' => :'token_requestor_id', + :'se_number' => :'se_number' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'enable_service' => :'BOOLEAN', + :'enable_transactional_tokens' => :'BOOLEAN', + :'token_requestor_id' => :'String', + :'se_number' => :'String' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'enableService') + self.enable_service = attributes[:'enableService'] + end + + if attributes.has_key?(:'enableTransactionalTokens') + self.enable_transactional_tokens = attributes[:'enableTransactionalTokens'] + end + + if attributes.has_key?(:'tokenRequestorId') + self.token_requestor_id = attributes[:'tokenRequestorId'] + end + + if attributes.has_key?(:'seNumber') + self.se_number = attributes[:'seNumber'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + #if !@token_requestor_id.nil? && @token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + #invalid_properties.push('invalid value for "token_requestor_id", must conform to the pattern /^[0-9]{11}\\\\z$\"/.') + #end + + #if !@se_number.nil? && @se_number !~ Regexp.new(/^[0-9]{11}\\z$/) + #invalid_properties.push('invalid value for "se_number", must conform to the pattern /^[0-9]{11}\\z$/.') + #end + + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + #return false if !@token_requestor_id.nil? && @token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + #return false if !@se_number.nil? && @se_number !~ Regexp.new(/^[0-9]{11}\\z$/) + true + end + + # Custom attribute writer method with validation + # @param [Object] token_requestor_id Value to be assigned + def token_requestor_id=(token_requestor_id) + #if !token_requestor_id.nil? && token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + #fail ArgumentError, 'invalid value for "token_requestor_id", must conform to the pattern /^[0-9]{11}\\\\z$\"/.' + #end + + @token_requestor_id = token_requestor_id + end + + # Custom attribute writer method with validation + # @param [Object] se_number Value to be assigned + def se_number=(se_number) + #if !se_number.nil? && se_number !~ Regexp.new(/^[0-9]{11}\\z$/) + #fail ArgumentError, 'invalid value for "se_number", must conform to the pattern /^[0-9]{11}\\z$/.' + #end + + @se_number = se_number + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + enable_service == o.enable_service && + enable_transactional_tokens == o.enable_transactional_tokens && + token_requestor_id == o.token_requestor_id && + se_number == o.se_number + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [enable_service, enable_transactional_tokens, token_requestor_id, se_number].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service.rb b/lib/cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service.rb new file mode 100644 index 00000000..1ec4ea83 --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service.rb @@ -0,0 +1,227 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNetworkTokenServicesMastercardDigitalEnablementService + # Indicates if the service for network tokens for the Mastercard card association are enabled + attr_accessor :enable_service + + # Indicates if network tokens for the Mastercard card association are enabled for transactions + attr_accessor :enable_transactional_tokens + + # Token Requestor ID provided by Mastercard during the registration process for the Tokenization Service Pattern: ^[0-9]{11}\\\\z$\" Min Length: 11 Max Length: 11 Example: \"50162233570\" + attr_accessor :token_requestor_id + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'enable_service' => :'enableService', + :'enable_transactional_tokens' => :'enableTransactionalTokens', + :'token_requestor_id' => :'tokenRequestorId' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'enable_service' => :'enable_service', + :'enable_transactional_tokens' => :'enable_transactional_tokens', + :'token_requestor_id' => :'token_requestor_id' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'enable_service' => :'BOOLEAN', + :'enable_transactional_tokens' => :'BOOLEAN', + :'token_requestor_id' => :'String' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'enableService') + self.enable_service = attributes[:'enableService'] + end + + if attributes.has_key?(:'enableTransactionalTokens') + self.enable_transactional_tokens = attributes[:'enableTransactionalTokens'] + end + + if attributes.has_key?(:'tokenRequestorId') + self.token_requestor_id = attributes[:'tokenRequestorId'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + #if !@token_requestor_id.nil? && @token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + #invalid_properties.push('invalid value for "token_requestor_id", must conform to the pattern /^[0-9]{11}\\\\z$\"/.') + #end + + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + #return false if !@token_requestor_id.nil? && @token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + true + end + + # Custom attribute writer method with validation + # @param [Object] token_requestor_id Value to be assigned + def token_requestor_id=(token_requestor_id) + #if !token_requestor_id.nil? && token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + #fail ArgumentError, 'invalid value for "token_requestor_id", must conform to the pattern /^[0-9]{11}\\\\z$\"/.' + #end + + @token_requestor_id = token_requestor_id + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + enable_service == o.enable_service && + enable_transactional_tokens == o.enable_transactional_tokens && + token_requestor_id == o.token_requestor_id + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [enable_service, enable_transactional_tokens, token_requestor_id].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_network_token_services_notifications.rb b/lib/cybersource_rest_client/models/tms_network_token_services_notifications.rb new file mode 100644 index 00000000..c88ccc59 --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_network_token_services_notifications.rb @@ -0,0 +1,190 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNetworkTokenServicesNotifications + # Indicates if lifecycle management (LCM) notifications are enabled + attr_accessor :enabled + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'enabled' => :'enabled' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'enabled' => :'enabled' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'enabled' => :'BOOLEAN' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'enabled') + self.enabled = attributes[:'enabled'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + enabled == o.enabled + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [enabled].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_network_token_services_payment_credentials.rb b/lib/cybersource_rest_client/models/tms_network_token_services_payment_credentials.rb new file mode 100644 index 00000000..9f66facc --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_network_token_services_payment_credentials.rb @@ -0,0 +1,190 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNetworkTokenServicesPaymentCredentials + # Indicates if Payment Credentials are enabled. If enabled, this provides access to the unredacted token and its associated cryptogram. + attr_accessor :enabled + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'enabled' => :'enabled' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'enabled' => :'enabled' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'enabled' => :'BOOLEAN' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'enabled') + self.enabled = attributes[:'enabled'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + enabled == o.enabled + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [enabled].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning.rb b/lib/cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning.rb new file mode 100644 index 00000000..e64e4252 --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning.rb @@ -0,0 +1,190 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNetworkTokenServicesSynchronousProvisioning + # Indicates if network tokens are provisioned synchronously (i.e. as part of the transaction flow) or asychronously (i.e. in parallel to the payment flow) NOTE: The synchronous provisioning feature is designed exclusively for aggregator merchants. Direct merchants should not enable synchronous provisioning as TMS manages the asynchronous creation of network tokens for direct clients. Activation of this feature by direct merchants will lead to latency in the authorization response. + attr_accessor :enabled + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'enabled' => :'enabled' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'enabled' => :'enabled' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'enabled' => :'BOOLEAN' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'enabled') + self.enabled = attributes[:'enabled'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + enabled == o.enabled + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [enabled].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_network_token_services_visa_token_service.rb b/lib/cybersource_rest_client/models/tms_network_token_services_visa_token_service.rb new file mode 100644 index 00000000..76a1dbac --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_network_token_services_visa_token_service.rb @@ -0,0 +1,244 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNetworkTokenServicesVisaTokenService + # Indicates if the service for network tokens for the Visa card association are enabled + attr_accessor :enable_service + + # Indicates if network tokens for the Visa card association are enabled for transactions + attr_accessor :enable_transactional_tokens + + # Token Requestor ID provided by Visa during the registration process for the Tokenization Service Pattern: ^[0-9]{11}\\\\z$\" Min Length: 11 Max Length: 11 Example: \"40000000082\" + attr_accessor :token_requestor_id + + # Relationship ID provided by visa Min Length: 1 Max Length: 100 Example: \"24681921-40000000082\" + attr_accessor :relationship_id + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'enable_service' => :'enableService', + :'enable_transactional_tokens' => :'enableTransactionalTokens', + :'token_requestor_id' => :'tokenRequestorId', + :'relationship_id' => :'relationshipId' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'enable_service' => :'enable_service', + :'enable_transactional_tokens' => :'enable_transactional_tokens', + :'token_requestor_id' => :'token_requestor_id', + :'relationship_id' => :'relationship_id' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'enable_service' => :'BOOLEAN', + :'enable_transactional_tokens' => :'BOOLEAN', + :'token_requestor_id' => :'String', + :'relationship_id' => :'String' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'enableService') + self.enable_service = attributes[:'enableService'] + end + + if attributes.has_key?(:'enableTransactionalTokens') + self.enable_transactional_tokens = attributes[:'enableTransactionalTokens'] + end + + if attributes.has_key?(:'tokenRequestorId') + self.token_requestor_id = attributes[:'tokenRequestorId'] + end + + if attributes.has_key?(:'relationshipId') + self.relationship_id = attributes[:'relationshipId'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + #if !@token_requestor_id.nil? && @token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + #invalid_properties.push('invalid value for "token_requestor_id", must conform to the pattern /^[0-9]{11}\\\\z$\"/.') + #end + + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + #return false if !@token_requestor_id.nil? && @token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + true + end + + # Custom attribute writer method with validation + # @param [Object] token_requestor_id Value to be assigned + def token_requestor_id=(token_requestor_id) + #if !token_requestor_id.nil? && token_requestor_id !~ Regexp.new(/^[0-9]{11}\\\\z$\"/) + #fail ArgumentError, 'invalid value for "token_requestor_id", must conform to the pattern /^[0-9]{11}\\\\z$\"/.' + #end + + @token_requestor_id = token_requestor_id + end + + # Custom attribute writer method with validation + # @param [Object] relationship_id Value to be assigned + def relationship_id=(relationship_id) + @relationship_id = relationship_id + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + enable_service == o.enable_service && + enable_transactional_tokens == o.enable_transactional_tokens && + token_requestor_id == o.token_requestor_id && + relationship_id == o.relationship_id + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [enable_service, enable_transactional_tokens, token_requestor_id, relationship_id].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_nullify.rb b/lib/cybersource_rest_client/models/tms_nullify.rb new file mode 100644 index 00000000..a1d1d806 --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_nullify.rb @@ -0,0 +1,212 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsNullify + # Indicates if the card number should be nullified (i.e. not stored) + attr_accessor :instrument_identifier_card_number + + # Indicates if the expiration date associated to the instrument identifier should be nullified (i.e. not stored) + attr_accessor :instrument_identifier_card_expiration + + # Indicates if the card details should be nullified (i.e. not stored) + attr_accessor :payment_instrument_card_details + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'instrument_identifier_card_number' => :'instrumentIdentifierCardNumber', + :'instrument_identifier_card_expiration' => :'instrumentIdentifierCardExpiration', + :'payment_instrument_card_details' => :'paymentInstrumentCardDetails' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'instrument_identifier_card_number' => :'instrument_identifier_card_number', + :'instrument_identifier_card_expiration' => :'instrument_identifier_card_expiration', + :'payment_instrument_card_details' => :'payment_instrument_card_details' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'instrument_identifier_card_number' => :'BOOLEAN', + :'instrument_identifier_card_expiration' => :'BOOLEAN', + :'payment_instrument_card_details' => :'BOOLEAN' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'instrumentIdentifierCardNumber') + self.instrument_identifier_card_number = attributes[:'instrumentIdentifierCardNumber'] + end + + if attributes.has_key?(:'instrumentIdentifierCardExpiration') + self.instrument_identifier_card_expiration = attributes[:'instrumentIdentifierCardExpiration'] + end + + if attributes.has_key?(:'paymentInstrumentCardDetails') + self.payment_instrument_card_details = attributes[:'paymentInstrumentCardDetails'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + instrument_identifier_card_number == o.instrument_identifier_card_number && + instrument_identifier_card_expiration == o.instrument_identifier_card_expiration && + payment_instrument_card_details == o.payment_instrument_card_details + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [instrument_identifier_card_number, instrument_identifier_card_expiration, payment_instrument_card_details].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_sensitive_privileges.rb b/lib/cybersource_rest_client/models/tms_sensitive_privileges.rb new file mode 100644 index 00000000..a8262970 --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_sensitive_privileges.rb @@ -0,0 +1,190 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsSensitivePrivileges + # Indicates which digits of the card number will be unmasked. Possible Values: - 'FIRST_6_LAST_4' - 'LAST_4' - 'MASKED' + attr_accessor :card_number_masking_format + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'card_number_masking_format' => :'cardNumberMaskingFormat' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'card_number_masking_format' => :'card_number_masking_format' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'card_number_masking_format' => :'String' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'cardNumberMaskingFormat') + self.card_number_masking_format = attributes[:'cardNumberMaskingFormat'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + card_number_masking_format == o.card_number_masking_format + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [card_number_masking_format].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tms_token_formats.rb b/lib/cybersource_rest_client/models/tms_token_formats.rb new file mode 100644 index 00000000..6bfd4108 --- /dev/null +++ b/lib/cybersource_rest_client/models/tms_token_formats.rb @@ -0,0 +1,223 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TmsTokenFormats + # Format for customer tokens. Possible Values: - '16_DIGIT' - '19_DIGIT' - '22_DIGIT' - '32_HEX' + attr_accessor :customer + + # Format for payment instrument tokens. Possible Values: - '16_DIGIT' - '19_DIGIT' - '22_DIGIT' - '32_HEX' + attr_accessor :payment_instrument + + # Format for card based instrument identifier tokens. Possible Values: - '16_DIGIT' - '16_DIGIT_LAST_4' - '19_DIGIT' - '19_DIGIT_LAST_4' - '22_DIGIT' - '32_HEX' + attr_accessor :instrument_identifier_card + + # Format for bank account based instrument identifier tokens. Possible Values: - '16_DIGIT' - '19_DIGIT' - '22_DIGIT' - '32_HEX' + attr_accessor :instrument_identifier_bank_account + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'customer' => :'customer', + :'payment_instrument' => :'paymentInstrument', + :'instrument_identifier_card' => :'instrumentIdentifierCard', + :'instrument_identifier_bank_account' => :'instrumentIdentifierBankAccount' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'customer' => :'customer', + :'payment_instrument' => :'payment_instrument', + :'instrument_identifier_card' => :'instrument_identifier_card', + :'instrument_identifier_bank_account' => :'instrument_identifier_bank_account' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'customer' => :'String', + :'payment_instrument' => :'String', + :'instrument_identifier_card' => :'String', + :'instrument_identifier_bank_account' => :'String' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'customer') + self.customer = attributes[:'customer'] + end + + if attributes.has_key?(:'paymentInstrument') + self.payment_instrument = attributes[:'paymentInstrument'] + end + + if attributes.has_key?(:'instrumentIdentifierCard') + self.instrument_identifier_card = attributes[:'instrumentIdentifierCard'] + end + + if attributes.has_key?(:'instrumentIdentifierBankAccount') + self.instrument_identifier_bank_account = attributes[:'instrumentIdentifierBankAccount'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + customer == o.customer && + payment_instrument == o.payment_instrument && + instrument_identifier_card == o.instrument_identifier_card && + instrument_identifier_bank_account == o.instrument_identifier_bank_account + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [customer, payment_instrument, instrument_identifier_card, instrument_identifier_bank_account].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/token_permissions.rb b/lib/cybersource_rest_client/models/token_permissions.rb new file mode 100644 index 00000000..b71950b5 --- /dev/null +++ b/lib/cybersource_rest_client/models/token_permissions.rb @@ -0,0 +1,223 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'date' + +module CyberSource + class TokenPermissions + # Indicates if tokens may be created + attr_accessor :create + + # Indicates if tokens may be read + attr_accessor :read + + # Indicates if tokens may be updated + attr_accessor :update + + # Indicates if tokens may be deleted + attr_accessor :delete + + # Attribute mapping from ruby-style variable name to JSON key. + def self.attribute_map + { + :'create' => :'create', + :'read' => :'read', + :'update' => :'update', + :'delete' => :'delete' + } + end + + # Attribute mapping from JSON key to ruby-style variable name. + def self.json_map + { + :'create' => :'create', + :'read' => :'read', + :'update' => :'update', + :'delete' => :'delete' + } + end + + # Attribute type mapping. + def self.swagger_types + { + :'create' => :'BOOLEAN', + :'read' => :'BOOLEAN', + :'update' => :'BOOLEAN', + :'delete' => :'BOOLEAN' + } + end + + # Initializes the object + # @param [Hash] attributes Model attributes in the form of hash + def initialize(attributes = {}) + return unless attributes.is_a?(Hash) + + # convert string to symbol for hash key + attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } + + if attributes.has_key?(:'create') + self.create = attributes[:'create'] + end + + if attributes.has_key?(:'read') + self.read = attributes[:'read'] + end + + if attributes.has_key?(:'update') + self.update = attributes[:'update'] + end + + if attributes.has_key?(:'delete') + self.delete = attributes[:'delete'] + end + end + + # Show invalid properties with the reasons. Usually used together with valid? + # @return Array for valid properties with the reasons + def list_invalid_properties + invalid_properties = Array.new + invalid_properties + end + + # Check to see if the all the properties in the model are valid + # @return true if the model is valid + def valid? + true + end + + # Checks equality by comparing each attribute. + # @param [Object] Object to be compared + def ==(o) + return true if self.equal?(o) + self.class == o.class && + create == o.create && + read == o.read && + update == o.update && + delete == o.delete + end + + # @see the `==` method + # @param [Object] Object to be compared + def eql?(o) + self == o + end + + # Calculates hash code according to all attributes. + # @return [Fixnum] Hash code + def hash + [create, read, update, delete].hash + end + + # Builds the object from hash + # @param [Hash] attributes Model attributes in the form of hash + # @return [Object] Returns the model itself + def build_from_hash(attributes) + return nil unless attributes.is_a?(Hash) + self.class.swagger_types.each_pair do |key, type| + if type =~ /\AArray<(.*)>/i + # check to ensure the input is an array given that the the attribute + # is documented as an array but the input is not + if attributes[self.class.attribute_map[key]].is_a?(Array) + self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) + end + elsif !attributes[self.class.attribute_map[key]].nil? + self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]])) + end # or else data not found in attributes(hash), not an issue as the data can be optional + end + + self + end + + # Deserializes the data based on type + # @param string type Data type + # @param string value Value to be deserialized + # @return [Object] Deserialized data + def _deserialize(type, value) + case type.to_sym + when :DateTime + DateTime.parse(value) + when :Date + Date.parse(value) + when :String + value.to_s + when :Integer + value.to_i + when :Float + value.to_f + when :BOOLEAN + if value.to_s =~ /\A(true|t|yes|y|1)\z/i + true + else + false + end + when :Object + # generic object (usually a Hash), return directly + value + when /\AArray<(?.+)>\z/ + inner_type = Regexp.last_match[:inner_type] + value.map { |v| _deserialize(inner_type, v) } + when /\AHash<(?.+?), (?.+)>\z/ + k_type = Regexp.last_match[:k_type] + v_type = Regexp.last_match[:v_type] + {}.tap do |hash| + value.each do |k, v| + hash[_deserialize(k_type, k)] = _deserialize(v_type, v) + end + end + else # model + temp_model = CyberSource.const_get(type).new + temp_model.build_from_hash(value) + end + end + + # Returns the string representation of the object + # @return [String] String presentation of the object + def to_s + to_hash.to_s + end + + # to_body is an alias to to_hash (backward compatibility) + # @return [Hash] Returns the object in the form of hash + def to_body + to_hash + end + + # Returns the object in the form of hash + # @return [Hash] Returns the object in the form of hash + def to_hash + hash = {} + self.class.attribute_map.each_pair do |attr, param| + value = self.send(attr) + next if value.nil? + hash[param] = _to_hash(value) + end + hash + end + + # Outputs non-array value in the form of hash + # For object, use to_hash. Otherwise, just return the value + # @param [Object] value Any valid value + # @return [Hash] Returns the value in the form of hash + def _to_hash(value) + if value.is_a?(Array) + value.compact.map { |v| _to_hash(v) } + elsif value.is_a?(Hash) + {}.tap do |hash| + value.each { |k, v| hash[k] = _to_hash(v) } + end + elsif value.respond_to? :to_hash + value.to_hash + else + value + end + end + end +end diff --git a/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb b/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb index 913829ac..c3c67137 100644 --- a/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +++ b/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb @@ -28,7 +28,7 @@ class TssV2TransactionsGet200ResponseProcessingInformation # Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as `moto` attr_accessor :commerce_indicator_label - # Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. + # Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values. - AA : Account-to-account - BB : Supplier Payments - BI : Bank-Initiated P2P Money Transfer - BP : Non-Card Bill Pay/Bill Pay - CD : Cash Deposit - CP : Credit card Bill Payment - FD : Funds disbursement - FT : Funds transfer - GD : Government Disbursement - GP : Gambling payout (non-online gambling) - LO : Loyalty credits and rebates - MD : Merchant Settlement - OG : Online Gambling Payout - PD : Payroll and pension disbursement - PP : Person-to-Person or Peer-to-Peer - TU : Top up, prepaid load - WT : Digital wallet attr_accessor :business_application_id attr_accessor :authorization_options diff --git a/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb b/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb index a8eb89e0..5c8bb4f7 100644 --- a/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb +++ b/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb @@ -25,13 +25,33 @@ class TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions # Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet. attr_accessor :business_name_katakana + # Business name in English characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet. + attr_accessor :business_name_english + + # An array of objects, each of which contains a bonus month and bonus amount. Length of bonuses array is equal to the number of bonuses. Max length = 6. In case of bonus month and amount not specified, null objects to be returned in the array. Example: bonuses : [ {\"month\": \"1\",\"amount\": \"200\"}, {\"month\": \"3\",\"amount\": \"2500\"}, null] + attr_accessor :bonuses + + # Billing month in MM format. + attr_accessor :first_billing_month + + # Number of Installments. + attr_accessor :number_of_installments + + # This will contain the details of the kind of transaction that has been processe. Used only for Japan. Possible Values: - 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft) - 1 = Negative card authorization (authorization-only with 0 or 1 amount) - 2 = Reservation of authorization (authorization-only with amount) - 3 = Cancel transaction - 4 = Merchant-initiated reversal/refund transactions - 5 = Cancel reservation of authorization - 6 = Post authorization + attr_accessor :pre_approval_type + # Attribute mapping from ruby-style variable name to JSON key. def self.attribute_map { :'payment_method' => :'paymentMethod', :'terminal_id' => :'terminalId', :'business_name' => :'businessName', - :'business_name_katakana' => :'businessNameKatakana' + :'business_name_katakana' => :'businessNameKatakana', + :'business_name_english' => :'businessNameEnglish', + :'bonuses' => :'bonuses', + :'first_billing_month' => :'firstBillingMonth', + :'number_of_installments' => :'numberOfInstallments', + :'pre_approval_type' => :'preApprovalType' } end @@ -41,7 +61,12 @@ def self.json_map :'payment_method' => :'payment_method', :'terminal_id' => :'terminal_id', :'business_name' => :'business_name', - :'business_name_katakana' => :'business_name_katakana' + :'business_name_katakana' => :'business_name_katakana', + :'business_name_english' => :'business_name_english', + :'bonuses' => :'bonuses', + :'first_billing_month' => :'first_billing_month', + :'number_of_installments' => :'number_of_installments', + :'pre_approval_type' => :'pre_approval_type' } end @@ -51,7 +76,12 @@ def self.swagger_types :'payment_method' => :'String', :'terminal_id' => :'String', :'business_name' => :'String', - :'business_name_katakana' => :'String' + :'business_name_katakana' => :'String', + :'business_name_english' => :'String', + :'bonuses' => :'Array', + :'first_billing_month' => :'String', + :'number_of_installments' => :'String', + :'pre_approval_type' => :'String' } end @@ -78,6 +108,28 @@ def initialize(attributes = {}) if attributes.has_key?(:'businessNameKatakana') self.business_name_katakana = attributes[:'businessNameKatakana'] end + + if attributes.has_key?(:'businessNameEnglish') + self.business_name_english = attributes[:'businessNameEnglish'] + end + + if attributes.has_key?(:'bonuses') + if (value = attributes[:'bonuses']).is_a?(Array) + self.bonuses = value + end + end + + if attributes.has_key?(:'firstBillingMonth') + self.first_billing_month = attributes[:'firstBillingMonth'] + end + + if attributes.has_key?(:'numberOfInstallments') + self.number_of_installments = attributes[:'numberOfInstallments'] + end + + if attributes.has_key?(:'preApprovalType') + self.pre_approval_type = attributes[:'preApprovalType'] + end end # Show invalid properties with the reasons. Usually used together with valid? @@ -117,6 +169,24 @@ def business_name_katakana=(business_name_katakana) @business_name_katakana = business_name_katakana end + # Custom attribute writer method with validation + # @param [Object] business_name_english Value to be assigned + def business_name_english=(business_name_english) + @business_name_english = business_name_english + end + + # Custom attribute writer method with validation + # @param [Object] first_billing_month Value to be assigned + def first_billing_month=(first_billing_month) + @first_billing_month = first_billing_month + end + + # Custom attribute writer method with validation + # @param [Object] pre_approval_type Value to be assigned + def pre_approval_type=(pre_approval_type) + @pre_approval_type = pre_approval_type + end + # Checks equality by comparing each attribute. # @param [Object] Object to be compared def ==(o) @@ -125,7 +195,12 @@ def ==(o) payment_method == o.payment_method && terminal_id == o.terminal_id && business_name == o.business_name && - business_name_katakana == o.business_name_katakana + business_name_katakana == o.business_name_katakana && + business_name_english == o.business_name_english && + bonuses == o.bonuses && + first_billing_month == o.first_billing_month && + number_of_installments == o.number_of_installments && + pre_approval_type == o.pre_approval_type end # @see the `==` method @@ -137,7 +212,7 @@ def eql?(o) # Calculates hash code according to all attributes. # @return [Fixnum] Hash code def hash - [payment_method, terminal_id, business_name, business_name_katakana].hash + [payment_method, terminal_id, business_name, business_name_katakana, business_name_english, bonuses, first_billing_month, number_of_installments, pre_approval_type].hash end # Builds the object from hash diff --git a/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb b/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb index e414ac60..0cb56488 100644 --- a/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +++ b/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb @@ -16,7 +16,7 @@ class TssV2TransactionsPost201ResponseEmbeddedProcessingInformation # Type of digital payment solution for the transaction. Possible Values: - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the REST API.](https://developer.cybersource.com/content/dam/docs/cybs/en-us/apifields/reference/all/rest/api-fields.pdf) - `001`: Apple Pay. - `004`: Cybersource In-App Solution. - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. - `006`: Android Pay. - `007`: Chase Pay. - `008`: Samsung Pay. - `012`: Google Pay. - `013`: Cybersource P2PE Decryption - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `027`: Click to Pay. attr_accessor :payment_solution - # Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. + # Required for AFT and OCT transactions. Given below is a list of all the BAI values available. However, the processors may support only few specific BAI values. - AA : Account-to-account - BB : Supplier Payments - BI : Bank-Initiated P2P Money Transfer - BP : Non-Card Bill Pay/Bill Pay - CD : Cash Deposit - CP : Credit card Bill Payment - FD : Funds disbursement - FT : Funds transfer - GD : Government Disbursement - GP : Gambling payout (non-online gambling) - LO : Loyalty credits and rebates - MD : Merchant Settlement - OG : Online Gambling Payout - PD : Payroll and pension disbursement - PP : Person-to-Person or Peer-to-Peer - TU : Top up, prepaid load - WT : Digital wallet attr_accessor :business_application_id # Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as \"moto\" diff --git a/spec/models/commerce_solutions_products_token_management_configuration_information_configurations_spec.rb b/spec/models/commerce_solutions_products_token_management_configuration_information_configurations_spec.rb index 6b6d0402..c5e1ed26 100644 --- a/spec/models/commerce_solutions_products_token_management_configuration_information_configurations_spec.rb +++ b/spec/models/commerce_solutions_products_token_management_configuration_information_configurations_spec.rb @@ -37,4 +37,10 @@ end end + describe 'test attribute "vault"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + end diff --git a/spec/models/commerce_solutions_products_token_management_configuration_information_configurations_vault_spec.rb b/spec/models/commerce_solutions_products_token_management_configuration_information_configurations_vault_spec.rb new file mode 100644 index 00000000..90753d4f --- /dev/null +++ b/spec/models/commerce_solutions_products_token_management_configuration_information_configurations_vault_spec.rb @@ -0,0 +1,76 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault' do + before do + # run before each test + @instance = CyberSource::CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault.new + end + + after do + # run after each test + end + + describe 'test an instance of CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault' do + it 'should create an instance of CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault' do + expect(@instance).to be_instance_of(CyberSource::CommerceSolutionsProductsTokenManagementConfigurationInformationConfigurationsVault) + end + end + describe 'test attribute "default_token_type"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "location"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "token_formats"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "token_permissions"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "sensitive_privileges"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "nullify"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "network_token_services"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/generate_capture_context_request_spec.rb b/spec/models/generate_capture_context_request_spec.rb index 1e6baca3..575adebf 100644 --- a/spec/models/generate_capture_context_request_spec.rb +++ b/spec/models/generate_capture_context_request_spec.rb @@ -31,19 +31,19 @@ expect(@instance).to be_instance_of(CyberSource::GenerateCaptureContextRequest) end end - describe 'test attribute "target_origins"' do + describe 'test attribute "client_version"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end end - describe 'test attribute "allowed_card_networks"' do + describe 'test attribute "target_origins"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end end - describe 'test attribute "client_version"' do + describe 'test attribute "allowed_card_networks"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end diff --git a/spec/models/generate_unified_checkout_capture_context_request_spec.rb b/spec/models/generate_unified_checkout_capture_context_request_spec.rb index 28fe2b9a..d303d184 100644 --- a/spec/models/generate_unified_checkout_capture_context_request_spec.rb +++ b/spec/models/generate_unified_checkout_capture_context_request_spec.rb @@ -31,13 +31,13 @@ expect(@instance).to be_instance_of(CyberSource::GenerateUnifiedCheckoutCaptureContextRequest) end end - describe 'test attribute "target_origins"' do + describe 'test attribute "client_version"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end end - describe 'test attribute "client_version"' do + describe 'test attribute "target_origins"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end diff --git a/spec/models/ptsv2payments_payment_information_card_spec.rb b/spec/models/ptsv2payments_payment_information_card_spec.rb index 592bffb0..da2d2b46 100644 --- a/spec/models/ptsv2payments_payment_information_card_spec.rb +++ b/spec/models/ptsv2payments_payment_information_card_spec.rb @@ -115,6 +115,12 @@ end end + describe 'test attribute "product_subtype"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + describe 'test attribute "type_selection_indicator"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers diff --git a/spec/models/ptsv2payments_processing_information_japan_payment_options_bonuses_spec.rb b/spec/models/ptsv2payments_processing_information_japan_payment_options_bonuses_spec.rb new file mode 100644 index 00000000..6bcdb4b1 --- /dev/null +++ b/spec/models/ptsv2payments_processing_information_japan_payment_options_bonuses_spec.rb @@ -0,0 +1,46 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses' do + before do + # run before each test + @instance = CyberSource::Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses.new + end + + after do + # run after each test + end + + describe 'test an instance of Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses' do + it 'should create an instance of Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses' do + expect(@instance).to be_instance_of(CyberSource::Ptsv2paymentsProcessingInformationJapanPaymentOptionsBonuses) + end + end + describe 'test attribute "month"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "amount"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/ptsv2payments_processing_information_japan_payment_options_spec.rb b/spec/models/ptsv2payments_processing_information_japan_payment_options_spec.rb index 79b7f107..c35a4ad6 100644 --- a/spec/models/ptsv2payments_processing_information_japan_payment_options_spec.rb +++ b/spec/models/ptsv2payments_processing_information_japan_payment_options_spec.rb @@ -43,30 +43,6 @@ end end - describe 'test attribute "bonus_month"' do - it 'should work' do - # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers - end - end - - describe 'test attribute "second_bonus_month"' do - it 'should work' do - # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers - end - end - - describe 'test attribute "bonus_amount"' do - it 'should work' do - # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers - end - end - - describe 'test attribute "second_bonus_amount"' do - it 'should work' do - # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers - end - end - describe 'test attribute "preapproval_type"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers diff --git a/spec/models/ptsv2payments_recipient_information_spec.rb b/spec/models/ptsv2payments_recipient_information_spec.rb index e91ebd2f..54ee877a 100644 --- a/spec/models/ptsv2payments_recipient_information_spec.rb +++ b/spec/models/ptsv2payments_recipient_information_spec.rb @@ -49,13 +49,13 @@ end end - describe 'test attribute "last_name"' do + describe 'test attribute "middle_name"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end end - describe 'test attribute "middle_name"' do + describe 'test attribute "last_name"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end diff --git a/spec/models/ptsv2payments_sender_information_spec.rb b/spec/models/ptsv2payments_sender_information_spec.rb index 0778565f..eccd7f4e 100644 --- a/spec/models/ptsv2payments_sender_information_spec.rb +++ b/spec/models/ptsv2payments_sender_information_spec.rb @@ -37,13 +37,13 @@ end end - describe 'test attribute "last_name"' do + describe 'test attribute "middle_name"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end end - describe 'test attribute "middle_name"' do + describe 'test attribute "last_name"' do it 'should work' do # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers end diff --git a/spec/models/tms_network_token_services_american_express_token_service_spec.rb b/spec/models/tms_network_token_services_american_express_token_service_spec.rb new file mode 100644 index 00000000..1e3b5d02 --- /dev/null +++ b/spec/models/tms_network_token_services_american_express_token_service_spec.rb @@ -0,0 +1,58 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNetworkTokenServicesAmericanExpressTokenService +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNetworkTokenServicesAmericanExpressTokenService' do + before do + # run before each test + @instance = CyberSource::TmsNetworkTokenServicesAmericanExpressTokenService.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNetworkTokenServicesAmericanExpressTokenService' do + it 'should create an instance of TmsNetworkTokenServicesAmericanExpressTokenService' do + expect(@instance).to be_instance_of(CyberSource::TmsNetworkTokenServicesAmericanExpressTokenService) + end + end + describe 'test attribute "enable_service"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "enable_transactional_tokens"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "token_requestor_id"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "se_number"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_network_token_services_mastercard_digital_enablement_service_spec.rb b/spec/models/tms_network_token_services_mastercard_digital_enablement_service_spec.rb new file mode 100644 index 00000000..25336283 --- /dev/null +++ b/spec/models/tms_network_token_services_mastercard_digital_enablement_service_spec.rb @@ -0,0 +1,52 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNetworkTokenServicesMastercardDigitalEnablementService +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNetworkTokenServicesMastercardDigitalEnablementService' do + before do + # run before each test + @instance = CyberSource::TmsNetworkTokenServicesMastercardDigitalEnablementService.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNetworkTokenServicesMastercardDigitalEnablementService' do + it 'should create an instance of TmsNetworkTokenServicesMastercardDigitalEnablementService' do + expect(@instance).to be_instance_of(CyberSource::TmsNetworkTokenServicesMastercardDigitalEnablementService) + end + end + describe 'test attribute "enable_service"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "enable_transactional_tokens"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "token_requestor_id"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_network_token_services_notifications_spec.rb b/spec/models/tms_network_token_services_notifications_spec.rb new file mode 100644 index 00000000..2b283707 --- /dev/null +++ b/spec/models/tms_network_token_services_notifications_spec.rb @@ -0,0 +1,40 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNetworkTokenServicesNotifications +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNetworkTokenServicesNotifications' do + before do + # run before each test + @instance = CyberSource::TmsNetworkTokenServicesNotifications.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNetworkTokenServicesNotifications' do + it 'should create an instance of TmsNetworkTokenServicesNotifications' do + expect(@instance).to be_instance_of(CyberSource::TmsNetworkTokenServicesNotifications) + end + end + describe 'test attribute "enabled"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_network_token_services_payment_credentials_spec.rb b/spec/models/tms_network_token_services_payment_credentials_spec.rb new file mode 100644 index 00000000..a59a09a6 --- /dev/null +++ b/spec/models/tms_network_token_services_payment_credentials_spec.rb @@ -0,0 +1,40 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNetworkTokenServicesPaymentCredentials +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNetworkTokenServicesPaymentCredentials' do + before do + # run before each test + @instance = CyberSource::TmsNetworkTokenServicesPaymentCredentials.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNetworkTokenServicesPaymentCredentials' do + it 'should create an instance of TmsNetworkTokenServicesPaymentCredentials' do + expect(@instance).to be_instance_of(CyberSource::TmsNetworkTokenServicesPaymentCredentials) + end + end + describe 'test attribute "enabled"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_network_token_services_spec.rb b/spec/models/tms_network_token_services_spec.rb new file mode 100644 index 00000000..220bcbaa --- /dev/null +++ b/spec/models/tms_network_token_services_spec.rb @@ -0,0 +1,70 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNetworkTokenServices +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNetworkTokenServices' do + before do + # run before each test + @instance = CyberSource::TmsNetworkTokenServices.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNetworkTokenServices' do + it 'should create an instance of TmsNetworkTokenServices' do + expect(@instance).to be_instance_of(CyberSource::TmsNetworkTokenServices) + end + end + describe 'test attribute "notifications"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "payment_credentials"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "synchronous_provisioning"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "visa_token_service"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "mastercard_digital_enablement_service"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "american_express_token_service"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_network_token_services_synchronous_provisioning_spec.rb b/spec/models/tms_network_token_services_synchronous_provisioning_spec.rb new file mode 100644 index 00000000..bd77a399 --- /dev/null +++ b/spec/models/tms_network_token_services_synchronous_provisioning_spec.rb @@ -0,0 +1,40 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNetworkTokenServicesSynchronousProvisioning +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNetworkTokenServicesSynchronousProvisioning' do + before do + # run before each test + @instance = CyberSource::TmsNetworkTokenServicesSynchronousProvisioning.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNetworkTokenServicesSynchronousProvisioning' do + it 'should create an instance of TmsNetworkTokenServicesSynchronousProvisioning' do + expect(@instance).to be_instance_of(CyberSource::TmsNetworkTokenServicesSynchronousProvisioning) + end + end + describe 'test attribute "enabled"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_network_token_services_visa_token_service_spec.rb b/spec/models/tms_network_token_services_visa_token_service_spec.rb new file mode 100644 index 00000000..d1fec276 --- /dev/null +++ b/spec/models/tms_network_token_services_visa_token_service_spec.rb @@ -0,0 +1,58 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNetworkTokenServicesVisaTokenService +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNetworkTokenServicesVisaTokenService' do + before do + # run before each test + @instance = CyberSource::TmsNetworkTokenServicesVisaTokenService.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNetworkTokenServicesVisaTokenService' do + it 'should create an instance of TmsNetworkTokenServicesVisaTokenService' do + expect(@instance).to be_instance_of(CyberSource::TmsNetworkTokenServicesVisaTokenService) + end + end + describe 'test attribute "enable_service"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "enable_transactional_tokens"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "token_requestor_id"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "relationship_id"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_nullify_spec.rb b/spec/models/tms_nullify_spec.rb new file mode 100644 index 00000000..6ef13698 --- /dev/null +++ b/spec/models/tms_nullify_spec.rb @@ -0,0 +1,52 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsNullify +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsNullify' do + before do + # run before each test + @instance = CyberSource::TmsNullify.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsNullify' do + it 'should create an instance of TmsNullify' do + expect(@instance).to be_instance_of(CyberSource::TmsNullify) + end + end + describe 'test attribute "instrument_identifier_card_number"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "instrument_identifier_card_expiration"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "payment_instrument_card_details"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_sensitive_privileges_spec.rb b/spec/models/tms_sensitive_privileges_spec.rb new file mode 100644 index 00000000..8fd927fd --- /dev/null +++ b/spec/models/tms_sensitive_privileges_spec.rb @@ -0,0 +1,40 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsSensitivePrivileges +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsSensitivePrivileges' do + before do + # run before each test + @instance = CyberSource::TmsSensitivePrivileges.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsSensitivePrivileges' do + it 'should create an instance of TmsSensitivePrivileges' do + expect(@instance).to be_instance_of(CyberSource::TmsSensitivePrivileges) + end + end + describe 'test attribute "card_number_masking_format"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tms_token_formats_spec.rb b/spec/models/tms_token_formats_spec.rb new file mode 100644 index 00000000..f938bc2b --- /dev/null +++ b/spec/models/tms_token_formats_spec.rb @@ -0,0 +1,58 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TmsTokenFormats +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TmsTokenFormats' do + before do + # run before each test + @instance = CyberSource::TmsTokenFormats.new + end + + after do + # run after each test + end + + describe 'test an instance of TmsTokenFormats' do + it 'should create an instance of TmsTokenFormats' do + expect(@instance).to be_instance_of(CyberSource::TmsTokenFormats) + end + end + describe 'test attribute "customer"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "payment_instrument"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "instrument_identifier_card"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "instrument_identifier_bank_account"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/token_permissions_spec.rb b/spec/models/token_permissions_spec.rb new file mode 100644 index 00000000..34bd07b2 --- /dev/null +++ b/spec/models/token_permissions_spec.rb @@ -0,0 +1,58 @@ +=begin +#CyberSource Merged Spec + +#All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + +OpenAPI spec version: 0.0.1 + +Generated by: https://github.com/swagger-api/swagger-codegen.git +Swagger Codegen version: 2.4.38 +=end + +require 'spec_helper' +require 'json' +require 'date' + +# Unit tests for CyberSource::TokenPermissions +# Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen) +# Please update as you see appropriate +describe 'TokenPermissions' do + before do + # run before each test + @instance = CyberSource::TokenPermissions.new + end + + after do + # run after each test + end + + describe 'test an instance of TokenPermissions' do + it 'should create an instance of TokenPermissions' do + expect(@instance).to be_instance_of(CyberSource::TokenPermissions) + end + end + describe 'test attribute "create"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "read"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "update"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "delete"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + +end diff --git a/spec/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options_spec.rb b/spec/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options_spec.rb index 4aa02e5e..0d9e1107 100644 --- a/spec/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options_spec.rb +++ b/spec/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options_spec.rb @@ -55,4 +55,34 @@ end end + describe 'test attribute "business_name_english"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "bonuses"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "first_billing_month"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "number_of_installments"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + + describe 'test attribute "pre_approval_type"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + end