swagger: '2.0' info: description: All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html version: 0.0.1 title: CyberSource Merged Spec bankAccountValidation refund API host: apitest.cybersource.com basePath: / schemes: - https consumes: - application/json;charset=utf-8 produces: - application/hal+json;charset=utf-8 tags: - name: refund description: 'A refund is a follow-on transaction that uses the ID returned from either a payment or capture request. ' paths: /pts/v2/payments/{id}/refunds: post: summary: Refund a Payment description: 'Refund a Payment API is only used, if you have requested Authorization and Capture together in [/pts/v2/payments](https://developer.cybersource.com/api-reference-assets/index.html#payments_payments) API call. Include the payment ID in the POST request to refund the payment amount. ' tags: - refund operationId: refundPayment x-devcenter-metaData: categoryTag: Payments developerGuides: https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html isMLEsupported: true mleForRequest: optional parameters: - name: refundPaymentRequest in: body required: true schema: type: object properties: clientReferenceInformation: type: object properties: code: type: string maxLength: 59 description: 'Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' reconciliationId: type: string maxLength: 60 description: 'Reference number for the transaction. Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource. The actual value used in the request to the processor is provided back to you by Cybersource in the response. ' returnReconciliationId: type: string description: A new ID which is created for refund pausedRequestId: type: string maxLength: 26 description: 'Used to resume a transaction that was paused for an order modification rule to allow for payer authentication to complete. To resume and continue with the authorization/decision service flow, call the services and include the request id from the prior decision call. ' transactionId: type: string maxLength: 30 description: 'Identifier that you assign to the transaction. Normally generated by a client server to identify a unique API request. **Note** Use this field only if you want to support merchant-initiated reversal and void operations. #### Used by **Authorization, Authorization Reversal, Capture, Credit, and Void** Optional field. #### PIN Debit For a PIN debit reversal, your request must include a request ID or a merchant transaction identifier. Optional field for PIN debit purchase or credit requests. ' comments: type: string description: Brief description of the order or any comment you wish to add to the order. partner: type: object properties: originalTransactionId: type: string maxLength: 32 description: 'Value that links the previous transaction to the current follow-on request. This value is assigned by the client software that is installed on the POS terminal, which makes it available to the terminal''s software and to CyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal''s software. CyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource reporting functionality. This field is supported only on these processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX Optional field. ' developerId: type: string maxLength: 8 description: 'Identifier for the developer that helped integrate a partner solution to CyberSource. Send this value in all requests that are sent through the partner solutions built by that developer. CyberSource assigns the ID to the developer. **Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect. ' solutionId: type: string maxLength: 8 description: 'Identifier for the partner that is integrated to CyberSource. Send this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner. **Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect. ' thirdPartyCertificationNumber: type: string maxLength: 12 description: 'Value that identifies the application vendor and application version for a third party gateway. CyberSource provides you with this value during testing and validation. This field is supported only on CyberSource through VisaNet. #### Used by **Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void** Optional field. #### PIN debit Required field for PIN debit credit, PIN debit purchase, or PIN debit reversal request. ' applicationName: type: string description: 'The name of the Connection Method client (such as Virtual Terminal or SOAP Toolkit API) that the merchant uses to send a transaction request to CyberSource. ' applicationVersion: type: string description: 'Version of the CyberSource application or integration used for a transaction. ' applicationUser: type: string description: 'The entity that is responsible for running the transaction and submitting the processing request to CyberSource. This could be a person, a system, or a connection method. ' processingInformation: type: object properties: actionList: type: array description: "Array of actions (one or more) to be included in the payment to invoke bundled services along with payment status.\n\nPossible values are one or more of follows:\n\n - `AP_REFUND`: Use this when Alternative Payment Refund service is requested.\n" items: type: string paymentSolution: type: string maxLength: 12 description: "Type of digital payment solution for the transaction. Possible Values:\n\n - `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)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. \n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" reconciliationId: type: string maxLength: 60 description: 'Please check with Cybersource customer support to see if your merchant account is configured correctly so you can include this field in your request. * For Payouts: max length for FDCCompass is String (22). ' linkId: type: string maxLength: 26 description: 'Value that links the current authorization request to the original authorization request. Set this value to the ID that was returned in the reply message from the original authorization request. This value is used for: - Partial authorizations - Split shipments ' reportGroup: type: string maxLength: 25 description: 'Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**. ' visaCheckoutId: type: string maxLength: 48 description: 'Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in the Visa Checkout **callID** field. ' purchaseLevel: type: string maxLength: 1 description: Set this field to 3 to indicate that the request includes Level III data. recurringOptions: type: object properties: loanPayment: type: boolean description: 'Flag that indicates whether this is a payment towards an existing contractual loan. Possible values: - `true`: Loan payment - `false`: (default) Not a loan payment ' default: false industryDataType: type: string maxLength: 20 description: 'Indicates that the transaction includes industry-specific data. Possible Values: - `airline` - `restaurant` - `lodging` - `auto_rental` - `transit` - `healthcare_medical` - `healthcare_transit` - `transit` #### Card Present, Airlines and Auto Rental You must set this field to `airline` in order for airline data to be sent to the processor. For example, if this field is not set to `airline` or is not included in the request, no airline data is sent to the processor. You must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field is not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor. You must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this field is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor. Restaurant data is supported only on CyberSource through VisaNet. ' paymentType: type: string description: Identifier for the payment type refundOptions: type: object properties: reason: type: string description: The reason for the refund. transactionTypeIndicator: type: string maxLength: 3 description: 'This field is used identify the type of payment transaction taking place. This field is applicable for MasterCard transactions only. Possible values: - 201- Mastercard Rebate - 202- rePower Load Value - 203- Gaming Re-pay - 204- General Person-to-Person - 205- General Transfer to Own Account - 206- Agent Cash Out - 207- Payment of Own Credit Card Bill - 208- Business Disbursement - 209- Government/Non-Profit Disbursement - 210- Rapid Merchant Settlement - 211- Cash in at ATM (Usage limited to specific countries) - 212- Cash in at Point of Sale (Usage limited to specific countries) - 213- General Business to Business Transfer - 214- Mastercard Merchant Presented QR - 215- Mastercard Merchant Presented QR Refund Payment - 216- Utility Payments (for Brazil domestic use only) - 217- Government Services (for Brazil domestic use only) - 218- Mobile phone top-ups (for Brazil domestic use only) - 219- Coupon booklet payments (for Brazil domestic use only) - 220- General Person-to-Person Transfer - 221- Person-to-Person Transfer to Card Account - 222- General Transfer to Own Account - 223- Agent Cash Out - 224- Payment of Own Credit Card Bill - 225- Business Disbursement - 226- Transfer to Own Staged Digital Wallet Account - 227- Transfer to Own Debit or Prepaid Account - 228- General Business-to-Business Transfer - 229- Installment-based repayment - 230- Mastercard ATM Cash Pick-Up Transaction - 231- Cryptocurrency - 232- High-risk Securities ' merchantVerificationValue: type: string maxLength: 25 description: 'The override value of the Merchant Verification Value (MVV) received by various card brands. MVV refers to the value assigned by the card brand/network to identify participation in select merchant programs. Sample value for Visa: `101010` ' paymentInformation: type: object properties: card: type: object properties: number: type: string maxLength: 20 description: 'The customer''s payment card number, also known as the Primary Account Number (PAN). You can also use this field for encoded account numbers. #### FDMS Nashville Required. String (19) #### GPX Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### All other processors Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. ' expirationMonth: type: string maxLength: 2 description: 'Two-digit month in which the payment card expires. Format: `MM`. Valid values: `01` through `12`. Leading 0 is required. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`. #### FDMS Nashville Required field. #### All other processors Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. ' expirationYear: type: string maxLength: 4 description: 'Four-digit year in which the payment card expires. Format: `YYYY`. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (`1900` through `3000`) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`. #### FDMS Nashville Required field. #### FDC Nashville Global and FDMS South You can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year. #### All other processors Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. ' type: type: string description: 'Three-digit value that indicates the card type. **IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. Use card type value `001` for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `003`: American Express - `004`: Discover - `005`: Diners Club - `006`: Carte Blanche[^1] - `007`: JCB[^1] - `008`: Optima - `009`: GE Private Label - `010`: Beneficial Private Label - `011`: Twinpay Credit Card - `012`: Twinpay Debit Card - `013`: WalMart - `014`: Enroute[^1] - `015`: Lowe''s Consumer - `016`: Home Depot Consumer - `017`: MBNA - `018`: Dick''s Sportswear - `019`: Casual Corner - `020`: Sears - `021`: JAL[^1] - `023`: Disney Card - `024`: Maestro (UK Domestic)[^1] - `025`: Sam''s Club Consumer - `026`: Sam''s Club Business - `027`: Nico''s - `028`: Paymentech Bill Me Later - `029`: Bebe - `030`: Restoration Hardware - `031`: Delta Online - `032`: Solo - `033`: Visa Electron[^1]. Do not use this value. Use `001` for all Visa card types. - `034`: Dankort[^1] - `035`: Laser - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `038`: Pinless Debit - `039`: Encoded account number[^1] - `040`: UATP[^1] - `041`: HOUSEHOLD - `042`: Maestro (International)[^1] - `043`: GE MONEY - `044`: Korean Cards - `045`: Style Cards - `046`: JCrew - `047`: Payeasecn eWallet - `048`: Payeasecn Bank Transfer - `049`: Meijer - `050`: Hipercard[^2,3] - `051`: Aura - `052`: Redecard - `053`: Orico card - `054`: Elo[^3] - `055`: Capitol One Private Label - `056`: Carnet - `057`: Costco Private Label - `058`: Carnet - `059`: ValueLink - `060`: MADA - `061`: RuPay - `062`: China UnionPay - `063`: Falabella Private Label - `064`: Prompt Card - `065`: Korean Domestic - `066`: Banricompras - `067`: MEEZA - `068`: PayPak - `070`: EFTPOS - `071`: Codensa - `072`: Olimpica - `073`: Colsubsidio - `074`: Tuya - `075`: Sodexo - `076`: Naranja - `077`: Cabal - `078`: DINELCO - `079`: PANAL - `080`: EPM - `081`: Jaywan [^1]: For this card type, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in your request for an authorization or a stand-alone credit. [^2]: For this card type on Cielo 3.0, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. This card type is not supported on Cielo 1.5. [^3]: For this card type on Getnet and Rede, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. [^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services. #### Used by **Authorization** Required for Carte Blanche and JCB. Optional for all other card types. #### Card Present reply This field is included in the reply message when the client software that is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details. You must contact customer support to have your account enabled to receive these fields in the credit reply message. Returned by the Credit service. This reply field is only supported by the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. #### GPX This field only supports transactions from the following card types: - Visa - Mastercard - AMEX - Discover - Diners - JCB - Union Pay International ' accountEncoderId: type: string maxLength: 3 description: 'Identifier for the issuing bank that provided the customer''s encoded account number. Contact your processor for the bank''s ID. ' issueNumber: type: string maxLength: 5 description: 'Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. **Note** The issue number is not required for Maestro (UK Domestic) transactions. ' startMonth: type: string maxLength: 2 description: '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. ' startYear: type: string maxLength: 4 description: '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. ' sourceAccountType: type: string maxLength: 20 description: "Flag that specifies the type of account associated with the card. \nThe cardholder provides this information during the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CH`: Checking account\n - `CR`: Credit card account\n - `SA`: Saving account\n - `LI`: Line of credit or credit portion of combo card\n - `PP`: Prepaid card account or prepaid portion of combo card\n - `UA`: Universal account\n\nIf useAs is set to credit/debit and there is a value in SourceAccountType, the value in the SourceAccountType field will take precedence.\nIf useAs is set to CR/DB and there is a value in SourceAccountType, the value in the useAs field will take precedence.\n" sourceAccountTypeDetails: type: string maxLength: 4 description: 'Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP). Possible values for line of credit: - `AGRC`: Visa Agro Custeio - `AGRE`: Visa Agro Electron - `AGRI`: Visa Agro Investimento - `AGRO`: Visa Agro Possible values for prepaid card: - `VVA`: Visa Vale Alimentacao - `VVF`: Visa Vale Flex - `VVR`: Visa Vale Refeicao This field is supported only for combo card transactions in Brazil on CyberSource through VisaNet. ' securityCode: type: string maxLength: 4 description: 'Card Verification Number. #### FDMS Nashville Required for American Express or if swiped; otherwise, optional. #### Ingenico ePayments Do not include this field when `commerceIndicator=recurring`. **Note** Ingenico ePayments was previously called _Global Collect_. #### TSYS Acquiring Solutions Optional if pointOfSaleInformation.entryMode=keyed; otherwise, not used. #### GPX Optional. #### All other processors: Optional. ' useAs: type: string maxLength: 20 description: "Flag that specifies the type of account associated with the card. This field is available only for China UnionPay, Cielo, Comercio Latino and Visa Platform Connect.\nThe cardholder provides this information during the payment process. This field is required for:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n\n**China UnionPayCard Transactions on China UnionPay:**\nPossible values:\n - C: Domestic credit card\n - D: Domestic debit card\n - F: International credit card\n - I: International debit card\n\nWhen the value is D, the e-commerce indicator and CAVV fields must be included in the authorization request.\nWhen the value is C, F or I the card verification number, expiration month and expiration year fields must in included in the authorization request.\n\n**Cielo and Comercio Latino Credit Card Transactions:**\nOn these processors, this field is supported only for authorizations. Possible values:\n - CR: Credit card\n - DB: Debit card \n\n**Visa Platform Connect Credit Card Transactions:**\nThis field is supported for all card types on Visa Platform Connect.\nFor combo **card present** transactions with Mastercard on Brazilian-issued cards, possible values:\n - CR: Credit card\n - DB: Debit Card\n\nFor combo **card not present** transactions with Mastercard on Brazilian-issued cards, possible values:\n - C: Credit card\n - D: Debit card\n\nA value of CR or DB in the useAs field takes precedence over any value in the Source Account Type field.\n" bank: type: object properties: account: type: object properties: type: type: string maxLength: 1 description: "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" number: type: string maxLength: 30 description: 'Account number. When processing encoded account numbers, use this field for the encoded account number. ' encoderId: type: string maxLength: 3 description: 'Identifier for the bank that provided the customer''s encoded account number. To obtain the bank identifier, contact your processor. ' checkNumber: type: string maxLength: 8 description: 'Check number. Chase Paymentech Solutions - Optional. CyberSource ACH Service - Not used. RBS WorldPay Atlanta - Optional on debits. Required on credits. TeleCheck - Strongly recommended on debit requests. Optional on credits. ' checkImageReferenceNumber: type: string maxLength: 32 description: 'Image reference number associated with the check. You cannot include any special characters. ' routingNumber: type: string maxLength: 9 description: 'Bank routing number. This is also called the _transit number_. ' iban: type: string maxLength: 50 description: 'International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction. ' swiftCode: type: string description: 'Bank''s SWIFT code. You can use this field only when scoring a direct debit transaction. Required only for crossborder transactions. ' tokenizedCard: type: object properties: number: type: string maxLength: 20 description: 'Customer''s payment network token value. ' expirationMonth: type: string maxLength: 2 description: 'One of two possible meanings: - The two-digit month in which a token expires. - The two-digit month in which a card expires. Format: `MM` Possible values: `01` through `12` **NOTE** The meaning of this field is dependent on the payment processor that is returning the value in an authorization reply. Please see the processor-specific details below. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\ **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Samsung Pay and Apple Pay Month in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction. ' expirationYear: type: string maxLength: 4 description: 'One of two possible meanings: - The four-digit year in which a token expires. - The four-digit year in which a card expires. Format: `YYYY` Possible values: `1900` through `3000` Data type: Non-negative integer **NOTE** The meaning of this field is dependent on the payment processor that is returning the value in an authorization reply. Please see the processor-specific details below. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through 3000) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`. #### FDC Nashville Global and FDMS South You can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of the year. #### Samsung Pay and Apple Pay Year in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. ' type: type: string description: 'Three-digit value that indicates the card type. **IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. Use card type value `001` for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `003`: American Express - `004`: Discover - `005`: Diners Club - `006`: Carte Blanche[^1] - `007`: JCB[^1] - `008`: Optima - `009`: GE Private Label - `010`: Beneficial Private Label - `011`: Twinpay Credit Card - `012`: Twinpay Debit Card - `013`: WalMart - `014`: Enroute[^1] - `015`: Lowe''s Consumer - `016`: Home Depot Consumer - `017`: MBNA - `018`: Dick''s Sportswear - `019`: Casual Corner - `020`: Sears - `021`: JAL[^1] - `023`: Disney Card - `024`: Maestro (UK Domestic)[^1] - `025`: Sam''s Club Consumer - `026`: Sam''s Club Business - `027`: Nico''s - `028`: Paymentech Bill Me Later - `029`: Bebe - `030`: Restoration Hardware - `031`: Delta Online - `032`: Solo - `033`: Visa Electron[^1]. Do not use this value. Use `001` for all Visa card types. - `034`: Dankort[^1] - `035`: Laser - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `038`: Pinless Debit - `039`: Encoded account number[^1] - `040`: UATP[^1] - `041`: HOUSEHOLD - `042`: Maestro (International)[^1] - `043`: GE MONEY - `044`: Korean Cards - `045`: Style Cards - `046`: JCrew - `047`: Payeasecn eWallet - `048`: Payeasecn Bank Transfer - `049`: Meijer - `050`: Hipercard[^2,3] - `051`: Aura - `052`: Redecard - `053`: Orico card - `054`: Elo[^3] - `055`: Capitol One Private Label - `056`: Carnet - `057`: Costco Private Label - `058`: Carnet - `059`: ValueLink - `060`: MADA - `061`: RuPay - `062`: China UnionPay - `063`: Falabella Private Label - `064`: Prompt Card - `065`: Korean Domestic - `066`: Banricompras - `067`: MEEZA - `068`: PayPak - `070`: EFTPOS - `071`: Codensa - `072`: Olimpica - `073`: Colsubsidio - `074`: Tuya - `075`: Sodexo - `076`: Naranja - `077`: Cabal - `078`: DINELCO - `079`: PANAL - `080`: EPM - `081`: Jaywan [^1]: For this card type, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in your request for an authorization or a stand-alone credit. [^2]: For this card type on Cielo 3.0, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. This card type is not supported on Cielo 1.5. [^3]: For this card type on Getnet and Rede, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. [^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services. #### Used by **Authorization** Required for Carte Blanche and JCB. Optional for all other card types. #### Card Present reply This field is included in the reply message when the client software that is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details. You must contact customer support to have your account enabled to receive these fields in the credit reply message. Returned by the Credit service. This reply field is only supported by the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. #### GPX This field only supports transactions from the following card types: - Visa - Mastercard - AMEX - Discover - Diners - JCB - Union Pay International ' cryptogram: type: string maxLength: 255 description: This field contains token information. requestorId: type: string maxLength: 11 description: 'Value that identifies your business and indicates that the cardholder''s account number is tokenized. This value is assigned by the token service provider and is unique within the token service provider''s database. **Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**. #### PIN debit Optional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used. ' transactionType: type: string maxLength: 1 description: 'Type of transaction that provided the token data. This value does not specify the token service provider; it specifies the entity that provided you with information about the token. Possible value: - `2`: Near-field communication (NFC) transaction. The customer''s mobile device provided the token data for a contactless EMV transaction. For recurring transactions, use this value if the original transaction was a contactless EMV transaction. #### Visa Platform Connect - `1`: For Rupay and In App tokenization. Example: InApp apple pay. - `3`: Card/Credential On File Tokenization. **NOTE** No CyberSource through VisaNet acquirers support EMV at this time. Required field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used. #### Rupay - `3`: Card/Credential On File Tokenization. - `4`: Tokenizined Transaction. Should be used for Guest Checkout transactions with token. ' assuranceLevel: type: string maxLength: 2 description: 'Confidence level of the tokenization. This value is assigned by the token service provider. **Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**. Returned by PIN debit credit or PIN debit purchase. **Note** Merchants supported for **CyberSource through VisaNet**/**Visa Platform Connect** are advised not to use this field. ' storageMethod: type: string maxLength: 3 description: "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" securityCode: type: string maxLength: 4 description: 'Card Verification Number (CVN). #### Ingenico ePayments Do not include this field when **commerceIndicator=recurring**. **Note** Ingenico ePayments was previously called _Global Collect_. ' securityCodeIndicator: type: string maxLength: 1 description: "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" assuranceMethod: type: string maxLength: 2 description: 'Confidence level of the tokenization. This value is assigned by the token service provider. **Note** This field is supported only for **Visa Platform Connect** ' fluidData: type: object properties: keySerialNumber: type: string description: 'The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html) ' descriptor: type: string maxLength: 128 description: 'The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values: Samsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ= Note: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor. Used by Authorization and Standalone Credits. Required for authorizations and standalone credits. Card Present processing: Format of the encrypted payment data. The value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`. The value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field. If paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==` If paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504` ' value: type: string maxLength: 4000 description: 'Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant. Used by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method. Card Present processing This field represents the encrypted payment data generated by the payment terminal/device. ' encoding: type: string maxLength: 6 description: 'Encoding method used to encrypt the payment data. Valid values: `Base64`, `HEX` If no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding ' customer: type: object properties: customerId: type: string description: 'Unique identifier for the customer''s card and billing information. When you use Payment Tokenization or Recurring Billing and you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. **NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer''s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn''t need to pass in data such as the card number or expiration date in the request itself. ' id: type: string description: 'Unique identifier for the Customer token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 paymentInstrument: type: object properties: id: type: string description: 'Unique identifier for the Payment Instrument token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 instrumentIdentifier: type: object properties: id: type: string description: 'Unique identifier for the Instrument Identifier token used in the transaction. When you include this value in your request, many of the fields that can be supplied for an authorization or credit become optional. ' minLength: 12 maxLength: 32 shippingAddress: type: object properties: id: type: string description: 'Unique identifier for the Customers Shipping Address token used in the transaction. When you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit become optional. ' minLength: 1 maxLength: 32 legacyToken: type: object properties: id: type: string description: 'Unique identifier for the legacy Secure Storage token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 paymentType: type: object properties: name: type: string description: 'A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) - `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit) - `bankTransfer` (use for Online Bank Transafer for methods such as P24, iDeal, Estonia Bank, KCP) - `localCard` (KCP Local card via Altpay) - `carrierBilling` (KCP Carrier Billing via Altpay) ' subTypeName: type: string description: 'In case the APM supports multiple modes of initiation (e.g. Alipay via QR Code or Barcode) ' method: type: object properties: name: type: string description: 'A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal, 7Eleven, alfamart, bofaPayByBank, payToPayByBank, etc For Japan Payment Processing Valid Values: - 1 Banking Data - 2 Authorization Data #### Via KCP - `KCP` : Local Card, Bank Transfer and Carrier Billing. - `PAYCO` - `KAKAOPAY` - `NAVERPAY` ' eWallet: type: object properties: fundingSource: type: string maxLength: 30 description: Payment mode for the authorization or order transaction.  INSTANT_TRANSFER  MANUAL_BANK_TRANSFER  DELAYED_TRANSFER  ECHECK  UNRESTRICTED (default)—this value is available only when configured by PayPal for the merchant. INSTANT paymentAccountReference: type: object properties: id: type: string maxLength: 29 description: 'A Payment Account Reference number (PAR) is a unique reference value associated with a specific card holder PAN. It identifies the card account, not just a card. PAR is a non-payment identifier that can be associated to PANs and tokens, as defined by EMVCo. PAR allows all participants in the payments chain to have a single, non-sensitive value assigned to a consumer. This value can be used in place of sensitive card holder identification fields, and transmitted across the payments ecosystem to facilitate card holder identification. ' thirdPartyToken: type: object properties: id: type: string maxLength: 16 description: 'When a third party is being used for tokenization, this field contains the token ID. See tokenInformation.thirdPartyToken.source to identify the provider. ' initiationChannel: type: string maxLength: 2 description: 'Mastercard-defined code that indicates how the account information was obtained for credit authorization transactions. Possible values: - `00`: Card (default) - `01`: Mobile network operator (MNO) controlled removable secure element (SIM or UICC) personalized for use with a mobile phone or smartphone - `02`: Key fob - `03`: Watch - `04`: Mobile tag - `05`: Wristband - `06`: Mobile phone case or sleeve - `07`: Mobile phone or smartphone with fixed (nonremovable) secure element controlled by the MNO (for example, code division multiple access (CDMA)) - `08`: Removable secure element not controlled by the MNO (for example, memory card personalized for use with a mobile phone or smartphone) - `09`: Mobile phone or smartphone with a fixed (nonremovable) secure element not controlled by the MNO - `10`: MNO-controlled removable secure element (SIM or UICC) personalized for use with a tablet or e-book - `11`: Tablet or e-book with a fixed (nonremovable) secure element controlled by the MNO - `12`: Removable secure element not controlled by the MNO (for example, memory card personalized for use with a tablet or e-book) - `13`: Tablet or e-book with fixed (nonremovable) secure element not controlled by the MNO - `14` - `99`: Reserved for future use This field flows in ISO Field 104 DSID 65 Tag 04. This field is supported for Mastercard credit authorization transactions. #### Used by **Credit Authorization (Standalone)** Optional field. ' orderInformation: type: object properties: amountDetails: type: object properties: totalAmount: type: string maxLength: 19 description: "Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters.\nCyberSource truncates the amount to the correct number of decimal places.\n\n**Note** For CTV, FDCCompass, Paymentech processors, the maximum length for this field is 12.\n\n**Important** Some processors have specific requirements and limitations, such as maximum amounts and maximum field lengths.\n\nIf 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. \n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing / Pay By Link\nRequired for creating a new invoice or payment link.\n\n#### PIN Debit\nAmount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount.\n\nRequired field for PIN Debit purchase and PIN Debit credit requests.\nOptional field for PIN Debit reversal requests.\n\n#### GPX\nThis field is optional for reversing an authorization or credit; however, for all other processors, these fields are required.\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 this field or the 1st line item in the order and the specific line-order amount in your request. \n\n#### DCC for First Data\nNot used.\n" currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' discountAmount: type: string maxLength: 15 description: 'Total discount amount applied to the order. ' dutyAmount: type: string maxLength: 15 description: 'Total charges for any import or export duties included in the order. ' gratuityAmount: type: string maxLength: 13 description: 'Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant. When your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not submit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the issuer has chargeback rights for the excess amount. Used by **Capture** Optional field. #### CyberSource through VisaNet Restaurant data is supported only on CyberSource through VisaNet when card is present. ' taxAmount: type: string maxLength: 12 description: 'Total tax amount for all the items in the order. ' nationalTaxIncluded: type: string maxLength: 1 description: "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" taxAppliedAfterDiscount: type: string maxLength: 1 description: "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" taxAppliedLevel: type: string maxLength: 1 description: "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" taxTypeCode: type: string maxLength: 3 description: "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" freightAmount: type: string maxLength: 13 description: 'Total freight or shipping and handling charges for the order. When you include this field in your request, you must also include the **totalAmount** field. ' foreignAmount: type: string maxLength: 15 description: 'Set this field to the converted amount that was returned by the DCC provider. ' foreignCurrency: type: string maxLength: 5 description: 'Set this field to the converted amount that was returned by the DCC provider. ' exchangeRate: type: string maxLength: 13 description: 'Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places. ' exchangeRateTimeStamp: type: string maxLength: 16 description: 'Time stamp for the exchange rate. This value is returned by the DCC service. Format: `YYYYMMDD~HH:MM` where ~ denotes a space. ' amexAdditionalAmounts: type: array items: type: object properties: code: type: string maxLength: 3 description: 'Additional amount type. This field is supported only for **American Express Direct**. ' amount: type: string maxLength: 12 description: 'Additional amount. This field is supported only for **American Express Direct**. ' taxDetails: type: array items: type: object properties: type: type: string description: 'Indicates the type of tax data for the _taxDetails_ object. Possible values: - `alternate` - `local` - `national` - `vat` - `other` - `green` ' amount: type: string maxLength: 13 description: 'Indicates the amount of tax based on the `type` field as described in the table below: | type | type description | | ------------- |:-------------:| | `alternate` | Total amount of alternate tax for the order. | | `local` | Sales tax for the order. | | `national` | National tax for the order. | | `vat` | Total amount of value added tax (VAT) included in the order. | | `other` | Other tax. | | `green` | Green tax amount for Korean Processing. | ' rate: type: string maxLength: 6 description: 'Rate of VAT or other tax for the order. Example 0.040 (=4%) Valid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated) ' code: type: string maxLength: 4 description: 'Type of tax being applied to the item. #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator` ' taxId: type: string maxLength: 15 description: 'Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value, including zero. You may send this field without sending alternate tax amount. ' applied: type: boolean description: 'Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is included in the request. Possible values: - `false`: alternate tax amount is not included in the request. - `true`: alternate tax amount is included in the request. ' exemptionCode: type: string maxLength: 1 description: 'Status code for exemption from sales and use tax. 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. ' serviceFeeAmount: type: string maxLength: 15 description: 'Service fee. Required for service fee transactions. ' originalCurrency: type: string maxLength: 15 description: 'Your local pricing currency code. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) ' cashbackAmount: type: string maxLength: 13 description: 'Cashback amount in the acquirer''s currency. If a cashback amount is included in the request, it must be included in the `orderInformation.amountDetails.totalAmount` value. This field is supported only on CyberSource through VisaNet. #### Used by **Authorization** Optional. **Authorization Reversal** Optional. #### PIN debit Optional field for PIN debit purchase, PIN debit credit or PIN debit reversal. ' billTo: type: object properties: title: type: string maxLength: 60 description: 'Title. ' firstName: type: string maxLength: 60 description: 'Customer''s first name. This name must be the same as the name on the card. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### SEPA Required for Create Mandate and Import Mandate #### BACS Required for Import Mandate #### CyberSource Latin American Processing **Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\ **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' middleName: type: string maxLength: 60 description: 'Customer''s middle name. ' lastName: type: string maxLength: 60 description: 'Customer''s last name. This name must be the same as the name on the card. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### SEPA Required for Create Mandate and Import Mandate #### BACS Required for Import Mandate #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### CyberSource Latin American Processing **Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\ **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### OmniPay Direct Optional field. #### RBS WorldPay Atlanta Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' company: type: object properties: name: type: string maxLength: 60 description: 'Name of the customer''s company. **CyberSource through VisaNet** Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. ' address1: type: string maxLength: 40 description: First line in the street address of the company purchasing the product. address2: type: string maxLength: 40 description: Additional address information for the company purchasing the product. locality: type: string maxLength: 30 description: City in the address of the company purchasing the product. administrativeArea: type: string maxLength: 50 description: 'State or province in the address of the company purchasing the product. Use the State, Province, and Territory Codes for the United States and Canada. ' postalCode: type: string maxLength: 10 description: 'Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits. When the company country is the U.S., the 9-digit postal code must follow this format: **[5 digits][dash][4 digits]** #### Example `12345-6789` When the company country is Canada, the 6-digit postal code must follow this format: **[alpha][numeric][alpha][space][numeric][alpha][numeric]** #### Example `A1B 2C3` ' country: type: string maxLength: 2 description: 'Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). ' address1: type: string maxLength: 60 description: 'Payment card billing street address as it appears on the credit card issuer''s records. #### SEPA Required for Create Mandate and Import Mandate #### Atos This field must not contain colons (:). #### CyberSource through VisaNet **Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks. Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### FDMS Nashville When the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_, it must be sent as _1 1st Street_. Required if keyed; not used if swiped. String (20) #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### All other processors: Optional. String (60) #### For Payouts This field may be sent only for FDC Compass. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. ' address2: type: string maxLength: 60 description: 'Used for additional address information. For example: _Attention: Accounts Payable_ Optional field. For Payouts: This field may be sent only for FDC Compass. #### Atos This field must not contain colons (:). #### CyberSource through VisaNet **Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks. Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions This value is used for AVS. #### FDMS Nashville `orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters. String (20) #### All Other Processors String (60) ' locality: type: string maxLength: 50 description: 'Payment card billing city. #### SEPA Required for Create Mandate and Import Mandate #### Atos This field must not contain colons (:). #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' district: type: string maxLength: 50 description: 'Customer''s neighborhood, community, or region (a barrio in Brazil) within the city or municipality. This field is available only on **Cielo**. ' administrativeArea: type: string maxLength: 50 description: 'State or province of the billing address. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf). For Payouts: This field may be sent only for FDC Compass. ##### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' postalCode: type: string maxLength: 10 description: "Postal code for the billing address. The postal code must consist of 5 to 9 digits.\n\nWhen the billing country is the U.S., the 9-digit postal code must follow this format:\n[5 digits][dash][4 digits]\n\n**Example** `12345-6789`\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space][numeric][alpha][numeric]\n\n**Example** `A1B 2C3`\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### SEPA\nRequired for Create Mandate and Import Mandate\n\n#### For Payouts:\n This field may be sent only for FDC Compass.\n\n#### American Express Direct\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the remaining value is longer than nine characters, truncates the value starting from the right side.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\nCredit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet\naccepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations\nof the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the\ncredit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII\ncharacters for transmission to the credit card networks.\n\n#### FDMS Nashville\nRequired if `pointOfSaleInformation.entryMode=keyed` and the address is in the U.S. or Canada.\nOptional if `pointOfSaleInformation.entryMode=keyed` and the address is **not** in the U.S. or Canada.\nNot used if swiped.\n\n#### RBS WorldPay Atlanta:\nFor best card-present keyed rates, send the postal code if `pointOfSaleInformation.entryMode=keyed`.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional field.\n" county: type: string maxLength: 50 description: U.S. county if available. country: type: string maxLength: 3 description: 'Payment card billing country. Use the two-character [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). #### SEPA/BACS Required for Create Mandate and Import Mandate #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' email: type: string maxLength: 255 description: 'Customer''s email address, including the full domain name. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Invoicing Email address for the customer for sending the invoice. If the invoice is in SENT status and email is updated, the old email customer payment link won''t work and you must resend the invoice with the new payment link. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' phoneNumber: type: string maxLength: 15 description: 'Customer''s phone number. It is recommended that you include the country code when the order is from outside the U.S. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Optional field. #### Worldpay VAP Optional field. #### All other processors Not used. ' shipTo: type: object properties: administrativeArea: type: string maxLength: 50 description: "State or province of the shipping address. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf) (maximum length: 2) \n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder's location when shipTo objects are not present.\n" country: type: string description: 'Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf) Required field for authorization if any shipping address information is included in the request; otherwise, optional. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. Billing address objects will be used to determine the cardholder''s location when shipTo objects are not present. ' maxLength: 3 postalCode: type: string maxLength: 32 description: 'Postal code for the shipping address. The postal code must consist of 5 to 9 digits. Required field for authorization if any shipping address information is included in the request and shipping to the U.S. or Canada; otherwise, optional. When the billing country is the U.S., the 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example 12345-6789 When the billing country is Canada, the 6-digit postal code must follow this format: [alpha][numeric][alpha][space][numeric][alpha][numeric] Example A1B 2C3 #### American Express Direct Before sending the postal code to the processor, all nonalphanumeric characters are removed and, if the remaining value is longer than nine characters, the value is truncated starting from the right side. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. Billing address objects will be used to determine the cardholder''s location when shipTo objects are not present. ' email: type: string description: Email of the recipient. maxLength: 255 county: type: string description: U.S. county if available. maxLength: 50 lineItems: type: array items: type: object properties: productCode: type: string maxLength: 255 description: 'Type of product. The value for this field is used to identify the product category (electronic, handling, physical, service, or shipping). The default value is `default`. If you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than `default` or one of the values related to shipping and/or handling, then `orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and `orderInformation.lineItems[].productSku` fields are required. Optional field. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. The Product Codes for the tax service are located in the Cybersource Tax Codes guide. Contact Customer Support to request the guide. If you don''t send a tax service Product Code in your tax request, product-based rules or exemptions will not be applied and the transaction will default to fully taxable in the locations where you''ve indicated you need to collect tax [by way of nexus, no nexus, or seller registration number fields]. ' productName: type: string maxLength: 255 description: 'For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. ' productSku: type: string maxLength: 255 description: 'Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. 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 values related to shipping and/or handling. ' quantity: type: integer minimum: 1 maximum: 999999999 default: 1 description: '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. ' unitPrice: type: string maxLength: 15 description: '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) ' unitOfMeasure: type: string maxLength: 12 description: 'Unit of measure, or unit of measure code, for the item. ' totalAmount: type: string maxLength: 13 description: 'Total amount for the item. Normally calculated as the unit price times quantity. When `orderInformation.lineItems[].productCode` is "gift_card", this is the purchase amount total for prepaid gift cards in major units. Example: 123.45 USD = 123 ' taxAmount: type: string maxLength: 15 description: "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" taxRate: type: string maxLength: 7 description: 'Tax rate applied to the item. **Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated). **Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%). ' taxAppliedAfterDiscount: type: string maxLength: 1 description: "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" taxStatusIndicator: type: string maxLength: 1 description: "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" taxTypeCode: type: string maxLength: 4 description: 'Type of tax being applied to the item. #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator` ' amountIncludesTax: type: boolean description: "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" typeOfSupply: type: string maxLength: 2 description: "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" commodityCode: type: string maxLength: 15 description: 'Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes. ' discountAmount: type: string maxLength: 13 description: Discount applied to the item. discountApplied: type: boolean description: "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" discountRate: type: string maxLength: 6 description: 'Rate the item is discounted. Maximum of 2 decimal places. Example 5.25 (=5.25%) ' invoiceNumber: type: string maxLength: 23 description: 'Field to support an invoice number for a transaction. You must specify the number of line items that will include an invoice number. By default, the first line item will include an invoice number field. The invoice number field can be included for up to 10 line items. ' taxDetails: type: array items: type: object properties: type: type: string description: 'Indicates the type of tax data for the _taxDetails_ object. Possible values: - `alternate` - `local` - `national` - `vat` - `other` - `green` ' amount: type: string maxLength: 13 description: 'Indicates the amount of tax based on the `type` field as described in the table below: | type | type description | | ------------- |:-------------:| | `alternate` | Total amount of alternate tax for the order. | | `local` | Sales tax for the order. | | `national` | National tax for the order. | | `vat` | Total amount of value added tax (VAT) included in the order. | | `other` | Other tax. | | `green` | Green tax amount for Korean Processing. | ' rate: type: string maxLength: 6 description: 'Rate of VAT or other tax for the order. Example 0.040 (=4%) Valid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated) ' code: type: string maxLength: 4 description: 'Type of tax being applied to the item. #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator` ' taxId: type: string maxLength: 15 description: 'Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value, including zero. You may send this field without sending alternate tax amount. ' applied: type: boolean description: 'Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is included in the request. Possible values: - `false`: alternate tax amount is not included in the request. - `true`: alternate tax amount is included in the request. ' exemptionCode: type: string maxLength: 1 description: 'Status code for exemption from sales and use tax. 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. ' invoiceDetails: type: object properties: purchaseOrderNumber: type: string maxLength: 50 description: 'Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource recommends that you do not populate the field with all zeros or nines. ' purchaseOrderDate: type: string maxLength: 10 description: 'Date the order was processed. `Format: YYYY-MM-DD`. ' purchaseContactName: type: string maxLength: 36 description: 'The name of the individual or the company contacted for company authorized purchases. ' taxable: type: boolean description: "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nPossible values:\n - **true**\n - **false**\n" vatInvoiceReferenceNumber: type: string maxLength: 15 description: 'VAT invoice number associated with the transaction. ' commodityCode: type: string maxLength: 4 description: 'International description code of the overall order''s goods or services or the Categorizes purchases for VAT reporting. Contact your acquirer for a list of codes. ' transactionAdviceAddendum: type: array items: type: object properties: data: type: string maxLength: 40 description: 'Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information about a transaction on the customer''s American Express card statement. When you send TAA fields, start with amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be ignored. To use these fields, contact CyberSource Customer Support to have your account enabled for this feature. ' shippingDetails: type: object properties: shipFromPostalCode: type: string maxLength: 10 description: 'Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is the postal code associated with your CyberSource account. The postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code must follow this format: `[5 digits][dash][4 digits]` Example 12345-6789 When the billing country is Canada, the 6-digit postal code must follow this format: `[alpha][numeric][alpha][space] [numeric][alpha][numeric]` Example A1B 2C3 This field is frequently used for Level II and Level III transactions. ' digitalCurrency: type: object description: Digital currency information for the order. properties: type: type: string maxLength: 10 description: 'Currently, Visa uses a broad "cryptocurrency" indicator. The enhancement will introduce specific values to identify the type of digital currency or coin involved, such as Central Bank Digital Currency (CBDC), stable coins, blockchain-native tokens, and Non-Fungible Tokens (NFTs). Values: - 1: CBDC_TOKENDEPOSIT - 2: STABLE_COIN - 3: BLOCKCHAIN_NATIVE_TOKEN - 4: NFT' rampProviderCountry: type: string maxLength: 10 description: Ramp is a platform where we can buy Digital currency, for example Coinbase. This value identifies the country where the Ramp provider is registered. conversionAffiliate: type: string maxLength: 10 description: Affiliate is the platform for the digital currency transactions. The merchant provides the Affiliate country for transaction processing. The combination of affiliate country and ramp country helps to derive the foreign retail indicator. buyerInformation: type: object properties: merchantCustomerId: type: string maxLength: 100 description: 'Your identifier for the customer. When a subscription or customer profile is being created, the maximum length for this field for most processors is 30. Otherwise, the maximum length is 100. #### Comercio Latino For recurring payments in Mexico, the value is the customer''s contract number. Note Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions. #### Worldpay VAP For a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order given, for a customer account ID value and uses the first value it finds: 1. `customer_account_id` value in the follow-on credit request 2. Customer account ID value that was used for the capture that is being credited 3. Customer account ID value that was used for the original authorization If a customer account ID value cannot be found in any of these locations, then no value is used. ' vatRegistrationNumber: type: string maxLength: 20 description: 'Customer''s government-assigned tax identification number. #### Tax Calculation Optional for international and value added taxes only. Not applicable to U.S. and Canadian taxes. ' dateOfBirth: type: string maxLength: 8 description: '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. ' gender: type: string maxLength: 3 description: Customer's gender. Possible values are F (female), M (male),O (other). language: type: string maxLength: 5 description: "language setting of the user. \nSupports 2-character language codes (e.g., en, fr) and 5-character locale values (e.g., en-US, fr-CA).\n" personalIdentification: type: array items: type: object properties: id: type: string maxLength: 26 description: "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports. \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" deviceInformation: type: object properties: hostName: type: string maxLength: 60 description: DNS resolved hostname from `ipAddress`. ipAddress: type: string maxLength: 45 description: 'IP address of the customer. #### Used by **Authorization, Capture, and Credit** Optional field. ' userAgent: type: string maxLength: 40 description: 'Customer''s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies the Netscape browser. ' merchantInformation: type: object properties: merchantDescriptor: type: object properties: name: type: string description: 'Your merchant name. **Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22. #### PIN debit Your business name. This name is displayed on the cardholder''s statement. When you include more than one consecutive space, extra spaces are removed. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. Optional field for PIN debit credit or PIN debit purchase requests. #### Airline processing Your merchant name. This name is displayed on the cardholder''s statement. When you include more than one consecutive space, extra spaces are removed. **Note** Some airline fee programs may require the original ticket number (ticket identifier) or the ancillary service description in positions 13 through 23 of this field. **Important** This value must consist of English characters. Required for captures and credits. ' alternateName: type: string maxLength: 13 description: 'An alternate name for the merchant. ' contact: type: string maxLength: 25 description: 'Contact information for the merchant. **Note** These are the maximum data lengths for the following payment processors: - FDCCompass (13) - Paymentech (13) ' address1: type: string maxLength: 60 description: 'First line of merchant''s address. ' locality: type: string maxLength: 30 description: 'Merchant''s City. #### PIN debit City for your business location. This value might be displayed on the cardholder''s statement. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. Optional field for PIN debit credit or PIN debit purchase requests. ' country: type: string maxLength: 3 description: 'Merchant''s country. #### PIN debit Country code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf) This value might be displayed on the cardholder''s statement. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. **Note** If your business is located in the U.S. or Canada and you include this field in a request, you must also include `merchantInformation.merchantDescriptor.administrativeArea`. Optional field for PIN debit credit or PIN debit purchase. ' postalCode: type: string maxLength: 14 description: 'Merchant''s postal code. #### PIN debit Postal code for your business location. This value might be displayed on the cardholder''s statement. If your business is domiciled in the U.S., you can use a 5-digit or 9-digit postal code. A 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example: `12345-6789` If your business is domiciled in Canada, you can use a 6-digit or 9-digit postal code. A 6-digit postal code must follow this format: [alpha][numeric][alpha][space] [numeric][alpha][numeric] Example: `A1B 2C3` When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. **Note** This field is supported only for businesses located in the U.S. or Canada. **Important** Mastercard requires a postal code for any country that uses postal codes. You can provide the postal code in your account or you can include this field in your request. Optional field for PIN debit credit or PIN debit purchase. ' administrativeArea: type: string description: 'The state where the merchant is located. #### PIN debit State code or region code for your business. Use the Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf) This value might be displayed on the cardholder''s statement. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. **Note** This field is supported only for businesses located in the U.S. or Canada. Optional field for PIN debit credit or PIN debit purchase. ' phone: type: string maxLength: 13 description: 'Merchant phone as contact information for CNP transactions ' url: type: string maxLength: 255 description: 'Address of company''s website provided by merchant ' countryOfOrigin: type: string maxLength: 2 description: '#### Visa Platform Connect This field will indicate merchant country of origin ' storeId: type: string maxLength: 50 description: 'The identifier of the store. ' storeName: type: string maxLength: 50 description: 'The name of the store. ' customerServicePhoneNumber: type: string maxLength: 27 description: '#### Visa Platform Connect Indicates customer service phone number of Merchant. ' categoryCode: type: integer maximum: 9999 description: 'The value for this field is a four-digit number that the payment card industry uses to classify merchants into market segments. A payment card company assigned one or more of these values to your business when you started accepting the payment card company''s cards. When you do not include this field in your request, CyberSource uses the value in your CyberSource account. #### CyberSource through VisaNet The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP01 TCR4 - Position: 150-153 - Field: Merchant Category Code ' vatRegistrationNumber: type: string maxLength: 21 description: 'Your government-assigned tax identification number. #### Tax Calculation Required field for value added tax only. Not applicable to U.S. and Canadian taxes. #### CyberSource through VisaNet For CtV processors, the maximum length is 20. ' cardAcceptorReferenceNumber: type: string maxLength: 25 description: 'Reference number that facilitates card acceptor/corporation communication and record keeping. ' taxId: type: string maxLength: 15 description: 'Your Cadastro Nacional da Pessoa Jurídica (CNPJ) number. 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 TCR6 - Position: 40-59 - Field: BNDES Reference Field 1 ' aggregatorInformation: type: object properties: aggregatorId: type: string maxLength: 20 description: 'Value that identifies you as a payment aggregator. Get this value from the processor. #### CyberSource through VisaNet The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP01 TCR6 - Position: 95-105 - Field: Payment Facilitator ID This field is supported for Visa, Mastercard and Discover Transactions. **FDC Compass**\ This value must consist of uppercase characters. ' name: type: string maxLength: 37 description: 'Your payment aggregator business name. **American Express Direct**\ The maximum length of the aggregator name depends on the length of the sub-merchant name. The combined length for both values must not exceed 36 characters.\ #### CyberSource through VisaNet With American Express, the maximum length of the aggregator name depends on the length of the sub-merchant name. The combined length for both values must not exceed 36 characters. The value for this field does not map to the TC 33 capture file5. **FDC Compass**\ This value must consist of uppercase characters. ' subMerchant: type: object properties: name: type: string maxLength: 37 description: 'Sub-merchant''s business name. #### American Express Direct The maximum length of the sub-merchant name depends on the length of the aggregator name. The combined length for both values must not exceed 36 characters. #### CyberSource through VisaNet With American Express, the maximum length of the sub-merchant name depends on the length of the aggregator name. The combined length for both values must not exceed 36 characters. The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. #### FDC Nashville Global With Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name: - If aggregator name length is 1 through 3, maximum sub-merchant name length is 21. - If aggregator name length is 4 through 7, maximum sub-merchant name length is 17. - If aggregator name length is 8 through 12, maximum sub-merchant name length is 12. ' address1: type: string maxLength: 38 description: 'First line of the sub-merchant''s street address. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' locality: type: string maxLength: 21 description: 'Sub-merchant''s city. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' administrativeArea: type: string maxLength: 50 description: 'Sub-merchant''s state or province. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' postalCode: type: string maxLength: 15 description: 'Partial postal code for the sub-merchant''s address. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' country: type: string maxLength: 3 description: 'Sub-merchant''s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file. #### FDC Compass This value must consist of uppercase characters. ' email: type: string maxLength: 40 description: "Sub-merchant's email address.\n\n**Maximum length for processors**\n\n - American Express Direct: 40\n - CyberSource through VisaNet: 40\n - FDC Compass: 40\n - FDC Nashville Global: 19\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 25-64\n- Field: American Express Seller E-mail Address\n\n**Note** The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource. CyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant's acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" phoneNumber: type: string maxLength: 20 description: "Sub-merchant's telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" id: type: string maxLength: 20 description: 'The ID you assigned to your sub-merchant. CyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file: - Record: CP01 TCRB - Position: 65-84 - Field: American Express Seller ID For Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file: - Record: CP01 TCR6 - Position: 117-131 - Field: Sub-Merchant ID FDC Compass: This value must consist of uppercase characters. American Express Direct: String (20) CyberSource through VisaNet with American Express: String (20) CyberSource through VisaNet with Visa,Mastercard and Discover: String (15) FDC Compass: String (20) FDC Nashville Global: String (14) ' merchantCategoryCode: type: number maxLength: 20 x-nullable: true pointOfSaleInformation: type: object properties: emv: type: object properties: tags: type: string maxLength: 1998 description: "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \"Application Specification\" section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\nFor Mastercard Transactions, Optionally Tag 9F60 (Authenticated Application Data) and \nTag 96 (Kernel Identifier - Terminal) can be included in the Field.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" fallback: type: boolean maxLength: 5 description: "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" terminalCategory: type: string maxLength: 3 description: "Indicates the type of terminal. \n\nPossible values:\n- `AFD`: Automated Fuel Dispenser\n" merchantDefinedInformation: type: array description: 'The object containing the custom data that the merchant defines. ' items: type: object properties: key: type: string maxLength: 50 description: 'The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100. For example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`. #### CyberSource through VisaNet For installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and `merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the transaction. ' value: type: string maxLength: 800 description: "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. \n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" travelInformation: type: object properties: duration: type: string maxLength: 2 description: 'Duration of the auto rental or lodging rental. #### Auto rental This field is supported for Visa, MasterCard, and American Express. **Important** If this field is not included when the `processingInformation.industryDataType` is auto rental, the transaction is declined. ' agency: type: object properties: code: type: string maxLength: 8 description: 'International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation. ' name: type: string maxLength: 25 description: 'Name of travel agency that made the reservation. ' autoRental: type: object properties: noShowIndicator: type: boolean description: 'No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle. Possible values: - true - false ' customerName: type: string maxLength: 40 description: 'Name of the individual making the rental agreement. Valid data lengths by card: |Card Specific Validation|VISA|MasterCard|Discover|AMEX| |--- |--- |--- |--- | | Filed Length| 40| 40| 29| 26| | Field Type| AN| ANS| AN| AN| | M/O/C| O| M| M| M| ' vehicleClass: type: string maxLength: 4 description: 'Classification of the rented auto. **NOTE** For VISA, this is a 2-byte optional code. Valid values for American Express & MasterCard: |American Express |MasterCard |Description| |--- |--- |--- | | 0001| 0001| Mini| | 0002| 0002| Subcompact| | 0003| 0003| Economy| | 0004| 0004| Compact| | 0005| 0005| Midsize| | 0006| 0006| Intermediate| | 0007| 0007| Standard| | 0008| 0008| Fulll size| | 0009| 0009| Luxury| | 0010| 0010| Premium| | 0011| 0011| Minivan| | 0012| 0012| 12-passenger van| | 0013| 0013| Moving van| | 0014| 0014| 15-passenger van| | 0015| 0015| Cargo van| | 0016| 0016| 12-foot truck| | 0017| 0017| 20-foot truck| | 0018| 0018| 24-foot truck| | 0019| 0019| 26-foot truck| | 0020| 0020| Moped| | 0021| 0021| Stretch| | 0022| 0022| Regular| | 0023| 0023| Unique| | 0024| 0024| Exotic| | 0025| 0025| Small/medium truck| | 0026| 0026| Large truck| | 0027| 0027| Small SUV| | 0028| 0028| Medium SUV| | 0029| 0029| Large SUV| | 0030| 0030| Exotic SUV| | 9999| 9999| Miscellaneous| Additional Values allowed **only** for `American Express`: |American Express|MasterCard|Description| |--- |--- |--- | | 0031| NA| Four Wheel Drive| | 0032| NA| Special| | 0099| NA| Taxi| ' distanceTravelled: type: string maxLength: 5 description: 'Total number of miles driven by the customer. This field is supported only for MasterCard and American Express. ' distanceUnit: type: string maxLength: 1 description: 'Miles/Kilometers Indicator shows whether the "miles" fields are expressed in miles or kilometers. Allowed values: - `K` - Kilometers - `M` - Miles ' returnDateTime: type: string maxLength: 21 description: 'Date/time the auto was returned to the rental agency. Format: ``yyyy-MM-dd HH-mm-ss z`` This field is supported for Visa, MasterCard, and American Express. ' rentalDateTime: type: string maxLength: 21 description: 'Date/time the auto was picked up from the rental agency. Format: `yyyy-MM-dd HH-mm-ss z` This field is supported for Visa, MasterCard, and American Express. ' maxFreeDistance: type: string maxLength: 4 description: 'Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement. This field is supported only for MasterCard and American Express. ' insuranceIndicator: type: boolean description: 'Used for MC and Discover Valid values: - `true` - Yes (insurance was purchased) - `false` - No (insurance was not purchased) ' programCode: type: string maxLength: 2 description: 'Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as "renter" or "show". This code is `2 digit` value agreed by Merchant and processor. ' returnAddress: type: object properties: city: type: string maxLength: 25 description: 'City where the auto was returned to the rental agency. ' state: type: string maxLength: 3 description: 'State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf). For authorizations, this field is supported for Visa, MasterCard, and American Express. For captures, this field is supported only for MasterCard and American Express. ' country: type: string maxLength: 3 description: 'Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). ' locationId: type: string maxLength: 10 description: 'Code, address, phone number, etc. used to identify the location of the auto rental return. This field is supported only for MasterCard and American Express. ' address1: type: string maxLength: 50 description: 'When merchant wants to send the rental address''s street address. ' postalCode: type: string maxLength: 50 description: 'When merchant wants to send the return address''s postal code. ' location: type: string maxLength: 38 description: 'This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned. ' rentalAddress: type: object properties: city: type: string maxLength: 25 description: 'City in which the auto was rented. For authorizations, this field is supported for Visa, MasterCard, and American Express. For captures, this field is supported only for American Express. For all other card types, this field is ignored. ' state: type: string maxLength: 3 description: 'State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf). ' country: type: string maxLength: 3 description: 'Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf) This field is supported only for American Express. ' locationId: type: string maxLength: 10 description: 'The agency code, address, phone number, etc., used to identify the location where the vehicle was rented. ' address1: type: string maxLength: 13 description: 'Address from where the vehicle was rented. ' address2: type: string maxLength: 13 description: 'Address from where the vehicle was rented. ' postalCode: type: string maxLength: 50 description: 'When merchant wants to send the rental address''s postal code. ' location: type: string maxLength: 38 description: 'This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency''s business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible. ' agreementNumber: type: string maxLength: 25 description: 'Auto rental agency''s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions. This field is supported for Visa, MasterCard, and American Express. This Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become part of the descriptive bill on the Cardmember''s statement. ' odometerReading: type: string maxLength: 8 description: 'Odometer reading at time of vehicle rental. ' vehicleIdentificationNumber: type: string maxLength: 20 description: 'This field contains a unique identifier assigned by the company to the vehicle. ' companyId: type: string maxLength: 12 description: 'Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle: |Card Specific Validation|VISA|MasterCard|Discover|AMEX| |--- |--- |--- |--- | | Filed Length| NA| 12| NA| NA| | Field Type| NA| AN| NA| NA| | M/O/C| NA| O| NA| NA| ' numberOfAdditionalDrivers: type: string maxLength: 1 description: 'The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement. ' driverAge: type: string maxLength: 3 description: 'Age of the driver renting the vehicle. ' specialProgramCode: type: string maxLength: 2 description: 'Program code used to identify special circumstances, such as "frequent renter" or "no show" status for the renter. Possible values: - `0`: not applicable (default) - `1`: frequent renter - `2`: no show For authorizations, this field is supported only for Visa. For captures, this field is supported for Visa, MasterCard, and American Express. Code for special programs applicable to the Card Transaction or the Cardholder. ' vehicleMake: type: string maxLength: 10 description: 'Make of the vehicle being rented (e.g., Chevrolet or Ford). ' vehicleModel: type: string maxLength: 10 description: 'Model of the vehicle being rented (e.g., Cavalier or Focus). ' timePeriod: type: string maxLength: 7 description: 'Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values. ' commodityCode: type: string maxLength: 15 description: 'Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes. ' customerServicePhoneNumber: type: string maxLength: 17 description: 'Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number. This field is supported only for MasterCard and American Express. ' taxDetails: type: object properties: amount: type: string maxLength: 13 description: 'Indicates the amount of tax based on the `type` field as described in the table below: ' rate: type: string maxLength: 6 description: 'Rate of VAT or other tax for the order. Example 0.040 (=4%) Valid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated) ' applied: type: boolean description: 'Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is included in the request. Possible values: - `false`: tax amount is not included in the request. - `true`: tax amount is included in the request. ' exemptionCode: type: string maxLength: 1 description: 'Status code for exemption from sales and use tax. 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. ' taxType: type: string maxLength: 10 description: 'Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax. ' taxSummary: type: string maxLength: 12 description: 'Summary of all tax types ' insuranceAmount: type: string maxLength: 12 description: 'Insurance charges. Field is conditional and can include decimal point. ' oneWayDropOffAmount: type: string maxLength: 12 description: 'Extra charges incurred for a one-way rental agreement for the auto. This field is supported only for Visa. ' adjustedAmountIndicator: type: string maxLength: 1 description: 'For **MasterCard** and **Discover**: Adjusted amount indicator code that indicates any miscellaneous charges incurred after the auto was returned. Possible values: - `A` - Drop-off charges - `B` - Delivery charges - `C` - Parking expenses - `D` - Extra hours - `E` - Violations - `X` - More than one of the above charges For **American Express**: Audit indicator code that indicates any adjustment for mileage, fuel, auto damage, etc. made to a rental agreement and whether the cardholder was notified. Possible value for the authorization service: - `A` (default): adjustment amount greater than 0 (zero) Possible values for the capture service: - `X` - Multiple adjustments - `Y` - One adjustment only; Cardmember notified - `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero). This is an optional field. ' adjustedAmount: type: string maxLength: 12 description: 'Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned. For authorizations, this field is supported only for American Express. For captures, this field is supported only for MasterCard and American Express. **NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field is included in the request and has a value; otherwise, this field is optional. For all other card types, this field is ignored. ' fuelCharges: type: string maxLength: 12 description: 'Extra gasoline charges that extend beyond the basic rental agreement. This field is supported only for Visa. ' weeklyRentalRate: type: string maxLength: 12 description: 'Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present ' dailyRentalRate: type: string maxLength: 12 description: 'Daily auto rental rate charged. This field is supported only for MasterCard and American Express. Field - Time Period needs to be populated with Daily if this field is present ' ratePerMile: type: string maxLength: 12 description: 'Rate charged for each mile. This field is supported only for MasterCard and American Express. ' mileageCharge: type: string maxLength: 12 description: 'Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places ' extraMileageCharge: type: string maxLength: 12 description: 'Extra mileage charges that extend beyond the basic rental agreement. This field is supported only for Visa. ' lateFeeAmount: type: string maxLength: 12 description: 'Extra charges related to a late return of the rented auto. This field is supported only for Visa. ' towingCharge: type: string maxLength: 4 description: '(Towing Charges) provides the amount charged to tow the rental vehicle. ' extraCharge: type: string maxLength: 12 description: '(Extra Charges) provides the extra charges associated with the vehicle rental. ' gpsCharge: type: string maxLength: 12 description: 'Amount charged for renting a Global Positioning Service (GPS). ' phoneCharge: type: string maxLength: 12 description: 'Additional charges incurred for phone usage included on the total bill. ' parkingViolationCharge: type: string maxLength: 12 description: 'Extra charges incurred due to a parking violation for the auto. This field is supported only for Visa. ' otherCharges: type: string maxLength: 12 description: 'Total amount charged for all other miscellaneous charges not previously defined. ' companyName: type: string maxLength: 50 description: 'Merchant to send their auto rental company name ' affiliateName: type: string maxLength: 50 description: 'When merchant wants to send the affiliate name. ' lodging: type: object properties: checkInDate: type: string maxLength: 6 description: 'Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date. Format: `MMDDYY`. For best interchange rates, make sure it is a valid date. ' checkOutDate: type: string maxLength: 6 description: 'Date on which the guest checked out. Format: `MMDDYY`. For best interchange rates, make sure it is a valid date. ' room: type: array description: 'The object containing the number of nights and the daily rate that applies for that no of nights. ' items: type: object properties: dailyRate: type: string maxLength: 8 description: 'Daily cost of the room. ' numberOfNights: type: integer minimum: 1 maximum: 9999 description: 'Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`. ' smokingPreference: type: string maxLength: 1 description: 'Smoking preference of the guest. Possible values: - `Y`: smoking room - `N`: non-smoking room ' numberOfRooms: type: integer minimum: 1 maximum: 99 description: 'Number of rooms booked by the cardholder. ' numberOfGuests: type: integer minimum: 1 maximum: 99 description: 'Number of guests staying in the room. ' roomBedType: type: string maxLength: 12 description: 'Type of room, such as queen, king, or two doubles. ' roomTaxType: type: string maxLength: 10 description: 'Type of tax, such as tourist or hotel. ' roomRateType: type: string maxLength: 12 description: 'Type of rate, such as corporate or senior citizen. ' guestName: type: string maxLength: 40 description: 'Name of the guest under which the room is reserved. ' customerServicePhoneNumber: type: string maxLength: 17 description: 'Your toll-free customer service phone number. ' corporateClientCode: type: string maxLength: 17 description: 'Code assigned to a business. You can use this code to identify corporate rates and discounts for guests. ' additionalDiscountAmount: type: string maxLength: 12 description: 'Amount of an additional coupon or discount. ' roomLocation: type: string maxLength: 10 description: 'Location of room, such as lake view or ocean view. ' specialProgramCode: type: string maxLength: 1 description: 'Code that identifies special circumstances. Possible values: - `1`: lodging (default) - `2`: no show reservation - `3`: advanced deposit ' totalTaxAmount: type: string maxLength: 12 description: 'Total tax amount. ' prepaidCost: type: string maxLength: 12 description: 'Prepaid amount, such as a deposit. ' foodAndBeverageCost: type: string maxLength: 12 description: 'Cost for all food and beverages. ' roomTaxAmount: type: string maxLength: 12 description: 'Total tax for the room. ' adjustmentAmount: type: string maxLength: 12 description: 'Adjusted amount charged in addition to the reservation amount after the stay is complete. ' phoneCost: type: string maxLength: 12 description: 'Cost of telephone services. ' restaurantCost: type: string maxLength: 12 description: 'Cost of restaurant purchases ' roomServiceCost: type: string maxLength: 12 description: 'Cost of room service. ' miniBarCost: type: string maxLength: 12 description: 'Cost of mini-bar purchases. ' laundryCost: type: string maxLength: 12 description: 'Cost of laundry services. ' miscellaneousCost: type: string maxLength: 12 description: 'Miscellaneous costs. ' giftShopCost: type: string maxLength: 12 description: 'Cost of gift shop purchases. ' movieCost: type: string maxLength: 12 description: 'Cost of movies. ' healthClubCost: type: string maxLength: 12 description: 'Cost of health club services. ' valetParkingCost: type: string maxLength: 12 description: 'Cost of valet parking services. ' cashDisbursementCost: type: string maxLength: 12 description: 'Cost of the cash that was disbursed plus any associated service fees ' nonRoomCost: type: string maxLength: 12 description: 'Cost of non-room purchases, such as meals and gifts. ' businessCenterCost: type: string maxLength: 12 description: 'Cost of business center services. ' loungeBarCost: type: string maxLength: 12 description: 'Cost of lounge and bar purchases. ' transportationCost: type: string maxLength: 12 description: 'Cost of transportation services. ' gratuityAmount: type: string maxLength: 12 description: 'Gratuity. ' conferenceRoomCost: type: string maxLength: 12 description: 'Cost of conference room services. ' audioVisualCost: type: string maxLength: 12 description: 'Cost of audio visual services. ' banquestCost: type: string maxLength: 12 description: 'Cost of banquet services. ' nonRoomTaxAmount: type: string maxLength: 12 description: 'Tax on non-room purchases. ' earlyCheckOutCost: type: string maxLength: 12 description: 'Service fee for early departure. ' internetAccessCost: type: string maxLength: 12 description: 'Cost of Internet access. ' name: type: string maxLength: 255 description: 'Name of the hotel for which the reservation is for. Mandatory in case the merchant''s business type is Hotel. ' hotelName: type: string description: 'The name of the hotel for which the reservation was made. ' checkInDateTime: type: string description: 'The date of the check-in in GMT+8 offset. ' checkOutDateTime: type: string description: 'The date of the check-out in GMT+8 offset. ' transit: type: object properties: airline: type: object properties: isDomestic: type: string maxLength: 255 description: 'Specifies if the flight is: Domestic (01) International (02) If Y then 01 else 02 ' bookingReferenceNumber: type: string maxLength: 15 description: 'Reference number for the airline booking. Required if ticket numbers are not issued. ' carrierName: type: string maxLength: 15 description: 'Airline that generated the ticket. Format: English characters only. Optional request field. ' ticketIssuer: type: object properties: code: type: string maxLength: 4 description: 'IATA2 airline code. Format: English characters only. Required for Mastercard; optional for all other card types. ' name: type: string maxLength: 20 description: 'Name of the ticket issuer. If you do not include this field, CyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database. ' address: type: string maxLength: 16 description: 'Address of the company issuing the ticket. ' locality: type: string maxLength: 18 description: 'City in which the transaction occurred. If the name of the city exceeds 18 characters, use meaningful abbreviations. Format: English characters only. Optional request field. ' administrativeArea: type: string maxLength: 18 description: 'State in which transaction occured. ' postalCode: type: string maxLength: 15 description: 'Zip code of the city in which transaction occured. ' country: type: string maxLength: 18 description: 'Country in which transaction occured. ' ticketNumber: type: string maxLength: 15 description: 'Ticket number. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' checkDigit: type: string maxLength: 1 description: 'Check digit for the ticket number. CyberSource recommends that you validate the check digit. With Discover and Diners Club, a valid ticket number has these characteristics: - The value is numeric. - The first three digits are a valid IATA2 license plate carrier code. - The last digit is a check digit or zero (0). - All remaining digits are nonzero. ' restrictedTicketIndicator: type: integer maxLength: 1 description: 'Flag that indicates whether or not the ticket is restricted (nonrefundable). Possible values: - 0: No restriction (refundable) - 1: Restricted (nonrefundable) Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' transactionType: type: integer maxLength: 2 description: 'Type of charge. Possible values: - 01: Charge is for an airline ticket - 02: Charge is for an item that is not an airline ticket ' extendedPaymentCode: type: string maxLength: 3 description: 'The field is not currently supported. ' passengerName: type: string maxLength: 42 description: 'Name of the passenger to whom the ticket was issued. This will always be a single passenger''s name. If there are more than one passengers, provide only the primary passenger''s name. Do not include special characters such as commas, hyphens, or apostrophes. Only ASCII characters are supported. Format: English characters only. Optional request field. ' customerCode: type: string maxLength: 40 description: 'Reference number or code that identifies the cardholder. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' documentType: type: string maxLength: 1 description: 'Airline document type code that specifies the purpose of the transaction. Format: English characters only. Optional request field. | Code | Description | | --- | --- | | 01 | Passenger ticket | | 02 | Additional collection | | 03 | Excess baggage | | 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization | | 05 | Special service ticket | | 06 | Supported refund | | 07 | Unsupported refund | | 08 | Lost ticket application | | 09 | Tour order voucher | | 10 | Ticket by mail | | 11 | Undercharge adjustment | | 12 | Group ticket | | 13 | Exchange adjustment | | 14 | SPD or air freight | | 15 | In-flight adjustment | | 16 | Agency passenger ticket | | 17 | Agency tour order or voucher | | 18 | Agency miscellaneous charge order (MCO) | | 19 | Agency exchange order | | 20 | Agency group ticket | | 21 | Debit adjustment for duplicate refund or use | | 22 | In-flight merchandise order | | 23 | Catalogue merchandise order | | 24 | In-flight phone charges | | 25 | Frequent flyer fee or purchase | | 26 | Kennel charge | | 27 | Animal transportation charge | | 28 | Firearms case | | 29 | Upgrade charge | | 30 | Credit for unused transportation | | 31 | Credit for class of service adjustment | | 32 | Credit for denied boarding | | 33 | Credit for miscellaneous refund | | 34 | Credit for lost ticket refund | | 35 | Credit for exchange refund | | 36 | Credit for overcharge adjustment | | 37 | Credit for multiple Unused tickets | | 38 | Exchange order | | 39 | Self-service ticket | | 41 | In-flight duty-free purchase | | 42 | Senior citizen discount booklets | | 43 | Club membership fee | | 44 | Coupon book | | 45 | In-flight charges | | 46 | Tour deposit | | 47 | Frequent flyer overnight delivery charge | | 48 | Frequent flyer fulfillment | | 49 | Small package delivery | | 50 | Vendor sale | | 51 | Miscellaneous taxes or fees | | 52 | Travel agency fee | | 60 | Vendor refund or credit | | 64 | Duty free sale | | 65 | Preferred seat upgrade | | 66 | Cabin upgrade | | 67 | Lounge or club access or day pass | | 68 | Agent assisted reservation or ticketing fee | | 69 | Ticket change or cancel fee | | 70 | Trip insurance | | 71 | Unaccompanied minor | | 72 | Standby fee | | 73 | Curbside baggage | | 74 | In-flight medical equipment | | 75 | Ticket or pass print fee | | 76 | Checked sporting or special equipment | | 77 | Dry ice fee | | 78 | Mail or postage fee | | 79 | Club membership fee or temporary trial | | 80 | Frequent flyer activation or reinstatement | | 81 | Gift certificate | | 82 | Onboard or in-flight prepaid voucher | | 83 | Optional services fee | | 84 | Advance purchase for excess baggage | | 85 | Advance purchase for preferred seat upgrade | | 86 | Advance purchase for cabin upgrade | | 87 | Advance purchase for optional services | | 88 | WiFi | | 89 | Packages | | 90 | In-flight entertainment or internet access | | 91 | Overweight bag fee | | 92 | Sleep sets | | 93 | Special purchase fee | ' documentNumber: type: string maxLength: 14 description: 'The field is not currently supported. ' documentNumberOfParts: type: integer maxLength: 4 description: 'The field is not currently supported. ' invoiceNumber: type: string maxLength: 25 description: 'Invoice number for the airline transaction. ' invoiceDate: type: integer maxLength: 8 description: 'Invoice date. The format is YYYYMMDD. If this value is included in the request, it is used in the creation of the invoice number. See "Invoice Number," ' additionalCharges: type: string maxLength: 20 description: 'Description of the charge if the charge does not involve an airline ticket. For example: Excess baggage. ' totalFeeAmount: type: string maxLength: 12 description: 'Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s). Format: English characters only. Optional request field. ' clearingSequence: type: string maxLength: 2 description: 'Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction. Each clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records. Format: English characters only. Optional request field. ' clearingCount: type: string maxLength: 2 description: 'Total number of clearing messages associated with the authorization request. Format: English characters only. Optional request field. ' totalClearingAmount: type: string maxLength: 20 description: 'Total clearing amount for all transactions in the clearing count set. This value cannot exceed `99999999999999999999` (twenty 9s). Format: English characters only. If this field is not set and if the total amount from the original authorization is not NULL, the total clearing amount is set to the total amount from the original authorization. ' numberOfPassengers: type: integer maxLength: 3 description: 'Number of passengers for whom the ticket was issued. Format: English characters only. Optional request field. ' reservationSystemCode: type: string maxLength: 20 description: 'Code that specifies the computerized reservation system used to make the reservation and purchase the ticket. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' processIdentifier: type: string maxLength: 3 description: 'Airline process identifier. This value is the airline''s three-digit IATA1 code which is used to process extended payment airline tickets. ' ticketIssueDate: type: string maxLength: 8 description: 'Date on which the transaction occurred. Format: `YYYYMMDD` Format: English characters only. Optional request field. ' electronicTicketIndicator: type: boolean description: 'Flag that indicates whether an electronic ticket was issued. Possible values: - `true` - `false` Optional request field. ' originalTicketNumber: type: string maxLength: 14 description: 'Original ticket number when the transaction is for a replacement ticket. ' purchaseType: type: string maxLength: 3 description: 'Type of purchase. Possible values: - `EXC`: Exchange ticket - `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket) - `REF`: Refund - `TKT`: Ticket Format: English characters only. Optional request field. ' creditReasonIndicator: type: string maxLength: 1 description: 'Reason for the credit. Possible values: - `A`: Cancellation of the ancillary passenger transport purchase. - `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase. - `C`: Cancellation of the airline ticket. - `O`: Other. - `P`: Partial refund of the airline ticket. Format: English characters only. Optional request field. ' ticketChangeIndicator: type: string maxLength: 1 description: 'Type of update. Possible values: - `C`: Change to the existing ticket. - `N`: New ticket. Format: English characters only Optional request field. ' planNumber: type: string maxLength: 1 description: 'Plan number based on the fare. This value is provided by the airline. Format: English characters only. Optional request field. ' arrivalDate: type: string maxLength: 8 description: 'Date of arrival for the last leg of the trip. Format: `MMDDYYYY` English characters only. Optional request field. ' restrictedTicketDesciption: type: string maxLength: 20 description: 'Text that describes the ticket limitations, such as _nonrefundable_. Format: English characters only. Optional request field. ' exchangeTicketAmount: type: string maxLength: 12 description: 'Amount of the exchanged ticket. Format: English characters only. ' exchangeTicketFeeAmount: type: string maxLength: 12 description: 'Fee for exchanging the ticket. Format: English characters only. Optional request field. ' reservationType: type: string maxLength: 32 description: 'The field is not currently supported. ' boardingFeeAmount: type: string maxLength: 12 description: 'Boarding fee. ' legs: type: array items: type: object properties: carrierCode: type: string maxLength: 4 description: 'IATA code for the carrier for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' flightNumber: type: string maxLength: 6 description: 'Flight number for this leg of the trip. Restrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay. Format: English characters only. Optional request field for travel legs. ' originatingAirportCode: type: string maxLength: 5 description: 'IATA code for the originating airport for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' class: type: string maxLength: 3 description: 'IATA code for the class of service for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' stopoverIndicator: type: integer maxLength: 1 description: 'Code that indicates whether a stopover is allowed on this leg of the trip. Possible values: - `O` (capital letter "O") (default): Stopover allowed - `X` (capital letter "X"): Stopover not allowed Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' departureDate: type: integer maxLength: 8 description: 'Departure date for the first leg of the trip. Format: `YYYYMMDD`. Format: English characters only. Optional request field for travel legs. ' destinationAirportCode: type: string maxLength: 3 description: 'IATA code for the destination airport for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' fareBasis: type: string maxLength: 15 description: 'Code for the fare basis for this leg of the trip. The fare basis is assigned by the carriers and indicates a particular ticket type, such as business class or discounted/nonrefundable. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Format: English characters only. Optional request field for travel legs.auto_rental_regular_mileage_cost ' departTaxAmount: type: string maxLength: 12 description: 'Amount of departure tax for this leg of the trip. ' conjunctionTicket: type: string maxLength: 25 description: 'Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' exchangeTicketNumber: type: string maxLength: 25 description: 'New ticket number that is issued when the ticket is exchanged for this leg of the trip. Restrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay. Format: English characters only. Optional request field for travel legs. ' couponNumber: type: string maxLength: 1 description: 'Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' departureTime: type: integer maxLength: 4 description: 'Time of departure for this leg of the trip. The format is military time and HHMM: If not all zeros, then the hours must be `00-23` and the minutes must be `00-59`. Format: English characters only. Optional request field for travel legs. ' departureTimeMeridian: type: string maxLength: 1 description: 'AM or PM for the departure time. Possible values: - A: 12:00 midnight to 11:59 a.m. - P: 12:00 noon to 11:59 p.m Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' arrivalTime: type: integer maxLength: 4 description: 'Time of arrival for this leg of the trip. The format is military time and HHMM: If not all zeros, then the hours must be `00-23` and the minutes must be `00-59` Format: English characters only. Optional request field for travel legs. ' arrivalTimeMeridian: type: string maxLength: 1 description: 'AM or PM for the arrival time for this leg of the trip. Possible values: - `A`: 12:00 midnight to 11:59 a.m. - `P`: 12:00 noon to 11:59 p.m. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' endorsementsRestrictions: type: string maxLength: 20 description: 'Notes or notations about endorsements and restrictions for this leg of the trip. Endorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax. Restrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay. Format: English characters only. Optional request field for travel legs. ' totalFareAmount: type: string maxLength: 15 description: 'Total fare for this leg of the trip. Format: English characters only. Optional request field for travel legs. ' feeAmount: type: string maxLength: 12 description: 'Fee for this leg of the trip, such as an airport fee or country fee. Format: English characters only. Optional request field for travel legs. ' taxAmount: type: string maxLength: 12 description: 'Tax for this leg of the trip. Format: English characters only. Optional request field for travel legs. ' ancillaryInformation: type: object properties: ticketNumber: type: string maxLength: 15 description: 'Ticket number, which consists of the carrier code, form, and serial number, without the check digit. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program. Format: English characters only. Optional field for ancillary services. ' passengerName: type: string maxLength: 20 description: 'Name of the passenger. If the passenger''s name is not available, this value is the cardholder''s name. If neither the passenger''s name nor the cardholder''s name is available, this value is a description of the ancillary purchase. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program. Format: English characters only. Optional field for ancillary service. ' connectedTicketNumber: type: string maxLength: 15 description: 'Number for the airline ticket to which the ancillary purchase is connected. If this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase. For a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program. Format: English characters only. Optional request field for ancillary services. ' creditReasonIndicator: type: string maxLength: 15 description: 'Reason for the credit. Possible values: - `A`: Cancellation of the ancillary passenger transport purchase. - `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase. - `C`: Cancellation of the airline ticket. - `O`: Other. - `P`: Partial refund of the airline ticket. Format: English characters only. Optional field for ancillary services. ' service: type: array items: type: object properties: categoryCode: type: string maxLength: 4 description: 'Category code for the ancillary service that is provided. Obtain the codes from the International Air Transport Association (IATA). **Note** `#` is either 0, 1, 2, or 3. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)program. Format: English characters only. Optional request field for ancillary services. ' subCategoryCode: type: string maxLength: 4 description: 'Subcategory code for the ancillary service category. Obtain the codes from the International Air Transport Association (IATA). **Note** `#` is either 0, 1, 2, or 3. Format English characters only. Optional request field for ancillary services. ' flightType: type: string maxLength: 2 description: 'Specifies the type of flight. One way (0) Return (1) Transit (2) Transit & Return (3) Multi-City (4) ' insuranceAmount: type: string maxLength: 255 description: 'The total cost of the flight insurance. Example: 10000.00 ' frequentFlyerNumber: type: string maxLength: 255 description: 'The consumer''s frequent flyer number. Leave 0 if there is no frequent flyer number ' thirdPartyStatus: type: string maxLength: 255 description: 'Specifies if the travel agent joins the flight (0) or not (1) ' passengerType: type: string maxLength: 50 description: 'List of passenger types in a booking code: A (Adult) C (Child) Comma separated values for total number of passenger ' totalInsuranceAmount: type: string maxLength: 50 description: 'Total insurance amount. We have per leg and not total ' vehicleData: type: object properties: connectorType: type: string maxLength: 3 description: 'This field will contain connector type values for electric vehicle transactions. Possible Values: 001 (AC - J1772 Type 1) 002 (AC - Mennekes - Type 2) 003 (AC - GB/T) 100 (DC - CCS1) 101 (DC - CHAdeMO) 102 (DC - CCS2) 103 (DC - GB/T) 200 (NACS – Tesla) ' chargingReasonCode: type: string maxLength: 3 description: 'This field will contain charging reason code values for electric vehicle transactions. Possible Values: 010 (Other Error) 011 (Connector Lock Failure) 012 (EV Communication Error) 013 (Ground Failure) 014 (High Temperature) 015 (Internal Error) 016 (Over Current Failure) 017 (Over Voltage) 018 (Power Meter Failure) 019 (Power Switch Failure) 020 (Reader Failure) 021 (Reset Failure) 022 (Under Voltage) 023 (Weak Signal) 100 (No Error) 200 (Payment Related Error) ' promotionInformation: type: object properties: additionalCode: type: string maxLength: 12 description: 'Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement. ' code: type: string maxLength: 12 description: 'Code for a promotion or discount. ' processorInformation: type: object properties: network: type: object properties: economicallyRelatedTxnId: type: string maxLength: 50 description: Indicates the economically related transaction id example: clientReferenceInformation: code: Testing-VDP-Payments-Refund orderInformation: amountDetails: totalAmount: '102.21' currency: USD - name: id in: path description: The payment ID. This ID is returned from a previous payment request. required: true type: string responses: '201': description: Successful response. schema: title: ptsV2PaymentsRefundPost201Response type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' void: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n - DECLINED\n - INVALID_REQUEST\n" reconciliationId: type: string maxLength: 60 description: 'Reference number for the transaction. Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource. The actual value used in the request to the processor is provided back to you by Cybersource in the response. ' clientReferenceInformation: type: object properties: code: type: string maxLength: 59 description: 'Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' submitLocalDateTime: type: string maxLength: 14 description: 'Date and time at your physical location. Format: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds #### PIN Debit Optional field for PIN Debit purchase and credit requests. ' ownerMerchantId: type: string description: 'Merchant ID that was used to create the subscription or customer profile for which the service was requested. If your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using subscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID. If your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using profile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID. ' returnReconciliationId: type: string description: A new ID which is created for refund refundAmountDetails: type: object properties: refundAmount: type: string maxLength: 15 description: Total amount of the refund. creditAmount: type: string maxLength: 15 description: 'Amount that was credited to the cardholder''s account. Returned by PIN debit credit. ' currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' processingInformation: type: object properties: enhancedDataEnabled: type: boolean description: 'The possible values for the reply field are: - `true` : the airline data was included in the request to the processor. - `false` : the airline data was not included in the request to the processor. Returned by authorization, capture, or credit services. ' processorInformation: type: object properties: approvalCode: type: string maxLength: 6 description: 'Authorization code. Returned only when the processor returns this value. The length of this value depends on your processor. Returned by authorization service. #### PIN debit Authorization code that is returned by the processor. Returned by PIN debit credit. #### Elavon Encrypted Account Number Program The returned value is OFFLINE. #### TSYS Acquiring Solutions The returned value for a successful zero amount authorization is 000000. ' transactionId: type: string maxLength: 255 description: 'Network transaction identifier (TID). You can use this value to identify a specific transaction when you are discussing the transaction with your processor. Not all processors provide this value. Returned by the authorization service. #### PIN debit Transaction identifier generated by the processor. Returned by PIN debit credit. #### GPX Processor transaction ID. #### Cielo For Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank. #### Comercio Latino For Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank. #### CyberSource through VisaNet and GPN For details about this value for CyberSource through VisaNet and GPN, see "processorInformation.networkTransactionId" in [REST API Fields](https://developer.cybersource.com/content/dam/docs/cybs/en-us/apifields/reference/all/rest/api-fields.pdf) #### Moneris This value identifies the transaction on a host system. It contains the following information: - Terminal used to process the transaction - Shift during which the transaction took place - Batch number - Transaction number within the batch You must store this value. If you give the customer a receipt, display this value on the receipt. **Example** For the value 66012345001069003: - Terminal ID = 66012345 - Shift number = 001 - Batch number = 069 - Transaction number = 003 ' forwardedAcquirerCode: type: string maxLength: 32 description: 'Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway. Please contact the CyberSource Japan Support Group for more information. ' merchantNumber: type: string maxLength: 15 description: 'Identifier that was assigned to you by your acquirer. This value must be printed on the receipt. #### Returned by Authorizations and Credits. This reply field is only supported by merchants who have installed client software on their POS terminals and use these processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX ' responseCode: type: string maxLength: 10 description: 'For most processors, this is the error message sent directly from the bank. Returned only when the processor returns this value. **Important** Do not use this field to evaluate the result of the authorization. #### PIN debit Response value that is returned by the processor or bank. **Important** Do not use this field to evaluate the results of the transaction request. Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal. #### AIBMS If this value is `08`, you can accept the transaction if the customer provides you with identification. #### Atos This value is the response code sent from Atos and it might also include the response code from the bank. Format: `aa,bb` with the two values separated by a comma and where: - `aa` is the two-digit error message from Atos. - `bb` is the optional two-digit error message from the bank. #### Comercio Latino This value is the status code and the error or response code received from the processor separated by a colon. Format: [status code]:E[error code] or [status code]:R[response code] Example `2:R06` #### JCN Gateway Processor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field. String (3) #### paypalgateway Processor generated ID for the itemized detail. ' responseSourceCode: type: string maxLength: 1 description: 'This field is used by Visa only and contains the response source/reason code that identifies the source of the field 39 response decision. Use this field only for clearing with your acquirer. ' achVerification: type: object properties: resultCode: type: string maxLength: 2 description: 'Results from the ACH verification service. ' resultCodeRaw: type: string maxLength: 10 description: 'Raw results from the ACH verification service. ' networkTransactionId: type: string description: Same value as `processorInformation.transactionId` settlementDate: type: string maxLength: 4 description: 'Field contains a settlement date. The date is in mmdd format, where: mm = month and dd = day. ' updateTimeUtc: type: string description: 'The date and time when the transaction was last updated, in Internet date and time format. ' network: type: object properties: economicallyRelatedTxnId: type: string maxLength: 50 description: Indicates the economically related transaction id merchantAdvice: type: object properties: code: type: string maxLength: 2 description: "- Merchant should update their retry logic to ensure retry is not attempted for the cards for which Issuer won't approve the transactions and where the retry is allowed.\n- Card Processing Associations provides this data which is being passed through in the following data element irrespective of the Card Associations. Usage of this data must be always associated with the Card Associations card types for merchant processing retry logic.\n- In additions to the Merchant Advice code, Associations also provides the decline response codes which provides the reason for decline. Association response code will be a pass-through value.\n\n#### Processors supported:\n - HSBC\n - Barclays\n - FDC Nash\n - FDI Global\n - Elavon America\n - VPC\n - Rede\n - Payment tech Salem\n\n\n#### Possible values:\n| Card Type | Advice Code | Description |\n| ----------- | ------------- | ------------------------------------------- |\n| VISA | 1 | Issuer never approves |\n| VISA | 2 | Issuer cannot approve at this time |\n| VISA | 3 | Data quality/revalidate payment information |\n| MasterCard | 01 | New account information available |\n| MasterCard | 02 | Try Again Later |\n| MasterCard | 03 | Do Not Try Again |\n| MasterCard | 04 | Token not supported |\n| MasterCard | 21 | Do not honor |\n| MasterCard | 22 | Merchant does not qualify for product code |\n| MasterCard | 24 | Retry after 1 hour |\n| MasterCard | 25 | Retry after 24 hours |\n| MasterCard | 26 | Retry after 2 days |\n| MasterCard | 27 | Retry after 4 days |\n| MasterCard | 28 | Retry after 6 days |\n| MasterCard | 29 | Retry after 8 days |\n| MasterCard | 30 | Retry after 10 days |\n| MasterCard | 40 | Consumer non-reloadable prepaid card |\n| MasterCard | 41 | Consumer single-use virtual card number |\n| MasterCard | 42 | Sanctions score exceeds threshold value |\n| MasterCard | 99 | Do Not Try Again |\n\n#### Possbile values for Barclays processor:\n- 00: No information, or response not provided.\n- 01: New account information available\n- 02: Try again later\n- 03: Do not try again\n- 05: Payment blocked by the payment card company\n" codeRaw: type: string maxLength: 4 description: 'Raw merchant advice code sent directly from the processor. This field is used only for Mastercard. #### CyberSource through VisaNet The value for this field corresponds to the following data in the TC 33 capture file1: - Record: CP01 TCR7 - Position: 96-99 - Field: Response Data-Merchant Advice Code #### Possbile values for Barclays processor: - 01: Updated/additional information needed - 02: Cannot approve at this time; try again later - 04: Do not try again - 08: Payment blocked by card scheme ' orderInformation: type: object properties: amountDetails: type: object properties: cashbackAmount: type: string maxLength: 12 description: "This field contains the purchase cashback amount expressed in the acquirer transaction currency. \nUse this field only for clearing with your acquirer.\n" settlementAmount: type: string maxLength: 12 description: 'This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder''s account. This field is returned for OCT transactions. ' settlementCurrency: type: string maxLength: 3 description: 'This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder''s account. This field is returned for OCT transactions. ' exchangeRate: type: string maxLength: 13 description: 'Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places. ' foreignAmount: type: string maxLength: 15 description: 'Set this field to the converted amount that was returned by the DCC provider. ' foreignCurrency: type: string maxLength: 5 description: 'Set this field to the converted amount that was returned by the DCC provider. ' invoiceDetails: type: object properties: level3TransmissionStatus: type: string description: 'Indicates whether CyberSource sent the Level III information to the processor. The possible values are: If your account is not enabled for Level III data or if you did not include the purchasing level field in your request, CyberSource does not include the Level III data in the request sent to the processor. Possible values: - **Y** for true - **N** for false ' pointOfSaleInformation: type: object properties: terminalId: type: string maxLength: 8 description: "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" encryptedKeyId: type: string maxLength: 100 description: "Identifies the Zone PIN Key (ZPK) used for Online PIN processing by providing the 10‑digit Key Set Identifier (KSI).\nThis value indicates that the PIN block is encrypted under a ZPK and enables the Payment Security Service (PSS) to perform \nthe correct ZPK→ZPK PIN translation during card‑present EMV PIN transactions.\n" errorInformation: type: object properties: reason: type: string description: "The reason of the status.\n\nPossible values:\n - AVS_FAILED\n - CONTACT_PROCESSOR\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - INSUFFICIENT_FUND\n - STOLEN_LOST_CARD\n - ISSUER_UNAVAILABLE\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - EXCEEDS_CREDIT_LIMIT\n - INVALID_CVN\n - BLOCKED_BY_CARDHOLDER\n - DECLINED_CHECK\n - BLACKLISTED_CUSTOMER\n - SUSPENDED_ACCOUNT\n - PAYMENT_REFUSED\n - CV_FAILED\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - INVALID_MERCHANT_CONFIGURATION\n - DECISION_PROFILE_REJECT\n - SCORE_EXCEEDS_THRESHOLD\n - PENDING_AUTHENTICATION\n - ACH_VERIFICATION_FAILED\n - DECISION_PROFILE_REVIEW\n - CONSUMER_AUTHENTICATION_REQUIRED\n - CONSUMER_AUTHENTICATION_FAILED\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\n - CUSTOMER_WATCHLIST_MATCH\n - ADDRESS_COUNTRY_WATCHLIST_MATCH\n - EMAIL_COUNTRY_WATCHLIST_MATCH\n - IP_COUNTRY_WATCHLIST_MATCH\n - DAGGREJECTED\n - DAGGDENIED\n - DSYSREJECTED\n" message: type: string description: The detail message related to the status and reason listed above. details: type: array items: type: object properties: field: type: string description: This is the flattened JSON object field name/path that is either missing or invalid. reason: type: string description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" example: _links: self: href: /pts/v2/refunds/4963014779006178301545 method: GET void: href: /pts/v2/refunds/4963014779006178301545/voids method: POST id: '4963014779006178301545' submitTimeUtc: 2017-06-01T071757Z status: '200' reconciliationId: 39571012D3DFEKS0 statusInformation: reason: SUCCESS message: Successful transaction. clientReferenceInformation: code: Testing-VDP-Payments-Refund orderInformation: amountDetails: currency: USD refundAmountDetails: currency: USD refundAmount: '102.21' '400': description: Invalid request. schema: type: object title: ptsV2PaymentsRefundPost400Response properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n - NOT_SUPPORTED\n" message: type: string description: The detail message related to the status and reason listed above. details: type: array items: type: object properties: field: type: string description: This is the flattened JSON object field name/path that is either missing or invalid. reason: type: string description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" '502': description: Unexpected system error or system timeout. schema: title: ptsV2PaymentsRefundPost502Response type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. x-example: example0: summary: Refund a Payment value: clientReferenceInformation: code: TC50171_3 orderInformation: amountDetails: totalAmount: '10' currency: USD example1: summary: Electronic check follow-on Refund value: clientReferenceInformation: code: TC50171_3 processingInformation: commerceIndicator: internet orderInformation: amountDetails: totalAmount: '100' currency: USD paymentInformation: paymentType: name: CHECK depends: example: path: /pts/v2/payments verb: post exampleId: example0 fieldMapping: - sourceField: id destinationField: id fieldTypeInDestination: path /pts/v2/captures/{id}/refunds: post: summary: Refund a Capture description: 'Refund a capture API is only used, if you have requested Capture independenlty using [/pts/v2/payments/{id}/captures](https://developer.cybersource.com/api-reference-assets/index.html#payments_capture) API call. Include the capture ID in the POST request to refund the captured amount. ' tags: - refund operationId: refundCapture x-devcenter-metaData: categoryTag: Payments developerGuides: https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html isMLEsupported: true mleForRequest: optional parameters: - name: refundCaptureRequest in: body required: true schema: type: object properties: clientReferenceInformation: type: object properties: code: type: string maxLength: 59 description: 'Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' reconciliationId: type: string maxLength: 60 description: 'Reference number for the transaction. Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource. The actual value used in the request to the processor is provided back to you by Cybersource in the response. ' returnReconciliationId: type: string description: A new ID which is created for refund pausedRequestId: type: string maxLength: 26 description: 'Used to resume a transaction that was paused for an order modification rule to allow for payer authentication to complete. To resume and continue with the authorization/decision service flow, call the services and include the request id from the prior decision call. ' transactionId: type: string maxLength: 30 description: 'Identifier that you assign to the transaction. Normally generated by a client server to identify a unique API request. **Note** Use this field only if you want to support merchant-initiated reversal and void operations. #### Used by **Authorization, Authorization Reversal, Capture, Credit, and Void** Optional field. #### PIN Debit For a PIN debit reversal, your request must include a request ID or a merchant transaction identifier. Optional field for PIN debit purchase or credit requests. ' comments: type: string description: Brief description of the order or any comment you wish to add to the order. partner: type: object properties: originalTransactionId: type: string maxLength: 32 description: 'Value that links the previous transaction to the current follow-on request. This value is assigned by the client software that is installed on the POS terminal, which makes it available to the terminal''s software and to CyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal''s software. CyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource reporting functionality. This field is supported only on these processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX Optional field. ' developerId: type: string maxLength: 8 description: 'Identifier for the developer that helped integrate a partner solution to CyberSource. Send this value in all requests that are sent through the partner solutions built by that developer. CyberSource assigns the ID to the developer. **Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect. ' solutionId: type: string maxLength: 8 description: 'Identifier for the partner that is integrated to CyberSource. Send this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner. **Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect. ' thirdPartyCertificationNumber: type: string maxLength: 12 description: 'Value that identifies the application vendor and application version for a third party gateway. CyberSource provides you with this value during testing and validation. This field is supported only on CyberSource through VisaNet. #### Used by **Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void** Optional field. #### PIN debit Required field for PIN debit credit, PIN debit purchase, or PIN debit reversal request. ' applicationName: type: string description: 'The name of the Connection Method client (such as Virtual Terminal or SOAP Toolkit API) that the merchant uses to send a transaction request to CyberSource. ' applicationVersion: type: string description: 'Version of the CyberSource application or integration used for a transaction. ' applicationUser: type: string description: 'The entity that is responsible for running the transaction and submitting the processing request to CyberSource. This could be a person, a system, or a connection method. ' processingInformation: type: object properties: actionList: type: array description: "Array of actions (one or more) to be included in the payment to invoke bundled services along with payment status.\n\nPossible values are one or more of follows:\n\n - `AP_REFUND`: Use this when Alternative Payment Refund service is requested.\n" items: type: string paymentSolution: type: string maxLength: 12 description: "Type of digital payment solution for the transaction. Possible Values:\n\n - `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)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. \n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" reconciliationId: type: string maxLength: 60 description: 'Please check with Cybersource customer support to see if your merchant account is configured correctly so you can include this field in your request. * For Payouts: max length for FDCCompass is String (22). ' linkId: type: string maxLength: 26 description: 'Value that links the current authorization request to the original authorization request. Set this value to the ID that was returned in the reply message from the original authorization request. This value is used for: - Partial authorizations - Split shipments ' reportGroup: type: string maxLength: 25 description: 'Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**. ' visaCheckoutId: type: string maxLength: 48 description: 'Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in the Visa Checkout **callID** field. ' purchaseLevel: type: string maxLength: 1 description: Set this field to 3 to indicate that the request includes Level III data. recurringOptions: type: object properties: loanPayment: type: boolean description: 'Flag that indicates whether this is a payment towards an existing contractual loan. Possible values: - `true`: Loan payment - `false`: (default) Not a loan payment ' default: false industryDataType: type: string maxLength: 20 description: 'Indicates that the transaction includes industry-specific data. Possible Values: - `airline` - `restaurant` - `lodging` - `auto_rental` - `transit` - `healthcare_medical` - `healthcare_transit` - `transit` #### Card Present, Airlines and Auto Rental You must set this field to `airline` in order for airline data to be sent to the processor. For example, if this field is not set to `airline` or is not included in the request, no airline data is sent to the processor. You must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field is not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor. You must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this field is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor. Restaurant data is supported only on CyberSource through VisaNet. ' paymentType: type: string description: Identifier for the payment type refundOptions: type: object properties: reason: type: string description: The reason for the refund. transactionTypeIndicator: type: string maxLength: 3 description: 'This field is used identify the type of payment transaction taking place. This field is applicable for MasterCard transactions only. Possible values: - 201- Mastercard Rebate - 202- rePower Load Value - 203- Gaming Re-pay - 204- General Person-to-Person - 205- General Transfer to Own Account - 206- Agent Cash Out - 207- Payment of Own Credit Card Bill - 208- Business Disbursement - 209- Government/Non-Profit Disbursement - 210- Rapid Merchant Settlement - 211- Cash in at ATM (Usage limited to specific countries) - 212- Cash in at Point of Sale (Usage limited to specific countries) - 213- General Business to Business Transfer - 214- Mastercard Merchant Presented QR - 215- Mastercard Merchant Presented QR Refund Payment - 216- Utility Payments (for Brazil domestic use only) - 217- Government Services (for Brazil domestic use only) - 218- Mobile phone top-ups (for Brazil domestic use only) - 219- Coupon booklet payments (for Brazil domestic use only) - 220- General Person-to-Person Transfer - 221- Person-to-Person Transfer to Card Account - 222- General Transfer to Own Account - 223- Agent Cash Out - 224- Payment of Own Credit Card Bill - 225- Business Disbursement - 226- Transfer to Own Staged Digital Wallet Account - 227- Transfer to Own Debit or Prepaid Account - 228- General Business-to-Business Transfer - 229- Installment-based repayment - 230- Mastercard ATM Cash Pick-Up Transaction - 231- Cryptocurrency - 232- High-risk Securities ' merchantVerificationValue: type: string maxLength: 25 description: 'The override value of the Merchant Verification Value (MVV) received by various card brands. MVV refers to the value assigned by the card brand/network to identify participation in select merchant programs. Sample value for Visa: `101010` ' paymentInformation: type: object properties: card: type: object properties: number: type: string maxLength: 20 description: 'The customer''s payment card number, also known as the Primary Account Number (PAN). You can also use this field for encoded account numbers. #### FDMS Nashville Required. String (19) #### GPX Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### All other processors Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. ' expirationMonth: type: string maxLength: 2 description: 'Two-digit month in which the payment card expires. Format: `MM`. Valid values: `01` through `12`. Leading 0 is required. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`. #### FDMS Nashville Required field. #### All other processors Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. ' expirationYear: type: string maxLength: 4 description: 'Four-digit year in which the payment card expires. Format: `YYYY`. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (`1900` through `3000`) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`. #### FDMS Nashville Required field. #### FDC Nashville Global and FDMS South You can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year. #### All other processors Required if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured for relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. ' type: type: string description: 'Three-digit value that indicates the card type. **IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. Use card type value `001` for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `003`: American Express - `004`: Discover - `005`: Diners Club - `006`: Carte Blanche[^1] - `007`: JCB[^1] - `008`: Optima - `009`: GE Private Label - `010`: Beneficial Private Label - `011`: Twinpay Credit Card - `012`: Twinpay Debit Card - `013`: WalMart - `014`: Enroute[^1] - `015`: Lowe''s Consumer - `016`: Home Depot Consumer - `017`: MBNA - `018`: Dick''s Sportswear - `019`: Casual Corner - `020`: Sears - `021`: JAL[^1] - `023`: Disney Card - `024`: Maestro (UK Domestic)[^1] - `025`: Sam''s Club Consumer - `026`: Sam''s Club Business - `027`: Nico''s - `028`: Paymentech Bill Me Later - `029`: Bebe - `030`: Restoration Hardware - `031`: Delta Online - `032`: Solo - `033`: Visa Electron[^1]. Do not use this value. Use `001` for all Visa card types. - `034`: Dankort[^1] - `035`: Laser - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `038`: Pinless Debit - `039`: Encoded account number[^1] - `040`: UATP[^1] - `041`: HOUSEHOLD - `042`: Maestro (International)[^1] - `043`: GE MONEY - `044`: Korean Cards - `045`: Style Cards - `046`: JCrew - `047`: Payeasecn eWallet - `048`: Payeasecn Bank Transfer - `049`: Meijer - `050`: Hipercard[^2,3] - `051`: Aura - `052`: Redecard - `053`: Orico card - `054`: Elo[^3] - `055`: Capitol One Private Label - `056`: Carnet - `057`: Costco Private Label - `058`: Carnet - `059`: ValueLink - `060`: MADA - `061`: RuPay - `062`: China UnionPay - `063`: Falabella Private Label - `064`: Prompt Card - `065`: Korean Domestic - `066`: Banricompras - `067`: MEEZA - `068`: PayPak - `070`: EFTPOS - `071`: Codensa - `072`: Olimpica - `073`: Colsubsidio - `074`: Tuya - `075`: Sodexo - `076`: Naranja - `077`: Cabal - `078`: DINELCO - `079`: PANAL - `080`: EPM - `081`: Jaywan [^1]: For this card type, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in your request for an authorization or a stand-alone credit. [^2]: For this card type on Cielo 3.0, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. This card type is not supported on Cielo 1.5. [^3]: For this card type on Getnet and Rede, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. [^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services. #### Used by **Authorization** Required for Carte Blanche and JCB. Optional for all other card types. #### Card Present reply This field is included in the reply message when the client software that is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details. You must contact customer support to have your account enabled to receive these fields in the credit reply message. Returned by the Credit service. This reply field is only supported by the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. #### GPX This field only supports transactions from the following card types: - Visa - Mastercard - AMEX - Discover - Diners - JCB - Union Pay International ' accountEncoderId: type: string maxLength: 3 description: 'Identifier for the issuing bank that provided the customer''s encoded account number. Contact your processor for the bank''s ID. ' issueNumber: type: string maxLength: 5 description: 'Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. **Note** The issue number is not required for Maestro (UK Domestic) transactions. ' startMonth: type: string maxLength: 2 description: '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. ' startYear: type: string maxLength: 4 description: '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. ' sourceAccountType: type: string maxLength: 20 description: "Flag that specifies the type of account associated with the card. \nThe cardholder provides this information during the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CH`: Checking account\n - `CR`: Credit card account\n - `SA`: Saving account\n - `LI`: Line of credit or credit portion of combo card\n - `PP`: Prepaid card account or prepaid portion of combo card\n - `UA`: Universal account\n\nIf useAs is set to credit/debit and there is a value in SourceAccountType, the value in the SourceAccountType field will take precedence.\nIf useAs is set to CR/DB and there is a value in SourceAccountType, the value in the useAs field will take precedence.\n" sourceAccountTypeDetails: type: string maxLength: 4 description: 'Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP). Possible values for line of credit: - `AGRC`: Visa Agro Custeio - `AGRE`: Visa Agro Electron - `AGRI`: Visa Agro Investimento - `AGRO`: Visa Agro Possible values for prepaid card: - `VVA`: Visa Vale Alimentacao - `VVF`: Visa Vale Flex - `VVR`: Visa Vale Refeicao This field is supported only for combo card transactions in Brazil on CyberSource through VisaNet. ' securityCode: type: string maxLength: 4 description: 'Card Verification Number. #### FDMS Nashville Required for American Express or if swiped; otherwise, optional. #### Ingenico ePayments Do not include this field when `commerceIndicator=recurring`. **Note** Ingenico ePayments was previously called _Global Collect_. #### TSYS Acquiring Solutions Optional if pointOfSaleInformation.entryMode=keyed; otherwise, not used. #### GPX Optional. #### All other processors: Optional. ' useAs: type: string maxLength: 20 description: "Flag that specifies the type of account associated with the card. This field is available only for China UnionPay, Cielo, Comercio Latino and Visa Platform Connect.\nThe cardholder provides this information during the payment process. This field is required for:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n\n**China UnionPayCard Transactions on China UnionPay:**\nPossible values:\n - C: Domestic credit card\n - D: Domestic debit card\n - F: International credit card\n - I: International debit card\n\nWhen the value is D, the e-commerce indicator and CAVV fields must be included in the authorization request.\nWhen the value is C, F or I the card verification number, expiration month and expiration year fields must in included in the authorization request.\n\n**Cielo and Comercio Latino Credit Card Transactions:**\nOn these processors, this field is supported only for authorizations. Possible values:\n - CR: Credit card\n - DB: Debit card \n\n**Visa Platform Connect Credit Card Transactions:**\nThis field is supported for all card types on Visa Platform Connect.\nFor combo **card present** transactions with Mastercard on Brazilian-issued cards, possible values:\n - CR: Credit card\n - DB: Debit Card\n\nFor combo **card not present** transactions with Mastercard on Brazilian-issued cards, possible values:\n - C: Credit card\n - D: Debit card\n\nA value of CR or DB in the useAs field takes precedence over any value in the Source Account Type field.\n" bank: type: object properties: account: type: object properties: type: type: string maxLength: 1 description: "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" number: type: string maxLength: 30 description: 'Account number. When processing encoded account numbers, use this field for the encoded account number. ' encoderId: type: string maxLength: 3 description: 'Identifier for the bank that provided the customer''s encoded account number. To obtain the bank identifier, contact your processor. ' checkNumber: type: string maxLength: 8 description: 'Check number. Chase Paymentech Solutions - Optional. CyberSource ACH Service - Not used. RBS WorldPay Atlanta - Optional on debits. Required on credits. TeleCheck - Strongly recommended on debit requests. Optional on credits. ' checkImageReferenceNumber: type: string maxLength: 32 description: 'Image reference number associated with the check. You cannot include any special characters. ' routingNumber: type: string maxLength: 9 description: 'Bank routing number. This is also called the _transit number_. ' iban: type: string maxLength: 50 description: 'International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction. ' swiftCode: type: string description: 'Bank''s SWIFT code. You can use this field only when scoring a direct debit transaction. Required only for crossborder transactions. ' tokenizedCard: type: object properties: number: type: string maxLength: 20 description: 'Customer''s payment network token value. ' expirationMonth: type: string maxLength: 2 description: 'One of two possible meanings: - The two-digit month in which a token expires. - The two-digit month in which a card expires. Format: `MM` Possible values: `01` through `12` **NOTE** The meaning of this field is dependent on the payment processor that is returning the value in an authorization reply. Please see the processor-specific details below. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\ **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Samsung Pay and Apple Pay Month in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction. ' expirationYear: type: string maxLength: 4 description: 'One of two possible meanings: - The four-digit year in which a token expires. - The four-digit year in which a card expires. Format: `YYYY` Possible values: `1900` through `3000` Data type: Non-negative integer **NOTE** The meaning of this field is dependent on the payment processor that is returning the value in an authorization reply. Please see the processor-specific details below. #### Barclays and Streamline For Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through 3000) but is not required to be a valid expiration date. In other words, an expiration date that is in the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause the issuer to reject your request. #### Encoded Account Numbers For encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`. #### FDC Nashville Global and FDMS South You can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of the year. #### Samsung Pay and Apple Pay Year in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. ' type: type: string description: 'Three-digit value that indicates the card type. **IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is optional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type. Possible values: - `001`: Visa. Use card type value `001` for Visa Electron. - `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard. - `003`: American Express - `004`: Discover - `005`: Diners Club - `006`: Carte Blanche[^1] - `007`: JCB[^1] - `008`: Optima - `009`: GE Private Label - `010`: Beneficial Private Label - `011`: Twinpay Credit Card - `012`: Twinpay Debit Card - `013`: WalMart - `014`: Enroute[^1] - `015`: Lowe''s Consumer - `016`: Home Depot Consumer - `017`: MBNA - `018`: Dick''s Sportswear - `019`: Casual Corner - `020`: Sears - `021`: JAL[^1] - `023`: Disney Card - `024`: Maestro (UK Domestic)[^1] - `025`: Sam''s Club Consumer - `026`: Sam''s Club Business - `027`: Nico''s - `028`: Paymentech Bill Me Later - `029`: Bebe - `030`: Restoration Hardware - `031`: Delta Online - `032`: Solo - `033`: Visa Electron[^1]. Do not use this value. Use `001` for all Visa card types. - `034`: Dankort[^1] - `035`: Laser - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `038`: Pinless Debit - `039`: Encoded account number[^1] - `040`: UATP[^1] - `041`: HOUSEHOLD - `042`: Maestro (International)[^1] - `043`: GE MONEY - `044`: Korean Cards - `045`: Style Cards - `046`: JCrew - `047`: Payeasecn eWallet - `048`: Payeasecn Bank Transfer - `049`: Meijer - `050`: Hipercard[^2,3] - `051`: Aura - `052`: Redecard - `053`: Orico card - `054`: Elo[^3] - `055`: Capitol One Private Label - `056`: Carnet - `057`: Costco Private Label - `058`: Carnet - `059`: ValueLink - `060`: MADA - `061`: RuPay - `062`: China UnionPay - `063`: Falabella Private Label - `064`: Prompt Card - `065`: Korean Domestic - `066`: Banricompras - `067`: MEEZA - `068`: PayPak - `070`: EFTPOS - `071`: Codensa - `072`: Olimpica - `073`: Colsubsidio - `074`: Tuya - `075`: Sodexo - `076`: Naranja - `077`: Cabal - `078`: DINELCO - `079`: PANAL - `080`: EPM - `081`: Jaywan [^1]: For this card type, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in your request for an authorization or a stand-alone credit. [^2]: For this card type on Cielo 3.0, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. This card type is not supported on Cielo 1.5. [^3]: For this card type on Getnet and Rede, you must include the `paymentInformation.card.type` or `paymentInformation.tokenizedCard.type` field in a request for an authorization or a stand-alone credit. [^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services. #### Used by **Authorization** Required for Carte Blanche and JCB. Optional for all other card types. #### Card Present reply This field is included in the reply message when the client software that is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details. You must contact customer support to have your account enabled to receive these fields in the credit reply message. Returned by the Credit service. This reply field is only supported by the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX #### Google Pay transactions For PAN-based Google Pay transactions, this field is returned in the API response. #### GPX This field only supports transactions from the following card types: - Visa - Mastercard - AMEX - Discover - Diners - JCB - Union Pay International ' cryptogram: type: string maxLength: 255 description: This field contains token information. requestorId: type: string maxLength: 11 description: 'Value that identifies your business and indicates that the cardholder''s account number is tokenized. This value is assigned by the token service provider and is unique within the token service provider''s database. **Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**. #### PIN debit Optional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used. ' transactionType: type: string maxLength: 1 description: 'Type of transaction that provided the token data. This value does not specify the token service provider; it specifies the entity that provided you with information about the token. Possible value: - `2`: Near-field communication (NFC) transaction. The customer''s mobile device provided the token data for a contactless EMV transaction. For recurring transactions, use this value if the original transaction was a contactless EMV transaction. #### Visa Platform Connect - `1`: For Rupay and In App tokenization. Example: InApp apple pay. - `3`: Card/Credential On File Tokenization. **NOTE** No CyberSource through VisaNet acquirers support EMV at this time. Required field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used. #### Rupay - `3`: Card/Credential On File Tokenization. - `4`: Tokenizined Transaction. Should be used for Guest Checkout transactions with token. ' assuranceLevel: type: string maxLength: 2 description: 'Confidence level of the tokenization. This value is assigned by the token service provider. **Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**. Returned by PIN debit credit or PIN debit purchase. **Note** Merchants supported for **CyberSource through VisaNet**/**Visa Platform Connect** are advised not to use this field. ' storageMethod: type: string maxLength: 3 description: "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" securityCode: type: string maxLength: 4 description: 'Card Verification Number (CVN). #### Ingenico ePayments Do not include this field when **commerceIndicator=recurring**. **Note** Ingenico ePayments was previously called _Global Collect_. ' securityCodeIndicator: type: string maxLength: 1 description: "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" assuranceMethod: type: string maxLength: 2 description: 'Confidence level of the tokenization. This value is assigned by the token service provider. **Note** This field is supported only for **Visa Platform Connect** ' fluidData: type: object properties: keySerialNumber: type: string description: 'The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html) ' descriptor: type: string maxLength: 128 description: 'The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values: Samsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ= Note: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor. Used by Authorization and Standalone Credits. Required for authorizations and standalone credits. Card Present processing: Format of the encrypted payment data. The value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`. The value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field. If paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==` If paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504` ' value: type: string maxLength: 4000 description: 'Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant. Used by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method. Card Present processing This field represents the encrypted payment data generated by the payment terminal/device. ' encoding: type: string maxLength: 6 description: 'Encoding method used to encrypt the payment data. Valid values: `Base64`, `HEX` If no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding ' customer: type: object properties: customerId: type: string description: 'Unique identifier for the customer''s card and billing information. When you use Payment Tokenization or Recurring Billing and you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. **NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer''s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn''t need to pass in data such as the card number or expiration date in the request itself. ' id: type: string description: 'Unique identifier for the Customer token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 paymentInstrument: type: object properties: id: type: string description: 'Unique identifier for the Payment Instrument token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 instrumentIdentifier: type: object properties: id: type: string description: 'Unique identifier for the Instrument Identifier token used in the transaction. When you include this value in your request, many of the fields that can be supplied for an authorization or credit become optional. ' minLength: 12 maxLength: 32 shippingAddress: type: object properties: id: type: string description: 'Unique identifier for the Customers Shipping Address token used in the transaction. When you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit become optional. ' minLength: 1 maxLength: 32 legacyToken: type: object properties: id: type: string description: 'Unique identifier for the legacy Secure Storage token used in the transaction. When you include this value in your request, many of the fields that are normally required for an authorization or credit become optional. ' minLength: 1 maxLength: 32 paymentType: type: object properties: name: type: string description: 'A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit. Possible values: - `CARD` (use this for a PIN debit transaction) - `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit) - `bankTransfer` (use for Online Bank Transafer for methods such as P24, iDeal, Estonia Bank, KCP) - `localCard` (KCP Local card via Altpay) - `carrierBilling` (KCP Carrier Billing via Altpay) ' subTypeName: type: string description: 'In case the APM supports multiple modes of initiation (e.g. Alipay via QR Code or Barcode) ' method: type: object properties: name: type: string description: 'A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal, 7Eleven, alfamart, bofaPayByBank, payToPayByBank, etc For Japan Payment Processing Valid Values: - 1 Banking Data - 2 Authorization Data #### Via KCP - `KCP` : Local Card, Bank Transfer and Carrier Billing. - `PAYCO` - `KAKAOPAY` - `NAVERPAY` ' eWallet: type: object properties: fundingSource: type: string maxLength: 30 description: Payment mode for the authorization or order transaction.  INSTANT_TRANSFER  MANUAL_BANK_TRANSFER  DELAYED_TRANSFER  ECHECK  UNRESTRICTED (default)—this value is available only when configured by PayPal for the merchant. INSTANT paymentAccountReference: type: object properties: id: type: string maxLength: 29 description: 'A Payment Account Reference number (PAR) is a unique reference value associated with a specific card holder PAN. It identifies the card account, not just a card. PAR is a non-payment identifier that can be associated to PANs and tokens, as defined by EMVCo. PAR allows all participants in the payments chain to have a single, non-sensitive value assigned to a consumer. This value can be used in place of sensitive card holder identification fields, and transmitted across the payments ecosystem to facilitate card holder identification. ' thirdPartyToken: type: object properties: id: type: string maxLength: 16 description: 'When a third party is being used for tokenization, this field contains the token ID. See tokenInformation.thirdPartyToken.source to identify the provider. ' initiationChannel: type: string maxLength: 2 description: 'Mastercard-defined code that indicates how the account information was obtained for credit authorization transactions. Possible values: - `00`: Card (default) - `01`: Mobile network operator (MNO) controlled removable secure element (SIM or UICC) personalized for use with a mobile phone or smartphone - `02`: Key fob - `03`: Watch - `04`: Mobile tag - `05`: Wristband - `06`: Mobile phone case or sleeve - `07`: Mobile phone or smartphone with fixed (nonremovable) secure element controlled by the MNO (for example, code division multiple access (CDMA)) - `08`: Removable secure element not controlled by the MNO (for example, memory card personalized for use with a mobile phone or smartphone) - `09`: Mobile phone or smartphone with a fixed (nonremovable) secure element not controlled by the MNO - `10`: MNO-controlled removable secure element (SIM or UICC) personalized for use with a tablet or e-book - `11`: Tablet or e-book with a fixed (nonremovable) secure element controlled by the MNO - `12`: Removable secure element not controlled by the MNO (for example, memory card personalized for use with a tablet or e-book) - `13`: Tablet or e-book with fixed (nonremovable) secure element not controlled by the MNO - `14` - `99`: Reserved for future use This field flows in ISO Field 104 DSID 65 Tag 04. This field is supported for Mastercard credit authorization transactions. #### Used by **Credit Authorization (Standalone)** Optional field. ' orderInformation: type: object properties: amountDetails: type: object properties: totalAmount: type: string maxLength: 19 description: "Grand total for the order. This value cannot be negative. You can include a decimal point (.), but no other special characters.\nCyberSource truncates the amount to the correct number of decimal places.\n\n**Note** For CTV, FDCCompass, Paymentech processors, the maximum length for this field is 12.\n\n**Important** Some processors have specific requirements and limitations, such as maximum amounts and maximum field lengths.\n\nIf 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. \n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing / Pay By Link\nRequired for creating a new invoice or payment link.\n\n#### PIN Debit\nAmount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount.\n\nRequired field for PIN Debit purchase and PIN Debit credit requests.\nOptional field for PIN Debit reversal requests.\n\n#### GPX\nThis field is optional for reversing an authorization or credit; however, for all other processors, these fields are required.\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 this field or the 1st line item in the order and the specific line-order amount in your request. \n\n#### DCC for First Data\nNot used.\n" currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' discountAmount: type: string maxLength: 15 description: 'Total discount amount applied to the order. ' dutyAmount: type: string maxLength: 15 description: 'Total charges for any import or export duties included in the order. ' gratuityAmount: type: string maxLength: 13 description: 'Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant. When your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not submit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the issuer has chargeback rights for the excess amount. Used by **Capture** Optional field. #### CyberSource through VisaNet Restaurant data is supported only on CyberSource through VisaNet when card is present. ' taxAmount: type: string maxLength: 12 description: 'Total tax amount for all the items in the order. ' nationalTaxIncluded: type: string maxLength: 1 description: "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" taxAppliedAfterDiscount: type: string maxLength: 1 description: "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" taxAppliedLevel: type: string maxLength: 1 description: "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" taxTypeCode: type: string maxLength: 3 description: "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" freightAmount: type: string maxLength: 13 description: 'Total freight or shipping and handling charges for the order. When you include this field in your request, you must also include the **totalAmount** field. ' foreignAmount: type: string maxLength: 15 description: 'Set this field to the converted amount that was returned by the DCC provider. ' foreignCurrency: type: string maxLength: 5 description: 'Set this field to the converted amount that was returned by the DCC provider. ' exchangeRate: type: string maxLength: 13 description: 'Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places. ' exchangeRateTimeStamp: type: string maxLength: 16 description: 'Time stamp for the exchange rate. This value is returned by the DCC service. Format: `YYYYMMDD~HH:MM` where ~ denotes a space. ' amexAdditionalAmounts: type: array items: type: object properties: code: type: string maxLength: 3 description: 'Additional amount type. This field is supported only for **American Express Direct**. ' amount: type: string maxLength: 12 description: 'Additional amount. This field is supported only for **American Express Direct**. ' taxDetails: type: array items: type: object properties: type: type: string description: 'Indicates the type of tax data for the _taxDetails_ object. Possible values: - `alternate` - `local` - `national` - `vat` - `other` - `green` ' amount: type: string maxLength: 13 description: 'Indicates the amount of tax based on the `type` field as described in the table below: | type | type description | | ------------- |:-------------:| | `alternate` | Total amount of alternate tax for the order. | | `local` | Sales tax for the order. | | `national` | National tax for the order. | | `vat` | Total amount of value added tax (VAT) included in the order. | | `other` | Other tax. | | `green` | Green tax amount for Korean Processing. | ' rate: type: string maxLength: 6 description: 'Rate of VAT or other tax for the order. Example 0.040 (=4%) Valid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated) ' code: type: string maxLength: 4 description: 'Type of tax being applied to the item. #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator` ' taxId: type: string maxLength: 15 description: 'Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value, including zero. You may send this field without sending alternate tax amount. ' applied: type: boolean description: 'Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is included in the request. Possible values: - `false`: alternate tax amount is not included in the request. - `true`: alternate tax amount is included in the request. ' exemptionCode: type: string maxLength: 1 description: 'Status code for exemption from sales and use tax. 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. ' serviceFeeAmount: type: string maxLength: 15 description: 'Service fee. Required for service fee transactions. ' originalCurrency: type: string maxLength: 15 description: 'Your local pricing currency code. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) ' cashbackAmount: type: string maxLength: 13 description: 'Cashback amount in the acquirer''s currency. If a cashback amount is included in the request, it must be included in the `orderInformation.amountDetails.totalAmount` value. This field is supported only on CyberSource through VisaNet. #### Used by **Authorization** Optional. **Authorization Reversal** Optional. #### PIN debit Optional field for PIN debit purchase, PIN debit credit or PIN debit reversal. ' billTo: type: object properties: title: type: string maxLength: 60 description: 'Title. ' firstName: type: string maxLength: 60 description: 'Customer''s first name. This name must be the same as the name on the card. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### SEPA Required for Create Mandate and Import Mandate #### BACS Required for Import Mandate #### CyberSource Latin American Processing **Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\ **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' middleName: type: string maxLength: 60 description: 'Customer''s middle name. ' lastName: type: string maxLength: 60 description: 'Customer''s last name. This name must be the same as the name on the card. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### SEPA Required for Create Mandate and Import Mandate #### BACS Required for Import Mandate #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### CyberSource Latin American Processing **Important** For an authorization request, CyberSource Latin American Processing concatenates `orderInformation.billTo.firstName` and `orderInformation.billTo.lastName`. If the concatenated value exceeds 30 characters, CyberSource Latin American Processing declines the authorization request.\ **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### OmniPay Direct Optional field. #### RBS WorldPay Atlanta Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' company: type: object properties: name: type: string maxLength: 60 description: 'Name of the customer''s company. **CyberSource through VisaNet** Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. ' address1: type: string maxLength: 40 description: First line in the street address of the company purchasing the product. address2: type: string maxLength: 40 description: Additional address information for the company purchasing the product. locality: type: string maxLength: 30 description: City in the address of the company purchasing the product. administrativeArea: type: string maxLength: 50 description: 'State or province in the address of the company purchasing the product. Use the State, Province, and Territory Codes for the United States and Canada. ' postalCode: type: string maxLength: 10 description: 'Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits. When the company country is the U.S., the 9-digit postal code must follow this format: **[5 digits][dash][4 digits]** #### Example `12345-6789` When the company country is Canada, the 6-digit postal code must follow this format: **[alpha][numeric][alpha][space][numeric][alpha][numeric]** #### Example `A1B 2C3` ' country: type: string maxLength: 2 description: 'Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). ' address1: type: string maxLength: 60 description: 'Payment card billing street address as it appears on the credit card issuer''s records. #### SEPA Required for Create Mandate and Import Mandate #### Atos This field must not contain colons (:). #### CyberSource through VisaNet **Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks. Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### FDMS Nashville When the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_, it must be sent as _1 1st Street_. Required if keyed; not used if swiped. String (20) #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### All other processors: Optional. String (60) #### For Payouts This field may be sent only for FDC Compass. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. ' address2: type: string maxLength: 60 description: 'Used for additional address information. For example: _Attention: Accounts Payable_ Optional field. For Payouts: This field may be sent only for FDC Compass. #### Atos This field must not contain colons (:). #### CyberSource through VisaNet **Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`, CyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters, CyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank. Truncating this value affects AVS results and therefore might also affect risk decisions and chargebacks. Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions This value is used for AVS. #### FDMS Nashville `orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters. String (20) #### All Other Processors String (60) ' locality: type: string maxLength: 50 description: 'Payment card billing city. #### SEPA Required for Create Mandate and Import Mandate #### Atos This field must not contain colons (:). #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' district: type: string maxLength: 50 description: 'Customer''s neighborhood, community, or region (a barrio in Brazil) within the city or municipality. This field is available only on **Cielo**. ' administrativeArea: type: string maxLength: 50 description: 'State or province of the billing address. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf). For Payouts: This field may be sent only for FDC Compass. ##### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' postalCode: type: string maxLength: 10 description: "Postal code for the billing address. The postal code must consist of 5 to 9 digits.\n\nWhen the billing country is the U.S., the 9-digit postal code must follow this format:\n[5 digits][dash][4 digits]\n\n**Example** `12345-6789`\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n[alpha][numeric][alpha][space][numeric][alpha][numeric]\n\n**Example** `A1B 2C3`\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### SEPA\nRequired for Create Mandate and Import Mandate\n\n#### For Payouts:\n This field may be sent only for FDC Compass.\n\n#### American Express Direct\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the remaining value is longer than nine characters, truncates the value starting from the right side.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\nCredit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet\naccepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations\nof the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the\ncredit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII\ncharacters for transmission to the credit card networks.\n\n#### FDMS Nashville\nRequired if `pointOfSaleInformation.entryMode=keyed` and the address is in the U.S. or Canada.\nOptional if `pointOfSaleInformation.entryMode=keyed` and the address is **not** in the U.S. or Canada.\nNot used if swiped.\n\n#### RBS WorldPay Atlanta:\nFor best card-present keyed rates, send the postal code if `pointOfSaleInformation.entryMode=keyed`.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional field.\n" county: type: string maxLength: 50 description: U.S. county if available. country: type: string maxLength: 3 description: 'Payment card billing country. Use the two-character [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). #### SEPA/BACS Required for Create Mandate and Import Mandate #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' email: type: string maxLength: 255 description: 'Customer''s email address, including the full domain name. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. **Important** It is your responsibility to determine whether a field is required for the transaction you are requesting. #### Invoicing Email address for the customer for sending the invoice. If the invoice is in SENT status and email is updated, the old email customer payment link won''t work and you must resend the invoice with the new payment link. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Required when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`. #### Worldpay VAP Optional field. #### All other processors Not used. ' phoneNumber: type: string maxLength: 15 description: 'Customer''s phone number. It is recommended that you include the country code when the order is from outside the U.S. #### Chase Paymentech Solutions Optional field. #### Credit Mutuel-CIC Optional field. #### CyberSource through VisaNet Credit card networks cannot process transactions that contain non-ASCII characters. CyberSource through VisaNet accepts and stores non-ASCII characters correctly and displays them correctly in reports. However, the limitations of the credit card networks prevent CyberSource through VisaNet from transmitting non-ASCII characters to the credit card networks. Therefore, CyberSource through VisaNet replaces non-ASCII characters with meaningless ASCII characters for transmission to the credit card networks. #### For Payouts: This field may be sent only for FDC Compass. #### OmniPay Direct Optional field. #### SIX Optional field. #### TSYS Acquiring Solutions Optional field. #### Worldpay VAP Optional field. #### All other processors Not used. ' shipTo: type: object properties: administrativeArea: type: string maxLength: 50 description: "State or province of the shipping address. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf) (maximum length: 2) \n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder's location when shipTo objects are not present.\n" country: type: string description: 'Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf) Required field for authorization if any shipping address information is included in the request; otherwise, optional. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. Billing address objects will be used to determine the cardholder''s location when shipTo objects are not present. ' maxLength: 3 postalCode: type: string maxLength: 32 description: 'Postal code for the shipping address. The postal code must consist of 5 to 9 digits. Required field for authorization if any shipping address information is included in the request and shipping to the U.S. or Canada; otherwise, optional. When the billing country is the U.S., the 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example 12345-6789 When the billing country is Canada, the 6-digit postal code must follow this format: [alpha][numeric][alpha][space][numeric][alpha][numeric] Example A1B 2C3 #### American Express Direct Before sending the postal code to the processor, all nonalphanumeric characters are removed and, if the remaining value is longer than nine characters, the value is truncated starting from the right side. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. Billing address objects will be used to determine the cardholder''s location when shipTo objects are not present. ' email: type: string description: Email of the recipient. maxLength: 255 county: type: string description: U.S. county if available. maxLength: 50 lineItems: type: array items: type: object properties: productCode: type: string maxLength: 255 description: 'Type of product. The value for this field is used to identify the product category (electronic, handling, physical, service, or shipping). The default value is `default`. If you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set this field to a value other than `default` or one of the values related to shipping and/or handling, then `orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and `orderInformation.lineItems[].productSku` fields are required. Optional field. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. The Product Codes for the tax service are located in the Cybersource Tax Codes guide. Contact Customer Support to request the guide. If you don''t send a tax service Product Code in your tax request, product-based rules or exemptions will not be applied and the transaction will default to fully taxable in the locations where you''ve indicated you need to collect tax [by way of nexus, no nexus, or seller registration number fields]. ' productName: type: string maxLength: 255 description: 'For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S., Canadian, international tax, and value added taxes. ' productSku: type: string maxLength: 255 description: 'Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling. #### Tax Calculation Optional field for U.S. and Canadian taxes. Not applicable to international and value added taxes. 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 values related to shipping and/or handling. ' quantity: type: integer minimum: 1 maximum: 999999999 default: 1 description: '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. ' unitPrice: type: string maxLength: 15 description: '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) ' unitOfMeasure: type: string maxLength: 12 description: 'Unit of measure, or unit of measure code, for the item. ' totalAmount: type: string maxLength: 13 description: 'Total amount for the item. Normally calculated as the unit price times quantity. When `orderInformation.lineItems[].productCode` is "gift_card", this is the purchase amount total for prepaid gift cards in major units. Example: 123.45 USD = 123 ' taxAmount: type: string maxLength: 15 description: "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" taxRate: type: string maxLength: 7 description: 'Tax rate applied to the item. **Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated). **Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%). ' taxAppliedAfterDiscount: type: string maxLength: 1 description: "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" taxStatusIndicator: type: string maxLength: 1 description: "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" taxTypeCode: type: string maxLength: 4 description: 'Type of tax being applied to the item. #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator` ' amountIncludesTax: type: boolean description: "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" typeOfSupply: type: string maxLength: 2 description: "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" commodityCode: type: string maxLength: 15 description: 'Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes. ' discountAmount: type: string maxLength: 13 description: Discount applied to the item. discountApplied: type: boolean description: "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" discountRate: type: string maxLength: 6 description: 'Rate the item is discounted. Maximum of 2 decimal places. Example 5.25 (=5.25%) ' invoiceNumber: type: string maxLength: 23 description: 'Field to support an invoice number for a transaction. You must specify the number of line items that will include an invoice number. By default, the first line item will include an invoice number field. The invoice number field can be included for up to 10 line items. ' taxDetails: type: array items: type: object properties: type: type: string description: 'Indicates the type of tax data for the _taxDetails_ object. Possible values: - `alternate` - `local` - `national` - `vat` - `other` - `green` ' amount: type: string maxLength: 13 description: 'Indicates the amount of tax based on the `type` field as described in the table below: | type | type description | | ------------- |:-------------:| | `alternate` | Total amount of alternate tax for the order. | | `local` | Sales tax for the order. | | `national` | National tax for the order. | | `vat` | Total amount of value added tax (VAT) included in the order. | | `other` | Other tax. | | `green` | Green tax amount for Korean Processing. | ' rate: type: string maxLength: 6 description: 'Rate of VAT or other tax for the order. Example 0.040 (=4%) Valid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated) ' code: type: string maxLength: 4 description: 'Type of tax being applied to the item. #### FDC Nashville Global - `alternate_tax_type_applied` - `alternate_tax_type_identifier` #### Worldpay VAP - `alternate_tax_type_identifier` #### RBS WorldPay Atlanta - `tax_type_applied` #### TSYS Acquiring Solutions - `tax_type_applied` - `local_tax_indicator` #### Chase Paymentech Solutions - `tax_type_applied` #### Elavon Americas - `local_tax_indicator` #### FDC Compass - `tax_type_applied` #### OmniPay Direct - `local_tax_indicator` ' taxId: type: string maxLength: 15 description: 'Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value, including zero. You may send this field without sending alternate tax amount. ' applied: type: boolean description: 'Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is included in the request. Possible values: - `false`: alternate tax amount is not included in the request. - `true`: alternate tax amount is included in the request. ' exemptionCode: type: string maxLength: 1 description: 'Status code for exemption from sales and use tax. 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. ' invoiceDetails: type: object properties: purchaseOrderNumber: type: string maxLength: 50 description: 'Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource recommends that you do not populate the field with all zeros or nines. ' purchaseOrderDate: type: string maxLength: 10 description: 'Date the order was processed. `Format: YYYY-MM-DD`. ' purchaseContactName: type: string maxLength: 36 description: 'The name of the individual or the company contacted for company authorized purchases. ' taxable: type: boolean description: "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nPossible values:\n - **true**\n - **false**\n" vatInvoiceReferenceNumber: type: string maxLength: 15 description: 'VAT invoice number associated with the transaction. ' commodityCode: type: string maxLength: 4 description: 'International description code of the overall order''s goods or services or the Categorizes purchases for VAT reporting. Contact your acquirer for a list of codes. ' transactionAdviceAddendum: type: array items: type: object properties: data: type: string maxLength: 40 description: 'Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information about a transaction on the customer''s American Express card statement. When you send TAA fields, start with amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be ignored. To use these fields, contact CyberSource Customer Support to have your account enabled for this feature. ' shippingDetails: type: object properties: shipFromPostalCode: type: string maxLength: 10 description: 'Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is the postal code associated with your CyberSource account. The postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code must follow this format: `[5 digits][dash][4 digits]` Example 12345-6789 When the billing country is Canada, the 6-digit postal code must follow this format: `[alpha][numeric][alpha][space] [numeric][alpha][numeric]` Example A1B 2C3 This field is frequently used for Level II and Level III transactions. ' digitalCurrency: type: object description: Digital currency information for the order. properties: type: type: string maxLength: 10 description: 'Currently, Visa uses a broad "cryptocurrency" indicator. The enhancement will introduce specific values to identify the type of digital currency or coin involved, such as Central Bank Digital Currency (CBDC), stable coins, blockchain-native tokens, and Non-Fungible Tokens (NFTs). Values: - 1: CBDC_TOKENDEPOSIT - 2: STABLE_COIN - 3: BLOCKCHAIN_NATIVE_TOKEN - 4: NFT' rampProviderCountry: type: string maxLength: 10 description: Ramp is a platform where we can buy Digital currency, for example Coinbase. This value identifies the country where the Ramp provider is registered. conversionAffiliate: type: string maxLength: 10 description: Affiliate is the platform for the digital currency transactions. The merchant provides the Affiliate country for transaction processing. The combination of affiliate country and ramp country helps to derive the foreign retail indicator. buyerInformation: type: object properties: merchantCustomerId: type: string maxLength: 100 description: 'Your identifier for the customer. When a subscription or customer profile is being created, the maximum length for this field for most processors is 30. Otherwise, the maximum length is 100. #### Comercio Latino For recurring payments in Mexico, the value is the customer''s contract number. Note Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions. #### Worldpay VAP For a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order given, for a customer account ID value and uses the first value it finds: 1. `customer_account_id` value in the follow-on credit request 2. Customer account ID value that was used for the capture that is being credited 3. Customer account ID value that was used for the original authorization If a customer account ID value cannot be found in any of these locations, then no value is used. ' vatRegistrationNumber: type: string maxLength: 20 description: 'Customer''s government-assigned tax identification number. #### Tax Calculation Optional for international and value added taxes only. Not applicable to U.S. and Canadian taxes. ' dateOfBirth: type: string maxLength: 8 description: '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. ' gender: type: string maxLength: 3 description: Customer's gender. Possible values are F (female), M (male),O (other). language: type: string maxLength: 5 description: "language setting of the user. \nSupports 2-character language codes (e.g., en, fr) and 5-character locale values (e.g., en-US, fr-CA).\n" personalIdentification: type: array items: type: object properties: id: type: string maxLength: 26 description: "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports. \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" deviceInformation: type: object properties: hostName: type: string maxLength: 60 description: DNS resolved hostname from `ipAddress`. ipAddress: type: string maxLength: 45 description: 'IP address of the customer. #### Used by **Authorization, Capture, and Credit** Optional field. ' userAgent: type: string maxLength: 40 description: 'Customer''s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies the Netscape browser. ' merchantInformation: type: object properties: merchantDescriptor: type: object properties: name: type: string description: 'Your merchant name. **Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22. #### PIN debit Your business name. This name is displayed on the cardholder''s statement. When you include more than one consecutive space, extra spaces are removed. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. Optional field for PIN debit credit or PIN debit purchase requests. #### Airline processing Your merchant name. This name is displayed on the cardholder''s statement. When you include more than one consecutive space, extra spaces are removed. **Note** Some airline fee programs may require the original ticket number (ticket identifier) or the ancillary service description in positions 13 through 23 of this field. **Important** This value must consist of English characters. Required for captures and credits. ' alternateName: type: string maxLength: 13 description: 'An alternate name for the merchant. ' contact: type: string maxLength: 25 description: 'Contact information for the merchant. **Note** These are the maximum data lengths for the following payment processors: - FDCCompass (13) - Paymentech (13) ' address1: type: string maxLength: 60 description: 'First line of merchant''s address. ' locality: type: string maxLength: 30 description: 'Merchant''s City. #### PIN debit City for your business location. This value might be displayed on the cardholder''s statement. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. Optional field for PIN debit credit or PIN debit purchase requests. ' country: type: string maxLength: 3 description: 'Merchant''s country. #### PIN debit Country code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf) This value might be displayed on the cardholder''s statement. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. **Note** If your business is located in the U.S. or Canada and you include this field in a request, you must also include `merchantInformation.merchantDescriptor.administrativeArea`. Optional field for PIN debit credit or PIN debit purchase. ' postalCode: type: string maxLength: 14 description: 'Merchant''s postal code. #### PIN debit Postal code for your business location. This value might be displayed on the cardholder''s statement. If your business is domiciled in the U.S., you can use a 5-digit or 9-digit postal code. A 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example: `12345-6789` If your business is domiciled in Canada, you can use a 6-digit or 9-digit postal code. A 6-digit postal code must follow this format: [alpha][numeric][alpha][space] [numeric][alpha][numeric] Example: `A1B 2C3` When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. **Note** This field is supported only for businesses located in the U.S. or Canada. **Important** Mastercard requires a postal code for any country that uses postal codes. You can provide the postal code in your account or you can include this field in your request. Optional field for PIN debit credit or PIN debit purchase. ' administrativeArea: type: string description: 'The state where the merchant is located. #### PIN debit State code or region code for your business. Use the Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf) This value might be displayed on the cardholder''s statement. When you do not include this value in your PIN debit request, the merchant name from your account is used. **Important** This value must consist of English characters. **Note** This field is supported only for businesses located in the U.S. or Canada. Optional field for PIN debit credit or PIN debit purchase. ' phone: type: string maxLength: 13 description: 'Merchant phone as contact information for CNP transactions ' url: type: string maxLength: 255 description: 'Address of company''s website provided by merchant ' countryOfOrigin: type: string maxLength: 2 description: '#### Visa Platform Connect This field will indicate merchant country of origin ' storeId: type: string maxLength: 50 description: 'The identifier of the store. ' storeName: type: string maxLength: 50 description: 'The name of the store. ' customerServicePhoneNumber: type: string maxLength: 27 description: '#### Visa Platform Connect Indicates customer service phone number of Merchant. ' categoryCode: type: integer maximum: 9999 description: 'The value for this field is a four-digit number that the payment card industry uses to classify merchants into market segments. A payment card company assigned one or more of these values to your business when you started accepting the payment card company''s cards. When you do not include this field in your request, CyberSource uses the value in your CyberSource account. #### CyberSource through VisaNet The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP01 TCR4 - Position: 150-153 - Field: Merchant Category Code ' vatRegistrationNumber: type: string maxLength: 21 description: 'Your government-assigned tax identification number. #### Tax Calculation Required field for value added tax only. Not applicable to U.S. and Canadian taxes. #### CyberSource through VisaNet For CtV processors, the maximum length is 20. ' cardAcceptorReferenceNumber: type: string maxLength: 25 description: 'Reference number that facilitates card acceptor/corporation communication and record keeping. ' taxId: type: string maxLength: 15 description: 'Your Cadastro Nacional da Pessoa Jurídica (CNPJ) number. 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 TCR6 - Position: 40-59 - Field: BNDES Reference Field 1 ' aggregatorInformation: type: object properties: aggregatorId: type: string maxLength: 20 description: 'Value that identifies you as a payment aggregator. Get this value from the processor. #### CyberSource through VisaNet The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP01 TCR6 - Position: 95-105 - Field: Payment Facilitator ID This field is supported for Visa, Mastercard and Discover Transactions. **FDC Compass**\ This value must consist of uppercase characters. ' name: type: string maxLength: 37 description: 'Your payment aggregator business name. **American Express Direct**\ The maximum length of the aggregator name depends on the length of the sub-merchant name. The combined length for both values must not exceed 36 characters.\ #### CyberSource through VisaNet With American Express, the maximum length of the aggregator name depends on the length of the sub-merchant name. The combined length for both values must not exceed 36 characters. The value for this field does not map to the TC 33 capture file5. **FDC Compass**\ This value must consist of uppercase characters. ' subMerchant: type: object properties: name: type: string maxLength: 37 description: 'Sub-merchant''s business name. #### American Express Direct The maximum length of the sub-merchant name depends on the length of the aggregator name. The combined length for both values must not exceed 36 characters. #### CyberSource through VisaNet With American Express, the maximum length of the sub-merchant name depends on the length of the aggregator name. The combined length for both values must not exceed 36 characters. The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. #### FDC Nashville Global With Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name: - If aggregator name length is 1 through 3, maximum sub-merchant name length is 21. - If aggregator name length is 4 through 7, maximum sub-merchant name length is 17. - If aggregator name length is 8 through 12, maximum sub-merchant name length is 12. ' address1: type: string maxLength: 38 description: 'First line of the sub-merchant''s street address. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' locality: type: string maxLength: 21 description: 'Sub-merchant''s city. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' administrativeArea: type: string maxLength: 50 description: 'Sub-merchant''s state or province. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' postalCode: type: string maxLength: 15 description: 'Partial postal code for the sub-merchant''s address. #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file5. #### FDC Compass This value must consist of uppercase characters. ' country: type: string maxLength: 3 description: 'Sub-merchant''s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). #### CyberSource through VisaNet The value for this field does not map to the TC 33 capture file. #### FDC Compass This value must consist of uppercase characters. ' email: type: string maxLength: 40 description: "Sub-merchant's email address.\n\n**Maximum length for processors**\n\n - American Express Direct: 40\n - CyberSource through VisaNet: 40\n - FDC Compass: 40\n - FDC Nashville Global: 19\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 25-64\n- Field: American Express Seller E-mail Address\n\n**Note** The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource. CyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant's acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" phoneNumber: type: string maxLength: 20 description: "Sub-merchant's telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" id: type: string maxLength: 20 description: 'The ID you assigned to your sub-merchant. CyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file: - Record: CP01 TCRB - Position: 65-84 - Field: American Express Seller ID For Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file: - Record: CP01 TCR6 - Position: 117-131 - Field: Sub-Merchant ID FDC Compass: This value must consist of uppercase characters. American Express Direct: String (20) CyberSource through VisaNet with American Express: String (20) CyberSource through VisaNet with Visa,Mastercard and Discover: String (15) FDC Compass: String (20) FDC Nashville Global: String (14) ' merchantCategoryCode: type: number maxLength: 20 x-nullable: true pointOfSaleInformation: type: object properties: emv: type: object properties: tags: type: string maxLength: 1998 description: "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \"Application Specification\" section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\nFor Mastercard Transactions, Optionally Tag 9F60 (Authenticated Application Data) and \nTag 96 (Kernel Identifier - Terminal) can be included in the Field.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" fallback: type: boolean maxLength: 5 description: "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" terminalCategory: type: string maxLength: 3 description: "Indicates the type of terminal. \n\nPossible values:\n- `AFD`: Automated Fuel Dispenser\n" merchantDefinedInformation: type: array description: 'The object containing the custom data that the merchant defines. ' items: type: object properties: key: type: string maxLength: 50 description: 'The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100. For example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`. #### CyberSource through VisaNet For installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and `merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the transaction. ' value: type: string maxLength: 800 description: "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. \n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" travelInformation: type: object properties: duration: type: string maxLength: 2 description: 'Duration of the auto rental or lodging rental. #### Auto rental This field is supported for Visa, MasterCard, and American Express. **Important** If this field is not included when the `processingInformation.industryDataType` is auto rental, the transaction is declined. ' agency: type: object properties: code: type: string maxLength: 8 description: 'International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation. ' name: type: string maxLength: 25 description: 'Name of travel agency that made the reservation. ' autoRental: type: object properties: noShowIndicator: type: boolean description: 'No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle. Possible values: - true - false ' customerName: type: string maxLength: 40 description: 'Name of the individual making the rental agreement. Valid data lengths by card: |Card Specific Validation|VISA|MasterCard|Discover|AMEX| |--- |--- |--- |--- | | Filed Length| 40| 40| 29| 26| | Field Type| AN| ANS| AN| AN| | M/O/C| O| M| M| M| ' vehicleClass: type: string maxLength: 4 description: 'Classification of the rented auto. **NOTE** For VISA, this is a 2-byte optional code. Valid values for American Express & MasterCard: |American Express |MasterCard |Description| |--- |--- |--- | | 0001| 0001| Mini| | 0002| 0002| Subcompact| | 0003| 0003| Economy| | 0004| 0004| Compact| | 0005| 0005| Midsize| | 0006| 0006| Intermediate| | 0007| 0007| Standard| | 0008| 0008| Fulll size| | 0009| 0009| Luxury| | 0010| 0010| Premium| | 0011| 0011| Minivan| | 0012| 0012| 12-passenger van| | 0013| 0013| Moving van| | 0014| 0014| 15-passenger van| | 0015| 0015| Cargo van| | 0016| 0016| 12-foot truck| | 0017| 0017| 20-foot truck| | 0018| 0018| 24-foot truck| | 0019| 0019| 26-foot truck| | 0020| 0020| Moped| | 0021| 0021| Stretch| | 0022| 0022| Regular| | 0023| 0023| Unique| | 0024| 0024| Exotic| | 0025| 0025| Small/medium truck| | 0026| 0026| Large truck| | 0027| 0027| Small SUV| | 0028| 0028| Medium SUV| | 0029| 0029| Large SUV| | 0030| 0030| Exotic SUV| | 9999| 9999| Miscellaneous| Additional Values allowed **only** for `American Express`: |American Express|MasterCard|Description| |--- |--- |--- | | 0031| NA| Four Wheel Drive| | 0032| NA| Special| | 0099| NA| Taxi| ' distanceTravelled: type: string maxLength: 5 description: 'Total number of miles driven by the customer. This field is supported only for MasterCard and American Express. ' distanceUnit: type: string maxLength: 1 description: 'Miles/Kilometers Indicator shows whether the "miles" fields are expressed in miles or kilometers. Allowed values: - `K` - Kilometers - `M` - Miles ' returnDateTime: type: string maxLength: 21 description: 'Date/time the auto was returned to the rental agency. Format: ``yyyy-MM-dd HH-mm-ss z`` This field is supported for Visa, MasterCard, and American Express. ' rentalDateTime: type: string maxLength: 21 description: 'Date/time the auto was picked up from the rental agency. Format: `yyyy-MM-dd HH-mm-ss z` This field is supported for Visa, MasterCard, and American Express. ' maxFreeDistance: type: string maxLength: 4 description: 'Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement. This field is supported only for MasterCard and American Express. ' insuranceIndicator: type: boolean description: 'Used for MC and Discover Valid values: - `true` - Yes (insurance was purchased) - `false` - No (insurance was not purchased) ' programCode: type: string maxLength: 2 description: 'Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as "renter" or "show". This code is `2 digit` value agreed by Merchant and processor. ' returnAddress: type: object properties: city: type: string maxLength: 25 description: 'City where the auto was returned to the rental agency. ' state: type: string maxLength: 3 description: 'State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf). For authorizations, this field is supported for Visa, MasterCard, and American Express. For captures, this field is supported only for MasterCard and American Express. ' country: type: string maxLength: 3 description: 'Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf). ' locationId: type: string maxLength: 10 description: 'Code, address, phone number, etc. used to identify the location of the auto rental return. This field is supported only for MasterCard and American Express. ' address1: type: string maxLength: 50 description: 'When merchant wants to send the rental address''s street address. ' postalCode: type: string maxLength: 50 description: 'When merchant wants to send the return address''s postal code. ' location: type: string maxLength: 38 description: 'This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned. ' rentalAddress: type: object properties: city: type: string maxLength: 25 description: 'City in which the auto was rented. For authorizations, this field is supported for Visa, MasterCard, and American Express. For captures, this field is supported only for American Express. For all other card types, this field is ignored. ' state: type: string maxLength: 3 description: 'State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf). ' country: type: string maxLength: 3 description: 'Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf) This field is supported only for American Express. ' locationId: type: string maxLength: 10 description: 'The agency code, address, phone number, etc., used to identify the location where the vehicle was rented. ' address1: type: string maxLength: 13 description: 'Address from where the vehicle was rented. ' address2: type: string maxLength: 13 description: 'Address from where the vehicle was rented. ' postalCode: type: string maxLength: 50 description: 'When merchant wants to send the rental address''s postal code. ' location: type: string maxLength: 38 description: 'This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency''s business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible. ' agreementNumber: type: string maxLength: 25 description: 'Auto rental agency''s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions. This field is supported for Visa, MasterCard, and American Express. This Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become part of the descriptive bill on the Cardmember''s statement. ' odometerReading: type: string maxLength: 8 description: 'Odometer reading at time of vehicle rental. ' vehicleIdentificationNumber: type: string maxLength: 20 description: 'This field contains a unique identifier assigned by the company to the vehicle. ' companyId: type: string maxLength: 12 description: 'Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle: |Card Specific Validation|VISA|MasterCard|Discover|AMEX| |--- |--- |--- |--- | | Filed Length| NA| 12| NA| NA| | Field Type| NA| AN| NA| NA| | M/O/C| NA| O| NA| NA| ' numberOfAdditionalDrivers: type: string maxLength: 1 description: 'The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement. ' driverAge: type: string maxLength: 3 description: 'Age of the driver renting the vehicle. ' specialProgramCode: type: string maxLength: 2 description: 'Program code used to identify special circumstances, such as "frequent renter" or "no show" status for the renter. Possible values: - `0`: not applicable (default) - `1`: frequent renter - `2`: no show For authorizations, this field is supported only for Visa. For captures, this field is supported for Visa, MasterCard, and American Express. Code for special programs applicable to the Card Transaction or the Cardholder. ' vehicleMake: type: string maxLength: 10 description: 'Make of the vehicle being rented (e.g., Chevrolet or Ford). ' vehicleModel: type: string maxLength: 10 description: 'Model of the vehicle being rented (e.g., Cavalier or Focus). ' timePeriod: type: string maxLength: 7 description: 'Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values. ' commodityCode: type: string maxLength: 15 description: 'Commodity code or International description code used to classify the item. Contact your acquirer for a list of codes. ' customerServicePhoneNumber: type: string maxLength: 17 description: 'Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number. This field is supported only for MasterCard and American Express. ' taxDetails: type: object properties: amount: type: string maxLength: 13 description: 'Indicates the amount of tax based on the `type` field as described in the table below: ' rate: type: string maxLength: 6 description: 'Rate of VAT or other tax for the order. Example 0.040 (=4%) Valid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional decimal places will be truncated) ' applied: type: boolean description: 'Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is included in the request. Possible values: - `false`: tax amount is not included in the request. - `true`: tax amount is included in the request. ' exemptionCode: type: string maxLength: 1 description: 'Status code for exemption from sales and use tax. 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. ' taxType: type: string maxLength: 10 description: 'Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax. ' taxSummary: type: string maxLength: 12 description: 'Summary of all tax types ' insuranceAmount: type: string maxLength: 12 description: 'Insurance charges. Field is conditional and can include decimal point. ' oneWayDropOffAmount: type: string maxLength: 12 description: 'Extra charges incurred for a one-way rental agreement for the auto. This field is supported only for Visa. ' adjustedAmountIndicator: type: string maxLength: 1 description: 'For **MasterCard** and **Discover**: Adjusted amount indicator code that indicates any miscellaneous charges incurred after the auto was returned. Possible values: - `A` - Drop-off charges - `B` - Delivery charges - `C` - Parking expenses - `D` - Extra hours - `E` - Violations - `X` - More than one of the above charges For **American Express**: Audit indicator code that indicates any adjustment for mileage, fuel, auto damage, etc. made to a rental agreement and whether the cardholder was notified. Possible value for the authorization service: - `A` (default): adjustment amount greater than 0 (zero) Possible values for the capture service: - `X` - Multiple adjustments - `Y` - One adjustment only; Cardmember notified - `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero). This is an optional field. ' adjustedAmount: type: string maxLength: 12 description: 'Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned. For authorizations, this field is supported only for American Express. For captures, this field is supported only for MasterCard and American Express. **NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field is included in the request and has a value; otherwise, this field is optional. For all other card types, this field is ignored. ' fuelCharges: type: string maxLength: 12 description: 'Extra gasoline charges that extend beyond the basic rental agreement. This field is supported only for Visa. ' weeklyRentalRate: type: string maxLength: 12 description: 'Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present ' dailyRentalRate: type: string maxLength: 12 description: 'Daily auto rental rate charged. This field is supported only for MasterCard and American Express. Field - Time Period needs to be populated with Daily if this field is present ' ratePerMile: type: string maxLength: 12 description: 'Rate charged for each mile. This field is supported only for MasterCard and American Express. ' mileageCharge: type: string maxLength: 12 description: 'Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places ' extraMileageCharge: type: string maxLength: 12 description: 'Extra mileage charges that extend beyond the basic rental agreement. This field is supported only for Visa. ' lateFeeAmount: type: string maxLength: 12 description: 'Extra charges related to a late return of the rented auto. This field is supported only for Visa. ' towingCharge: type: string maxLength: 4 description: '(Towing Charges) provides the amount charged to tow the rental vehicle. ' extraCharge: type: string maxLength: 12 description: '(Extra Charges) provides the extra charges associated with the vehicle rental. ' gpsCharge: type: string maxLength: 12 description: 'Amount charged for renting a Global Positioning Service (GPS). ' phoneCharge: type: string maxLength: 12 description: 'Additional charges incurred for phone usage included on the total bill. ' parkingViolationCharge: type: string maxLength: 12 description: 'Extra charges incurred due to a parking violation for the auto. This field is supported only for Visa. ' otherCharges: type: string maxLength: 12 description: 'Total amount charged for all other miscellaneous charges not previously defined. ' companyName: type: string maxLength: 50 description: 'Merchant to send their auto rental company name ' affiliateName: type: string maxLength: 50 description: 'When merchant wants to send the affiliate name. ' lodging: type: object properties: checkInDate: type: string maxLength: 6 description: 'Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date. Format: `MMDDYY`. For best interchange rates, make sure it is a valid date. ' checkOutDate: type: string maxLength: 6 description: 'Date on which the guest checked out. Format: `MMDDYY`. For best interchange rates, make sure it is a valid date. ' room: type: array description: 'The object containing the number of nights and the daily rate that applies for that no of nights. ' items: type: object properties: dailyRate: type: string maxLength: 8 description: 'Daily cost of the room. ' numberOfNights: type: integer minimum: 1 maximum: 9999 description: 'Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`. ' smokingPreference: type: string maxLength: 1 description: 'Smoking preference of the guest. Possible values: - `Y`: smoking room - `N`: non-smoking room ' numberOfRooms: type: integer minimum: 1 maximum: 99 description: 'Number of rooms booked by the cardholder. ' numberOfGuests: type: integer minimum: 1 maximum: 99 description: 'Number of guests staying in the room. ' roomBedType: type: string maxLength: 12 description: 'Type of room, such as queen, king, or two doubles. ' roomTaxType: type: string maxLength: 10 description: 'Type of tax, such as tourist or hotel. ' roomRateType: type: string maxLength: 12 description: 'Type of rate, such as corporate or senior citizen. ' guestName: type: string maxLength: 40 description: 'Name of the guest under which the room is reserved. ' customerServicePhoneNumber: type: string maxLength: 17 description: 'Your toll-free customer service phone number. ' corporateClientCode: type: string maxLength: 17 description: 'Code assigned to a business. You can use this code to identify corporate rates and discounts for guests. ' additionalDiscountAmount: type: string maxLength: 12 description: 'Amount of an additional coupon or discount. ' roomLocation: type: string maxLength: 10 description: 'Location of room, such as lake view or ocean view. ' specialProgramCode: type: string maxLength: 1 description: 'Code that identifies special circumstances. Possible values: - `1`: lodging (default) - `2`: no show reservation - `3`: advanced deposit ' totalTaxAmount: type: string maxLength: 12 description: 'Total tax amount. ' prepaidCost: type: string maxLength: 12 description: 'Prepaid amount, such as a deposit. ' foodAndBeverageCost: type: string maxLength: 12 description: 'Cost for all food and beverages. ' roomTaxAmount: type: string maxLength: 12 description: 'Total tax for the room. ' adjustmentAmount: type: string maxLength: 12 description: 'Adjusted amount charged in addition to the reservation amount after the stay is complete. ' phoneCost: type: string maxLength: 12 description: 'Cost of telephone services. ' restaurantCost: type: string maxLength: 12 description: 'Cost of restaurant purchases ' roomServiceCost: type: string maxLength: 12 description: 'Cost of room service. ' miniBarCost: type: string maxLength: 12 description: 'Cost of mini-bar purchases. ' laundryCost: type: string maxLength: 12 description: 'Cost of laundry services. ' miscellaneousCost: type: string maxLength: 12 description: 'Miscellaneous costs. ' giftShopCost: type: string maxLength: 12 description: 'Cost of gift shop purchases. ' movieCost: type: string maxLength: 12 description: 'Cost of movies. ' healthClubCost: type: string maxLength: 12 description: 'Cost of health club services. ' valetParkingCost: type: string maxLength: 12 description: 'Cost of valet parking services. ' cashDisbursementCost: type: string maxLength: 12 description: 'Cost of the cash that was disbursed plus any associated service fees ' nonRoomCost: type: string maxLength: 12 description: 'Cost of non-room purchases, such as meals and gifts. ' businessCenterCost: type: string maxLength: 12 description: 'Cost of business center services. ' loungeBarCost: type: string maxLength: 12 description: 'Cost of lounge and bar purchases. ' transportationCost: type: string maxLength: 12 description: 'Cost of transportation services. ' gratuityAmount: type: string maxLength: 12 description: 'Gratuity. ' conferenceRoomCost: type: string maxLength: 12 description: 'Cost of conference room services. ' audioVisualCost: type: string maxLength: 12 description: 'Cost of audio visual services. ' banquestCost: type: string maxLength: 12 description: 'Cost of banquet services. ' nonRoomTaxAmount: type: string maxLength: 12 description: 'Tax on non-room purchases. ' earlyCheckOutCost: type: string maxLength: 12 description: 'Service fee for early departure. ' internetAccessCost: type: string maxLength: 12 description: 'Cost of Internet access. ' name: type: string maxLength: 255 description: 'Name of the hotel for which the reservation is for. Mandatory in case the merchant''s business type is Hotel. ' hotelName: type: string description: 'The name of the hotel for which the reservation was made. ' checkInDateTime: type: string description: 'The date of the check-in in GMT+8 offset. ' checkOutDateTime: type: string description: 'The date of the check-out in GMT+8 offset. ' transit: type: object properties: airline: type: object properties: isDomestic: type: string maxLength: 255 description: 'Specifies if the flight is: Domestic (01) International (02) If Y then 01 else 02 ' bookingReferenceNumber: type: string maxLength: 15 description: 'Reference number for the airline booking. Required if ticket numbers are not issued. ' carrierName: type: string maxLength: 15 description: 'Airline that generated the ticket. Format: English characters only. Optional request field. ' ticketIssuer: type: object properties: code: type: string maxLength: 4 description: 'IATA2 airline code. Format: English characters only. Required for Mastercard; optional for all other card types. ' name: type: string maxLength: 20 description: 'Name of the ticket issuer. If you do not include this field, CyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database. ' address: type: string maxLength: 16 description: 'Address of the company issuing the ticket. ' locality: type: string maxLength: 18 description: 'City in which the transaction occurred. If the name of the city exceeds 18 characters, use meaningful abbreviations. Format: English characters only. Optional request field. ' administrativeArea: type: string maxLength: 18 description: 'State in which transaction occured. ' postalCode: type: string maxLength: 15 description: 'Zip code of the city in which transaction occured. ' country: type: string maxLength: 18 description: 'Country in which transaction occured. ' ticketNumber: type: string maxLength: 15 description: 'Ticket number. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' checkDigit: type: string maxLength: 1 description: 'Check digit for the ticket number. CyberSource recommends that you validate the check digit. With Discover and Diners Club, a valid ticket number has these characteristics: - The value is numeric. - The first three digits are a valid IATA2 license plate carrier code. - The last digit is a check digit or zero (0). - All remaining digits are nonzero. ' restrictedTicketIndicator: type: integer maxLength: 1 description: 'Flag that indicates whether or not the ticket is restricted (nonrefundable). Possible values: - 0: No restriction (refundable) - 1: Restricted (nonrefundable) Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' transactionType: type: integer maxLength: 2 description: 'Type of charge. Possible values: - 01: Charge is for an airline ticket - 02: Charge is for an item that is not an airline ticket ' extendedPaymentCode: type: string maxLength: 3 description: 'The field is not currently supported. ' passengerName: type: string maxLength: 42 description: 'Name of the passenger to whom the ticket was issued. This will always be a single passenger''s name. If there are more than one passengers, provide only the primary passenger''s name. Do not include special characters such as commas, hyphens, or apostrophes. Only ASCII characters are supported. Format: English characters only. Optional request field. ' customerCode: type: string maxLength: 40 description: 'Reference number or code that identifies the cardholder. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' documentType: type: string maxLength: 1 description: 'Airline document type code that specifies the purpose of the transaction. Format: English characters only. Optional request field. | Code | Description | | --- | --- | | 01 | Passenger ticket | | 02 | Additional collection | | 03 | Excess baggage | | 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization | | 05 | Special service ticket | | 06 | Supported refund | | 07 | Unsupported refund | | 08 | Lost ticket application | | 09 | Tour order voucher | | 10 | Ticket by mail | | 11 | Undercharge adjustment | | 12 | Group ticket | | 13 | Exchange adjustment | | 14 | SPD or air freight | | 15 | In-flight adjustment | | 16 | Agency passenger ticket | | 17 | Agency tour order or voucher | | 18 | Agency miscellaneous charge order (MCO) | | 19 | Agency exchange order | | 20 | Agency group ticket | | 21 | Debit adjustment for duplicate refund or use | | 22 | In-flight merchandise order | | 23 | Catalogue merchandise order | | 24 | In-flight phone charges | | 25 | Frequent flyer fee or purchase | | 26 | Kennel charge | | 27 | Animal transportation charge | | 28 | Firearms case | | 29 | Upgrade charge | | 30 | Credit for unused transportation | | 31 | Credit for class of service adjustment | | 32 | Credit for denied boarding | | 33 | Credit for miscellaneous refund | | 34 | Credit for lost ticket refund | | 35 | Credit for exchange refund | | 36 | Credit for overcharge adjustment | | 37 | Credit for multiple Unused tickets | | 38 | Exchange order | | 39 | Self-service ticket | | 41 | In-flight duty-free purchase | | 42 | Senior citizen discount booklets | | 43 | Club membership fee | | 44 | Coupon book | | 45 | In-flight charges | | 46 | Tour deposit | | 47 | Frequent flyer overnight delivery charge | | 48 | Frequent flyer fulfillment | | 49 | Small package delivery | | 50 | Vendor sale | | 51 | Miscellaneous taxes or fees | | 52 | Travel agency fee | | 60 | Vendor refund or credit | | 64 | Duty free sale | | 65 | Preferred seat upgrade | | 66 | Cabin upgrade | | 67 | Lounge or club access or day pass | | 68 | Agent assisted reservation or ticketing fee | | 69 | Ticket change or cancel fee | | 70 | Trip insurance | | 71 | Unaccompanied minor | | 72 | Standby fee | | 73 | Curbside baggage | | 74 | In-flight medical equipment | | 75 | Ticket or pass print fee | | 76 | Checked sporting or special equipment | | 77 | Dry ice fee | | 78 | Mail or postage fee | | 79 | Club membership fee or temporary trial | | 80 | Frequent flyer activation or reinstatement | | 81 | Gift certificate | | 82 | Onboard or in-flight prepaid voucher | | 83 | Optional services fee | | 84 | Advance purchase for excess baggage | | 85 | Advance purchase for preferred seat upgrade | | 86 | Advance purchase for cabin upgrade | | 87 | Advance purchase for optional services | | 88 | WiFi | | 89 | Packages | | 90 | In-flight entertainment or internet access | | 91 | Overweight bag fee | | 92 | Sleep sets | | 93 | Special purchase fee | ' documentNumber: type: string maxLength: 14 description: 'The field is not currently supported. ' documentNumberOfParts: type: integer maxLength: 4 description: 'The field is not currently supported. ' invoiceNumber: type: string maxLength: 25 description: 'Invoice number for the airline transaction. ' invoiceDate: type: integer maxLength: 8 description: 'Invoice date. The format is YYYYMMDD. If this value is included in the request, it is used in the creation of the invoice number. See "Invoice Number," ' additionalCharges: type: string maxLength: 20 description: 'Description of the charge if the charge does not involve an airline ticket. For example: Excess baggage. ' totalFeeAmount: type: string maxLength: 12 description: 'Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s). Format: English characters only. Optional request field. ' clearingSequence: type: string maxLength: 2 description: 'Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction. Each clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records. Format: English characters only. Optional request field. ' clearingCount: type: string maxLength: 2 description: 'Total number of clearing messages associated with the authorization request. Format: English characters only. Optional request field. ' totalClearingAmount: type: string maxLength: 20 description: 'Total clearing amount for all transactions in the clearing count set. This value cannot exceed `99999999999999999999` (twenty 9s). Format: English characters only. If this field is not set and if the total amount from the original authorization is not NULL, the total clearing amount is set to the total amount from the original authorization. ' numberOfPassengers: type: integer maxLength: 3 description: 'Number of passengers for whom the ticket was issued. Format: English characters only. Optional request field. ' reservationSystemCode: type: string maxLength: 20 description: 'Code that specifies the computerized reservation system used to make the reservation and purchase the ticket. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field. ' processIdentifier: type: string maxLength: 3 description: 'Airline process identifier. This value is the airline''s three-digit IATA1 code which is used to process extended payment airline tickets. ' ticketIssueDate: type: string maxLength: 8 description: 'Date on which the transaction occurred. Format: `YYYYMMDD` Format: English characters only. Optional request field. ' electronicTicketIndicator: type: boolean description: 'Flag that indicates whether an electronic ticket was issued. Possible values: - `true` - `false` Optional request field. ' originalTicketNumber: type: string maxLength: 14 description: 'Original ticket number when the transaction is for a replacement ticket. ' purchaseType: type: string maxLength: 3 description: 'Type of purchase. Possible values: - `EXC`: Exchange ticket - `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket) - `REF`: Refund - `TKT`: Ticket Format: English characters only. Optional request field. ' creditReasonIndicator: type: string maxLength: 1 description: 'Reason for the credit. Possible values: - `A`: Cancellation of the ancillary passenger transport purchase. - `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase. - `C`: Cancellation of the airline ticket. - `O`: Other. - `P`: Partial refund of the airline ticket. Format: English characters only. Optional request field. ' ticketChangeIndicator: type: string maxLength: 1 description: 'Type of update. Possible values: - `C`: Change to the existing ticket. - `N`: New ticket. Format: English characters only Optional request field. ' planNumber: type: string maxLength: 1 description: 'Plan number based on the fare. This value is provided by the airline. Format: English characters only. Optional request field. ' arrivalDate: type: string maxLength: 8 description: 'Date of arrival for the last leg of the trip. Format: `MMDDYYYY` English characters only. Optional request field. ' restrictedTicketDesciption: type: string maxLength: 20 description: 'Text that describes the ticket limitations, such as _nonrefundable_. Format: English characters only. Optional request field. ' exchangeTicketAmount: type: string maxLength: 12 description: 'Amount of the exchanged ticket. Format: English characters only. ' exchangeTicketFeeAmount: type: string maxLength: 12 description: 'Fee for exchanging the ticket. Format: English characters only. Optional request field. ' reservationType: type: string maxLength: 32 description: 'The field is not currently supported. ' boardingFeeAmount: type: string maxLength: 12 description: 'Boarding fee. ' legs: type: array items: type: object properties: carrierCode: type: string maxLength: 4 description: 'IATA code for the carrier for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' flightNumber: type: string maxLength: 6 description: 'Flight number for this leg of the trip. Restrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay. Format: English characters only. Optional request field for travel legs. ' originatingAirportCode: type: string maxLength: 5 description: 'IATA code for the originating airport for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' class: type: string maxLength: 3 description: 'IATA code for the class of service for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' stopoverIndicator: type: integer maxLength: 1 description: 'Code that indicates whether a stopover is allowed on this leg of the trip. Possible values: - `O` (capital letter "O") (default): Stopover allowed - `X` (capital letter "X"): Stopover not allowed Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' departureDate: type: integer maxLength: 8 description: 'Departure date for the first leg of the trip. Format: `YYYYMMDD`. Format: English characters only. Optional request field for travel legs. ' destinationAirportCode: type: string maxLength: 3 description: 'IATA code for the destination airport for this leg of the trip. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' fareBasis: type: string maxLength: 15 description: 'Code for the fare basis for this leg of the trip. The fare basis is assigned by the carriers and indicates a particular ticket type, such as business class or discounted/nonrefundable. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Format: English characters only. Optional request field for travel legs.auto_rental_regular_mileage_cost ' departTaxAmount: type: string maxLength: 12 description: 'Amount of departure tax for this leg of the trip. ' conjunctionTicket: type: string maxLength: 25 description: 'Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' exchangeTicketNumber: type: string maxLength: 25 description: 'New ticket number that is issued when the ticket is exchanged for this leg of the trip. Restrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay. Format: English characters only. Optional request field for travel legs. ' couponNumber: type: string maxLength: 1 description: 'Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' departureTime: type: integer maxLength: 4 description: 'Time of departure for this leg of the trip. The format is military time and HHMM: If not all zeros, then the hours must be `00-23` and the minutes must be `00-59`. Format: English characters only. Optional request field for travel legs. ' departureTimeMeridian: type: string maxLength: 1 description: 'AM or PM for the departure time. Possible values: - A: 12:00 midnight to 11:59 a.m. - P: 12:00 noon to 11:59 p.m Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' arrivalTime: type: integer maxLength: 4 description: 'Time of arrival for this leg of the trip. The format is military time and HHMM: If not all zeros, then the hours must be `00-23` and the minutes must be `00-59` Format: English characters only. Optional request field for travel legs. ' arrivalTimeMeridian: type: string maxLength: 1 description: 'AM or PM for the arrival time for this leg of the trip. Possible values: - `A`: 12:00 midnight to 11:59 a.m. - `P`: 12:00 noon to 11:59 p.m. Format: English characters only. Restricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included. Optional request field for travel legs. ' endorsementsRestrictions: type: string maxLength: 20 description: 'Notes or notations about endorsements and restrictions for this leg of the trip. Endorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax. Restrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay. Format: English characters only. Optional request field for travel legs. ' totalFareAmount: type: string maxLength: 15 description: 'Total fare for this leg of the trip. Format: English characters only. Optional request field for travel legs. ' feeAmount: type: string maxLength: 12 description: 'Fee for this leg of the trip, such as an airport fee or country fee. Format: English characters only. Optional request field for travel legs. ' taxAmount: type: string maxLength: 12 description: 'Tax for this leg of the trip. Format: English characters only. Optional request field for travel legs. ' ancillaryInformation: type: object properties: ticketNumber: type: string maxLength: 15 description: 'Ticket number, which consists of the carrier code, form, and serial number, without the check digit. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program. Format: English characters only. Optional field for ancillary services. ' passengerName: type: string maxLength: 20 description: 'Name of the passenger. If the passenger''s name is not available, this value is the cardholder''s name. If neither the passenger''s name nor the cardholder''s name is available, this value is a description of the ancillary purchase. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program. Format: English characters only. Optional field for ancillary service. ' connectedTicketNumber: type: string maxLength: 15 description: 'Number for the airline ticket to which the ancillary purchase is connected. If this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase. For a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program. Format: English characters only. Optional request field for ancillary services. ' creditReasonIndicator: type: string maxLength: 15 description: 'Reason for the credit. Possible values: - `A`: Cancellation of the ancillary passenger transport purchase. - `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase. - `C`: Cancellation of the airline ticket. - `O`: Other. - `P`: Partial refund of the airline ticket. Format: English characters only. Optional field for ancillary services. ' service: type: array items: type: object properties: categoryCode: type: string maxLength: 4 description: 'Category code for the ancillary service that is provided. Obtain the codes from the International Air Transport Association (IATA). **Note** `#` is either 0, 1, 2, or 3. **Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)program. Format: English characters only. Optional request field for ancillary services. ' subCategoryCode: type: string maxLength: 4 description: 'Subcategory code for the ancillary service category. Obtain the codes from the International Air Transport Association (IATA). **Note** `#` is either 0, 1, 2, or 3. Format English characters only. Optional request field for ancillary services. ' flightType: type: string maxLength: 2 description: 'Specifies the type of flight. One way (0) Return (1) Transit (2) Transit & Return (3) Multi-City (4) ' insuranceAmount: type: string maxLength: 255 description: 'The total cost of the flight insurance. Example: 10000.00 ' frequentFlyerNumber: type: string maxLength: 255 description: 'The consumer''s frequent flyer number. Leave 0 if there is no frequent flyer number ' thirdPartyStatus: type: string maxLength: 255 description: 'Specifies if the travel agent joins the flight (0) or not (1) ' passengerType: type: string maxLength: 50 description: 'List of passenger types in a booking code: A (Adult) C (Child) Comma separated values for total number of passenger ' totalInsuranceAmount: type: string maxLength: 50 description: 'Total insurance amount. We have per leg and not total ' vehicleData: type: object properties: connectorType: type: string maxLength: 3 description: 'This field will contain connector type values for electric vehicle transactions. Possible Values: 001 (AC - J1772 Type 1) 002 (AC - Mennekes - Type 2) 003 (AC - GB/T) 100 (DC - CCS1) 101 (DC - CHAdeMO) 102 (DC - CCS2) 103 (DC - GB/T) 200 (NACS – Tesla) ' chargingReasonCode: type: string maxLength: 3 description: 'This field will contain charging reason code values for electric vehicle transactions. Possible Values: 010 (Other Error) 011 (Connector Lock Failure) 012 (EV Communication Error) 013 (Ground Failure) 014 (High Temperature) 015 (Internal Error) 016 (Over Current Failure) 017 (Over Voltage) 018 (Power Meter Failure) 019 (Power Switch Failure) 020 (Reader Failure) 021 (Reset Failure) 022 (Under Voltage) 023 (Weak Signal) 100 (No Error) 200 (Payment Related Error) ' promotionInformation: type: object properties: additionalCode: type: string maxLength: 12 description: 'Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement. ' code: type: string maxLength: 12 description: 'Code for a promotion or discount. ' processorInformation: type: object properties: network: type: object properties: economicallyRelatedTxnId: type: string maxLength: 50 description: Indicates the economically related transaction id example: clientReferenceInformation: code: Testing-VDP-Payments-Refund orderInformation: amountDetails: totalAmount: '102.21' currency: USD - name: id in: path description: The capture ID. This ID is returned from a previous capture request. required: true type: string responses: '201': description: Successful response. schema: title: ptsV2CapturesRefundsPost201Response type: object properties: _links: type: object properties: self: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' void: type: object properties: href: type: string description: This is the endpoint of the resource that was created by the successful request. method: type: string description: '`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource.' id: type: string maxLength: 26 description: 'An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response. ' submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n - DECLINED\n - INVALID_REQUEST\n" reconciliationId: type: string maxLength: 60 description: 'Reference number for the transaction. Depending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource. The actual value used in the request to the processor is provided back to you by Cybersource in the response. ' clientReferenceInformation: type: object properties: code: type: string maxLength: 59 description: 'Merchant-generated order reference or tracking number. It is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction. #### Used by **Authorization** Required field. #### PIN Debit Requests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being reversed. Required field for all PIN Debit requests (purchase, credit, and reversal). #### FDC Nashville Global Certain circumstances can cause the processor to truncate this value to 15 or 17 characters for Level II and Level III processing, which can cause a discrepancy between the value you submit and the value included in some processor reports. ' submitLocalDateTime: type: string maxLength: 14 description: 'Date and time at your physical location. Format: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds #### PIN Debit Optional field for PIN Debit purchase and credit requests. ' ownerMerchantId: type: string description: 'Merchant ID that was used to create the subscription or customer profile for which the service was requested. If your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using subscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID. If your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using profile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID. ' returnReconciliationId: type: string description: A new ID which is created for refund refundAmountDetails: type: object properties: refundAmount: type: string maxLength: 15 description: Total amount of the refund. creditAmount: type: string maxLength: 15 description: 'Amount that was credited to the cardholder''s account. Returned by PIN debit credit. ' currency: type: string maxLength: 3 description: 'Currency used for the order. Use the three-character [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf) #### Used by **Authorization** Required field. **Authorization Reversal** For an authorization reversal (`reversalInformation`) or a capture (`processingOptions.capture` is set to `true`), you must use the same currency that you used in your payment authorization request. #### PIN Debit Currency for the amount you requested for the PIN debit purchase. This value is returned for partial authorizations. The issuing bank can approve a partial amount if the balance on the debit card is less than the requested transaction amount. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Returned by PIN debit purchase. For PIN debit reversal requests, you must use the same currency that was used for the PIN debit purchase or PIN debit credit that you are reversing. For the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf). Required field for PIN Debit purchase and PIN Debit credit requests. Optional field for PIN Debit reversal requests. #### GPX This field is optional for reversing an authorization or credit. #### DCC for First Data Your local currency. #### Tax Calculation Required for international tax and value added tax only. Optional for U.S. and Canadian taxes. Your local currency. ' processingInformation: type: object properties: enhancedDataEnabled: type: boolean description: 'The possible values for the reply field are: - `true` : the airline data was included in the request to the processor. - `false` : the airline data was not included in the request to the processor. Returned by authorization, capture, or credit services. ' processorInformation: type: object properties: approvalCode: type: string maxLength: 6 description: 'Authorization code. Returned only when the processor returns this value. The length of this value depends on your processor. Returned by authorization service. #### PIN debit Authorization code that is returned by the processor. Returned by PIN debit credit. #### Elavon Encrypted Account Number Program The returned value is OFFLINE. #### TSYS Acquiring Solutions The returned value for a successful zero amount authorization is 000000. ' transactionId: type: string maxLength: 255 description: 'Network transaction identifier (TID). You can use this value to identify a specific transaction when you are discussing the transaction with your processor. Not all processors provide this value. Returned by the authorization service. #### PIN debit Transaction identifier generated by the processor. Returned by PIN debit credit. #### GPX Processor transaction ID. #### Cielo For Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank. #### Comercio Latino For Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank. #### CyberSource through VisaNet and GPN For details about this value for CyberSource through VisaNet and GPN, see "processorInformation.networkTransactionId" in [REST API Fields](https://developer.cybersource.com/content/dam/docs/cybs/en-us/apifields/reference/all/rest/api-fields.pdf) #### Moneris This value identifies the transaction on a host system. It contains the following information: - Terminal used to process the transaction - Shift during which the transaction took place - Batch number - Transaction number within the batch You must store this value. If you give the customer a receipt, display this value on the receipt. **Example** For the value 66012345001069003: - Terminal ID = 66012345 - Shift number = 001 - Batch number = 069 - Transaction number = 003 ' forwardedAcquirerCode: type: string maxLength: 32 description: 'Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway. Please contact the CyberSource Japan Support Group for more information. ' merchantNumber: type: string maxLength: 15 description: 'Identifier that was assigned to you by your acquirer. This value must be printed on the receipt. #### Returned by Authorizations and Credits. This reply field is only supported by merchants who have installed client software on their POS terminals and use these processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX ' responseCode: type: string maxLength: 10 description: 'For most processors, this is the error message sent directly from the bank. Returned only when the processor returns this value. **Important** Do not use this field to evaluate the result of the authorization. #### PIN debit Response value that is returned by the processor or bank. **Important** Do not use this field to evaluate the results of the transaction request. Returned by PIN debit credit, PIN debit purchase, and PIN debit reversal. #### AIBMS If this value is `08`, you can accept the transaction if the customer provides you with identification. #### Atos This value is the response code sent from Atos and it might also include the response code from the bank. Format: `aa,bb` with the two values separated by a comma and where: - `aa` is the two-digit error message from Atos. - `bb` is the optional two-digit error message from the bank. #### Comercio Latino This value is the status code and the error or response code received from the processor separated by a colon. Format: [status code]:E[error code] or [status code]:R[response code] Example `2:R06` #### JCN Gateway Processor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field. String (3) #### paypalgateway Processor generated ID for the itemized detail. ' responseSourceCode: type: string maxLength: 1 description: 'This field is used by Visa only and contains the response source/reason code that identifies the source of the field 39 response decision. Use this field only for clearing with your acquirer. ' achVerification: type: object properties: resultCode: type: string maxLength: 2 description: 'Results from the ACH verification service. ' resultCodeRaw: type: string maxLength: 10 description: 'Raw results from the ACH verification service. ' networkTransactionId: type: string description: Same value as `processorInformation.transactionId` settlementDate: type: string maxLength: 4 description: 'Field contains a settlement date. The date is in mmdd format, where: mm = month and dd = day. ' updateTimeUtc: type: string description: 'The date and time when the transaction was last updated, in Internet date and time format. ' network: type: object properties: economicallyRelatedTxnId: type: string maxLength: 50 description: Indicates the economically related transaction id merchantAdvice: type: object properties: code: type: string maxLength: 2 description: "- Merchant should update their retry logic to ensure retry is not attempted for the cards for which Issuer won't approve the transactions and where the retry is allowed.\n- Card Processing Associations provides this data which is being passed through in the following data element irrespective of the Card Associations. Usage of this data must be always associated with the Card Associations card types for merchant processing retry logic.\n- In additions to the Merchant Advice code, Associations also provides the decline response codes which provides the reason for decline. Association response code will be a pass-through value.\n\n#### Processors supported:\n - HSBC\n - Barclays\n - FDC Nash\n - FDI Global\n - Elavon America\n - VPC\n - Rede\n - Payment tech Salem\n\n\n#### Possible values:\n| Card Type | Advice Code | Description |\n| ----------- | ------------- | ------------------------------------------- |\n| VISA | 1 | Issuer never approves |\n| VISA | 2 | Issuer cannot approve at this time |\n| VISA | 3 | Data quality/revalidate payment information |\n| MasterCard | 01 | New account information available |\n| MasterCard | 02 | Try Again Later |\n| MasterCard | 03 | Do Not Try Again |\n| MasterCard | 04 | Token not supported |\n| MasterCard | 21 | Do not honor |\n| MasterCard | 22 | Merchant does not qualify for product code |\n| MasterCard | 24 | Retry after 1 hour |\n| MasterCard | 25 | Retry after 24 hours |\n| MasterCard | 26 | Retry after 2 days |\n| MasterCard | 27 | Retry after 4 days |\n| MasterCard | 28 | Retry after 6 days |\n| MasterCard | 29 | Retry after 8 days |\n| MasterCard | 30 | Retry after 10 days |\n| MasterCard | 40 | Consumer non-reloadable prepaid card |\n| MasterCard | 41 | Consumer single-use virtual card number |\n| MasterCard | 42 | Sanctions score exceeds threshold value |\n| MasterCard | 99 | Do Not Try Again |\n\n#### Possbile values for Barclays processor:\n- 00: No information, or response not provided.\n- 01: New account information available\n- 02: Try again later\n- 03: Do not try again\n- 05: Payment blocked by the payment card company\n" codeRaw: type: string maxLength: 4 description: 'Raw merchant advice code sent directly from the processor. This field is used only for Mastercard. #### CyberSource through VisaNet The value for this field corresponds to the following data in the TC 33 capture file1: - Record: CP01 TCR7 - Position: 96-99 - Field: Response Data-Merchant Advice Code #### Possbile values for Barclays processor: - 01: Updated/additional information needed - 02: Cannot approve at this time; try again later - 04: Do not try again - 08: Payment blocked by card scheme ' orderInformation: type: object properties: amountDetails: type: object properties: cashbackAmount: type: string maxLength: 12 description: "This field contains the purchase cashback amount expressed in the acquirer transaction currency. \nUse this field only for clearing with your acquirer.\n" settlementAmount: type: string maxLength: 12 description: 'This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder''s account. This field is returned for OCT transactions. ' settlementCurrency: type: string maxLength: 3 description: 'This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder''s account. This field is returned for OCT transactions. ' exchangeRate: type: string maxLength: 13 description: 'Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places. ' foreignAmount: type: string maxLength: 15 description: 'Set this field to the converted amount that was returned by the DCC provider. ' foreignCurrency: type: string maxLength: 5 description: 'Set this field to the converted amount that was returned by the DCC provider. ' invoiceDetails: type: object properties: level3TransmissionStatus: type: string description: 'Indicates whether CyberSource sent the Level III information to the processor. The possible values are: If your account is not enabled for Level III data or if you did not include the purchasing level field in your request, CyberSource does not include the Level III data in the request sent to the processor. Possible values: - **Y** for true - **N** for false ' pointOfSaleInformation: type: object properties: terminalId: type: string maxLength: 8 description: "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" encryptedKeyId: type: string maxLength: 100 description: "Identifies the Zone PIN Key (ZPK) used for Online PIN processing by providing the 10‑digit Key Set Identifier (KSI).\nThis value indicates that the PIN block is encrypted under a ZPK and enables the Payment Security Service (PSS) to perform \nthe correct ZPK→ZPK PIN translation during card‑present EMV PIN transactions.\n" errorInformation: type: object properties: reason: type: string description: "The reason of the status.\n\nPossible values:\n - AVS_FAILED\n - CONTACT_PROCESSOR\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - INSUFFICIENT_FUND\n - STOLEN_LOST_CARD\n - ISSUER_UNAVAILABLE\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - EXCEEDS_CREDIT_LIMIT\n - INVALID_CVN\n - BLOCKED_BY_CARDHOLDER\n - DECLINED_CHECK\n - BLACKLISTED_CUSTOMER\n - SUSPENDED_ACCOUNT\n - PAYMENT_REFUSED\n - CV_FAILED\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - INVALID_MERCHANT_CONFIGURATION\n - DECISION_PROFILE_REJECT\n - SCORE_EXCEEDS_THRESHOLD\n - PENDING_AUTHENTICATION\n - ACH_VERIFICATION_FAILED\n - DECISION_PROFILE_REVIEW\n - CONSUMER_AUTHENTICATION_REQUIRED\n - CONSUMER_AUTHENTICATION_FAILED\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\n - CUSTOMER_WATCHLIST_MATCH\n - ADDRESS_COUNTRY_WATCHLIST_MATCH\n - EMAIL_COUNTRY_WATCHLIST_MATCH\n - IP_COUNTRY_WATCHLIST_MATCH\n - DAGGREJECTED\n - DAGGDENIED\n - DSYSREJECTED\n" message: type: string description: The detail message related to the status and reason listed above. details: type: array items: type: object properties: field: type: string description: This is the flattened JSON object field name/path that is either missing or invalid. reason: type: string description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" example: _links: self: href: /pts/v2/refunds/4963014779006178301545 method: GET void: href: /pts/v2/refunds/4963014779006178301545/voids method: POST id: '4963014779006178301545' submitTimeUtc: 2017-06-01T071757Z status: '200' reconciliationId: 39571012D3DFEKS0 statusInformation: reason: SUCCESS message: Successful transaction. clientReferenceInformation: code: Testing-VDP-Payments-Refund orderInformation: amountDetails: currency: USD refundAmountDetails: currency: USD refundAmount: '102.21' '400': description: Invalid request. schema: type: object title: ptsV2CapturesRefundsPost400Response properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n - NOT_SUPPORTED\n" message: type: string description: The detail message related to the status and reason listed above. details: type: array items: type: object properties: field: type: string description: This is the flattened JSON object field name/path that is either missing or invalid. reason: type: string description: "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" '502': description: Unexpected system error or system timeout. schema: title: ptsV2CapturesRefundsPost502Response type: object properties: submitTimeUtc: type: string description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services. ' status: type: string description: "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" reason: type: string description: "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" message: type: string description: The detail message related to the status and reason listed above. x-example: example0: summary: Refund a Capture value: clientReferenceInformation: code: TC50171_3 orderInformation: amountDetails: totalAmount: '102.21' currency: USD depends: example: path: /pts/v2/payments/{id}/captures verb: post exampleId: example0 fieldMapping: - sourceField: id destinationField: id fieldTypeInDestination: path x-devcenter-metaData: categoryTagArray: - name: Payments description: For more information about Payments transactions, see the [Payments Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/payments/developer/ctv/rest/payments/payments-intro.html). - name: Transaction_Batches description: For more information about Transaction Batches, see the [Transaction Batches Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html). - name: eCheck_AVS description: For more information about eCheck Account Validation, see the [Account Validation Developer Guides Page](https://...). - name: Token_Management description: For more information about the Token Management Service (TMS) see the [Token Management Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/tms/developer/all/rest/tms/tms-overview.html) - name: Flex_Microform description: Microform Integration is a lightweight acceptance solution designed to safely and securely accept payment information within your web page. Microform is designed to a be embedded seamlessly within your existing webpage experience, blending in with your existing acceptance form. This solution allows for the replacement of sensitive payment date with a transient token (a short lived reference to the sensitive payment data). For more information about Flex Microform transactions, see the [Flex Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-flex/SAFlexibleToken.html). For examples on how to integrate Flex Microform within your webpage please see our [GitHub Flex Samples](https://github.com/CyberSource?q=flex&type=&language=) - name: Flex_API description: For more information about Flex API, please see [Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/digital-accept-flex/developer/all/rest/digital-accept-flex/da-flex-api-intro.html). - name: Risk_Management - name: Payouts description: 'For more information about Payouts, see the [Payouts Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-payouts/Introduction.html). ' - name: Installments description: For more information about Installment contact Cybersource Support. For Visa installments contact VISthroughCYBS@visa.com - name: Recurring_Billing_Subscriptions description: For more information about Recurring Billing, see the [Recurring Billing Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/recurring-billing/developer/all/rest/recurring-billing-developer/recur-bill-services-intro.html). - name: BIN_Lookup description: 'The BIN Lookup Service is a versatile business tool that provides card network agnostic solution designed to ensure frictionless transaction experience by utilizing up-to-date Bank Identification Number (BIN) attributes sourced from multiple global and regional data sources. This service helps to improve authorization rates by helping to route transactions to the best-suited card network, minimizes fraud through card detail verification and aids in regulatory compliance by identifying card properties. The service is flexible and provides businesses with a flexible choice of inputs such as primary account number (PAN), network token from major networks (such as Visa, American Express, Discover and regional networks) which includes device PAN (DPAN), and all types of tokens generated via CyberSource Token Management Service (TMS). Currently, the range of available credentials is contingent on the networks enabled for the business entity. Therefore, the network information specified in this documentation is illustrative and subject to personalized offerings for each reseller or merchant. ' - name: Transaction_Details description: For more information about Transaction Details, see the [Transaction Details Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_details_api.html). - name: Transaction_Search description: For more information about Transaction Search, see the [Transaction Search Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_search_api.html). - name: Reporting description: 'For more information about Reporting, see the [Reporting Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-reporting-rest-api-dev-guide-102718/reporting_api.html). ' - name: Secure_File_Share description: For more information about Secure File Share, see the [Secure File Share Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-secure-file-share-api-102718/secure_file_share_api_intro.html). - name: Invoices description: For more information about Invoicing, see the [Invoicing Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/invoicing/developer/all/rest/invoicing/Introduction.html). - name: Pay_By_Link description: For more information about PayByLink, see the [PBL Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/boarding/user/all/rest/boarding/templates-matrix-intro/templates-matrix-pay-by-link.html). - name: User_Management description: For more information about User Management, see the [User Managment Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-user-management-api-102718/user_management_api_intro.html). - name: Value_Added_Service - name: Fee Service - name: Merchant_Boarding description: For more information about Merchant Boarding, please see [Developer Guides Page](https://developer.cybersource.com/api/developer-guides/Merchant-Boarding-API_ditamap/Merchant-Boarding-API.html). - name: Webhooks description: For more information about Webhooks, please see [Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/webhooks/implementation/all/rest/webhooks/wh-fg-intro.html). - name: Unified_Checkout description: For more information about Unified Checkout, see the [Unified Checkout Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/unified-checkout/developer/all/rest/unified-checkout/uc-intro.html). - name: Unified_Checkoutv1 description: For more information about Unified Checkout, see the [Unified Checkout Developer Guides Page](https://developer.cybersource.com/docs/cybs/en-us/unified-checkout/developer/all/rest/unified-checkout/uc-about-guide.html). - name: Account_Updater description: For more information about Account Updater, see the [Account Updater Developer Guides Page:](https://developer.cybersource.com/library/documentation/dev_guides/Account_Updater_UG/html/index.html). - name: Visa_Bank_Account_Validation description: 'The Visa Bank Account Validation Service is a new standalone product designed to validate customer''s routing and bank account number combination for ACH transactions. Merchant''s can use this standalone product to validate their customer''s account prior to processing an ACH transaction against the customer''s account to comply with Nacha''s account validation mandate for Web-debit transactions. ' - name: Currency Conversion description: 'Empower global transactions with transparency and choice. Our Dynamic Currency Conversion API lets merchants offer customers the option to pay in their home currency at checkout, delivering real-time exchange rates and clear cost disclosure. **Key Benefits:** - **Enhanced Customer Experience:** Provide clarity and convenience for international shoppers. - **Real-Time Rates:** Accurate currency conversion with all the data required for acquirers and their merchants to maintain compliance with card network rules. - **Seamless Integration:** Flexible API endpoints for rate lookup, authorization, and capture. - **Regulatory Compliance:** Provides the data required for acquirers and merchants to meet and maintain card scheme requirements for disclosure and consent. Ideal for merchants and payment partners seeking to boost trust and conversion in cross-border commerce. **Key Features:** - **Rate Lookup:** Retrieves the most up-to-date exchange rate for eligible cards before authorization. - **Currency Choice:** Enables the merchant to offer customers the option to select between the merchant''s local currency and their card''s billing currency. - **Compliance:** Ensures merchants have the data required to adhere to card network regulations; exchange rates, markups, etc. **Supported Scenarios:** - Dynamic Currency Conversion when cardholder''s billing currency differs from merchant''s pricing currency. - Merchant and acquirer must support the cardholder''s billing currency. **Core API Endpoints:** **Currency Conversion API** Returns eligibility and exchange rate details, including: - exchangeRate - marginRate - reconciliationId and Id (for subsequent payment requests) **Payment Authorization with DCC*** POST /pts/v2/payments Required fields include: - orderInformation.amountDetails.currency - orderInformation.amountDetails.originalCurrency - orderInformation.amountDetails.originalAmount - orderInformation.amountDetails.exchangeRate - currencyConversion.indicator (e.g., 1 = Converted, 2 = Nonconvertible, 3 = Declined) **Capture with DCC*** POST /pts/v2/payments/{id}/captures Maps from original authorization and includes original and converted amounts. **Refund with DCC*** POST /pts/v2/captures/{id}/refunds Maps from original authorization and includes original and converted amounts. *Note: DCC is only supported on select processors. Contact your acquirer or account manager for more information. **Compliance & Disclosure:** Merchants must: - Adhere to card network rules for Dynamic Currency Conversion (DCC) transactions. - Display the converted amount, exchange rate, and markup percentage and other required disclosures. - Obtain explicit cardholder consent before applying DCC. - Work with your acquirer to obtain full set of compliance requirements. For more information, see the [Currency Conversion Developer Guide](https://developer.cybersource.com/docs/cybs/en-us/currency-conversion/developer/all/rest/currency-conversion/cc-intro.html). ' - name: Intelligent_Commerce_Connect description: For more information about Intelligent Commerce Cross Network Service API, please see [Developer Guides](https://developer.cybersource.com/docs/cybs/en-us/intelligent-commerce/developer/all/rest/intelligent-commerce/intelligent-commerce-about-guide.html).