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 billingAgreements API host: apitest.cybersource.com basePath: / schemes: - https consumes: - application/json;charset=utf-8 produces: - application/hal+json;charset=utf-8 tags: - name: billingAgreements description: 'A billingAgreement is a stand-alone transaction that is not linked to any previous transactions. It takes money from your merchant bank account and returns it to the customer. ' paths: /pts/v2/billing-agreements: post: summary: Create a Billing Agreement description: "#### Standing Instruction:\nStanding Instruction with or without Token. Transaction amount in case First payment is coming along with registration. Only 2 decimal places allowed\n\n#### Create Mandate:\nYou can create a mandate through the direct debit mandate flow.\nPossible create mandate status values:\n - Pending—the create mandate request was successfully processed.\n - Failed—the create mandate request was not accepted.\n\n#### Import Mandate:\nIn the Bacs scheme, a mandate is created with a status of active. Direct debit collections can be made against it immediately.\nYou can import a mandate to the CyberSource database when:\n - You have existing customers with signed, active mandates\n - You manage mandates outside of CyberSource.\n\nWhen you import an existing mandate to the CyberSource database, provide a unique value for the mandate ID or the request results in an error.\nIf an import mandate request is not accepted, the import mandate status value is failed.\n" tags: - billingAgreements operationId: billingAgreementsRegistration x-devcenter-metaData: categoryTag: Payments developerGuides: https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html isMLEsupported: true mleForRequest: optional parameters: - name: createBillingAgreement in: body required: true schema: type: object properties: agreementInformation: type: object properties: id: type: string maxLength: 50 description: 'Identifier for the mandate. #### SEPA/BACS Required for mandates services ' dateSigned: type: string description: 'Date the mandate has been signed. Format YYYYMMdd #### SEPA/BACS Required for Import Mandate ' maxLength: 8 type: type: string description: "Identifies the type of schedule as either recurring, one-off, split or usage. \nPossible values:\n- recurring\n- oneoff\n- split\n- usage" maxLength: 25 frequency: type: string description: "Regularity with which the event occurs. \nPossible values:\n- annual\n- monthly\n- quarterly\n- semiannual\n- weekly\n- daily\n- adhoc\n- intraday\n- fortnightly" maxLength: 25 occurrencesPerPeriod: type: integer description: Number of occurrences during the specified period. startDate: type: string description: Start date of the schedule. Format YYYYMMdd maxLength: 8 endDate: type: string description: End date of the schedule. Format YYYYMMdd maxLength: 8 clientReferenceInformation: type: object properties: code: type: string maxLength: 51 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 #### SEPA/BACS Required for mandates services #### Paypal Required for billing agreements **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. ' 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. ' aggregatorInformation: type: object properties: 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: cardAcceptorId: type: string maxLength: 15 description: Unique identifier assigned by the payment card company to the sub-merchant. 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) ' 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. ' region: type: string maxLength: 3 description: 'Sub-merchant''s region. **Example**\ `NE` indicates that the sub-merchant is in the northeast region. ' 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" merchantCategoryCode: type: number maxLength: 20 x-nullable: true consumerAuthenticationInformation: type: object properties: authenticationTransactionContextId: type: string maxLength: 30 description: 'Payer authentication transaction identifier passed to link the validation and authorization calls. ' cavv: type: string maxLength: 255 description: 'Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and Discover transactions after the customer is authenticated. The value is in base64. When you request the card authorization service, CyberSource automatically converts the value, not the field name, to the format required by your payment processor. ' transactionToken: type: string maxLength: 256 description: 'Web based token used to authenticate consumer with Rupay authentication provider. ' xid: type: string description: 'Transaction identifier generated by CyberSource for successful enrollment or validation checks. Use this value, which is in base64, to match an outgoing PAReq with an incoming PARes. CyberSource forwards the XID with the card authorization service to these payment processors in these cases: - Barclays - Streamline (when the **ecommerceIndicator**`=spa`) ' deviceInformation: type: object properties: httpAcceptBrowserValue: type: string maxLength: 255 description: 'Value of the Accept header sent by the customer''s web browser. **Note** If the customer''s browser provides a value, you must include it in your request. ' ipAddress: type: string maxLength: 45 description: 'IP address of the customer. #### Used by **Authorization, Capture, and Credit** Optional field. ' userAgentBrowserValue: type: string maxLength: 255 description: 'Value of the User-Agent header sent by the customer''s web browser. Note If the customer''s browser provides a value, you must include it in your request. ' installmentInformation: type: object properties: alertPreference: type: string maxLength: 5 description: 'Applicable only for SI. Required in case the authentication is initiated for SI registration. Valid Values: - `SMS` - `EMAIL` - `BOTH` ' firstInstallmentDate: type: string maxLength: 6 description: 'Date of the first installment payment. Format: YYMMDD. When you do not include this field, CyberSource sends a string of six zeros (000000) to the processor. This field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet. The value for this field corresponds to the following data in the TC 33 capture file: - Record: CP01 TCR9 - Position: 42-47 - Field: Date of First Installment ' identifier: type: string maximum: 60 description: 'Standing Instruction/Installment identifier. ' lastInstallmentDate: type: string maxLength: 8 description: 'End date of the SI transactions. Cannot be later than card expiry date. Ideally this can be set to expiry date. Required in case the authentication is initiated for SI registration. ' maxAmount: type: string maxLength: 12 description: 'Maximum Amount for which SI can be initiated. Required in case the authentication is initiated for SI registration. ' minAmount: type: string maxLength: 12 description: 'Minimum Amount for which SI can be initiated. Required in case the authentication is initiated for SI registration. ' paymentType: type: string maxLength: 1 description: 'Payment plan for the installments. This field is supported only for installment payments on Visa Platform Connect, RuPay and SPG-KSA seamless flow. Possible values for a standing-instruction (SI) merchant-initiated transaction (MIT) with Diners Club or Mastercard in India or with an India-issued card: - 1: SI with a fixed amount. - 2: SI with a maximum amount. - 3: Other kind of SI. Possible values for a type of Installment transaction for on-soil transaction in Kingdom of Saudi Arabia - 1: Registration or first transaction. - 2: Subsequent transaction. Possible values for other kinds of installment payments: - 0 (default): Regular installment. This value is not allowed for airline transactions. - 1: Installment payment with down payment. - 2: Installment payment without down payment. This value is supported only for airline transactions. - 3: Installment payment; down payment and boarding fee will follow. This value is supported only for airline transactions. - 4: Down payment only; regular installment payment will follow. - 5: Boarding fee only. This value is supported only for airline transactions. - 6: SI de-registration on RuPay for the payer authentication seamless flow. ' preferredDay: type: string maxLength: 2 description: 'Preferred date for initiating the SI transaction every month. This field need not be sent in case the SI has to be initiated as and when required, e.g., topping up the wallet, etc. ' sequence: type: integer maximum: 999 description: 'Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed. For example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5. #### Chase Paymentech Solutions and FDC Compass This field is optional because this value is required in the merchant descriptors. #### CyberSource through VisaNet When you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor. For Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*: - Record: CP01 TCR9 - Position: 38-40 - Field: Installment Payment Number * 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. ' merchantInformation: type: object properties: merchantDescriptor: type: object properties: 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. ' 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) ' 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. ' 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. ' 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 ' 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. ' transactionLocalDateTime: type: string maxLength: 14 description: "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where:\n - `YYYY` = year\n - `MM` = month\n - `DD` = day\n - `hh` = hour\n - `mm` = minutes\n - `ss` = seconds\n\n#### Used by\n**Authorization**\nRequired for these processors:\n- American Express Direct - American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- SIX\n\nOptional for all other processors.\n" cancelUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' successUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' failureUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' 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. ' totalMaxAmount: type: string description: 'Maximum amount that may be collected from the customer''s account. ' maxLength: 15 invoiceDetails: type: object properties: productDescription: type: string description: Brief description of item. billTo: type: object properties: 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) ' 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). ' buildingNumber: type: string maxLength: 256 description: "Building number in the street address.\n\nFor example, if the street address is:\nRua da Quitanda 187\nthen the building number is 187.\n\nThis field is supported only for:\n - Cielo transactions.\n - Redecard customer validation with CyberSource Latin American Processing.\n" company: type: string maxLength: 60 description: Company's Name, e.g. VISA 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. ' county: type: string maxLength: 50 description: U.S. county if available. district: type: string maxLength: 50 description: "Customer's neighborhood, community, or region\nwithin the city or municipality. \n#### SEPA/BACS\nWhen you include this field in a request, the value for this field must\nbe the same as the value for the billTo_state field.\n" 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. ' 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. ' 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. ' 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. ' 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" title: type: string paymentInformation: type: object properties: card: type: object properties: 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. ' 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. ' 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. ' 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 ' tokenizedCard: type: object properties: cryptogram: type: string maxLength: 255 description: This field contains token information. 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. ' number: type: string maxLength: 20 description: 'Customer''s payment network token value. ' 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. ' 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 ' paymentType: type: object properties: method: type: object properties: name: type: string description: "Identifier for the payment type.\nPossible Values: \n - SENTENIAL\n - PAYPAL\n#### SEPA/BACS\nRequired for mandates services\n#### Paypal\nRequired for billing agreements\n" 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: - `EWALLET` - `directDebitSepa` - `directDebitBacs` #### SEPA/BACS Required for mandates services #### Paypal Required for billing agreements ' bank: type: object properties: account: type: object properties: number: type: string maxLength: 30 description: 'Customer''s bank account number. #### BACS Required for Create Mandate, Import Mandate, and Update Mandate ' iban: type: string maxLength: 34 description: 'International Bank Account Number (IBAN). #### SEPA Required for mandates services ' swiftCode: type: string maxLength: 20 description: 'Bank''s SWIFT code. You can use this field only when scoring a direct debit transaction. #### BACS Required for mandates services ' scheme: type: string maxLength: 25 description: "The scheme that sets the rules for the direct\ndebit process. Possible values:\n - SEPA\n - BACS\n#### SEPA/BACS\nRequired for mandates services\n" accountAlias: type: object properties: id: type: string description: 'The value of the alias, such as a phone number, email address, account number, business number, or organization ID. ' maxLength: 255 type: type: string description: "Indicates the kind of alias provided (phone, email, account number, business number, or organization ID).\n \nPossible values:\n- phone\n- email\n- accountNumber\n- businessNumber\n- accountID" processingInformation: type: object properties: commerceIndicator: type: string maxLength: 20 description: "Type of transaction. Used to determine fees based on channel.\n\nPossible values:\n\n - aesk: American Express SafeKey authentication was successful.\n - aesk_attempted: American Express SafeKey authentication was attempted but did not succeed. • install: Installment payment.\n - install_internet: Non-U.S. e-commerce (Internet) installment payment. This value is supported only on Visa Platform Connect.\n - internet (default for authorizations): E-commerce order placed using a web site.\n - js: JCB J/Secure authentication was successful.\n - js_attempted: JCB J/Secure authentication was attempted but did not succeed.\n - moto: Mail order or telephone order.\n - moto_cc: Mail order or telephone order from a call center. This value is supported only on the Asia, Middle East, and Africa Gateway.\n - pb: ProtectBuy authentication was successful.\n - pb_attempted: ProtectBuy authentication was attempted but did not succeed.\n - recurring: Recurring payment that is a U.S. transaction or non-U.S. mail order / telephone order (MOTO) transaction.\n - recurring_internet: Recurring payment that is a non-U.S. e-commerce (Internet) transaction.\n - retail: Card-present transaction.\n - spa: For Mastercard Identity Check: Authentication was successful or was attempted but did not succeed. The e-commerce indicator for all Mastercard Identity Check transactions, including authentication attempts, must be set to spa.\n - spa_attempted: Authentication for a co-badged Mastercard and Cartes Bancaires card was attempted but did not succeed.\n - spa_failure: – For Mastercard Identity Check: Authentication failed. This value is supported only on Elavon, HSBC, and Streamline.\n - vbv: – For Visa Secure: Authentication was successful.\n - vbv_attempted: – For Visa Secure: Authentication was attempted but did not succeed.\n - vbv_failure: – For Visa Secure: Authentication failed. This value is supported only on HSBC and Streamline.\n" paymentCompletionTimeout: type: string description: 'Period after which an authorization request to the consumer expires due to inactivity. Value in seconds (e.g., 86400 for one day). ' maxLength: 7 actionList: type: array description: '- Use `CONSUMER_AUTHENTICATION` to use Payer Authentication along with Decision Manager. For any other value, only Decision Manager will run. - Use `WATCHLIST_SCREENING` when you want to call Watchlist Screening service. - Use `UPDATE_AGREEMENT` - Use `BILLING_AGREEMENT_CREATE` when Alternative Payment create mandate service is requested - Use `CANCEL_AGREEMENT` - Use `AP_IMPORT_AGREEMENT` when Alternative Payment import mandate service is requested. ' items: type: string 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. #### SEPA/BACS Required for Create Mandate and Import Mandate #### 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. ' 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: 1 description: Customer's gender. Possible values are F (female), M (male), O (other). language: type: string maxLength: 5 description: language setting of the user example: agreementInformation: id: G8UD2OKG49UW dateSigned: '20181109' clientReferenceInformation: code: TC84105-1 buyerInformation: merchantCustomerId: '123456' dateOfBirth: '19990101' gender: F language: en deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: transactionFlowIndicator: '2' processingInformation: commerceIndicator: rpy actionList: - CONSUMER_AUTHENTICATION aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: billTo: country: IN firstName: Krishna middleName: Foster lastName: CYBS phoneNumber: '9999999999' address1: 201 S. Division St. address2: Suite A101 district: BLR county: San Francisco postalCode: '560048' locality: NPCI company: Visa administrativeArea: MI email: test@cybs.com title: Senior Buyer amountDetails: totalAmount: '0.00' currency: INR merchantInformation: cancelUrl: https://www.valid.merchant.redirect.url.from.request.html?actioncancel successUrl: https://www.valid.merchant.redirect.url.from.request.html?actionsuccess failureUrl: https://www.valid.merchant.redirect.url.from.request.html?actionfailure transactionLocalDateTime: '20211216124549' categoryCode: '1234' merchantDescriptor: country: IN contact: '1234567890' postalCode: '213213' locality: local administrativeArea: TN paymentInformation: paymentType: method: name: SENTENIAL name: directDebitBacs bank: account: number: 1234567890ABCDEFGHIJ0123456789 iban: NL51ABNC1122334455 swiftCode: ABNCNL2AGMK scheme: bacs card: expirationYear: '2031' number: '6080906188079' securityCode: '123' expirationMonth: '12' type: '061' installmentInformation: minAmount: '10' sequence: '2' firstInstallmentDate: '01122023' alertPreference: SMS lastInstallmentDate: '01012025' preferredDay: '05' maxAmount: '100' totalCount: '24' frequency: '1' paymentType: '1' responses: '201': description: Successful response. schema: title: ptsV2CreateBillingAgreementPost201Response 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.' updateAgreement: 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.' revokeAgreement: 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.' status: 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 maxLength: 15 description: "The status of the billing agreement.\nPossible value is:\n - PENDING\n - REVOKED\n - ACTIVE\n - FAILED\n - EXPIRED\n - INACTIVE\n" 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. ' 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. #### SEPA/BACS Response code from the processor. Possible values: 00000–99999. See Appendix C, "Reason Codes and Processor Response Codes," on page 42. #### 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) ' transactionId: type: string maxLength: 255 description: 'Transaction ID assigned by the processor. ' responseDetails: type: string maxLength: 60 description: 'Response code indicating that creating the agreement failed ' reasonCode: type: string maxLength: 5 description: 'Numeric value corresponding to the result of the request. ' installmentInformation: type: object properties: identifier: type: string maxLength: 100 description: 'Identifier ' agreementInformation: type: object properties: id: type: string maxLength: 50 description: 'Identifier for the mandate. ' dateSigned: type: string description: Date the mandate has been signed. Format YYYYMMdd maxLength: 8 dateCreated: type: string description: Date the mandate has been created. Format YYYYMMdd maxLength: 8 type: type: string description: "Identifies the type of schedule as either recurring, one-off, split or usage. \nPossible values:\n- recurring\n- oneoff\n- split\n- usage" maxLength: 25 frequency: type: string description: "Regularity with which the event occurs. \nPossible values:\n- annual\n- monthly\n- quarterly\n- semiannual\n- weekly\n- daily\n- adhoc\n- intraday\n- fortnightly" maxLength: 25 occurrencesPerPeriod: type: integer description: Number of occurrences during the specified period. startDate: type: string description: Start date of the schedule. Format YYYYMMdd maxLength: 8 endDate: type: string description: End date of the schedule. Format YYYYMMdd maxLength: 8 encodedHtml: type: string description: Base64 encoded html string encodedHtmlPopup: type: string description: Base64 encoded popup html string url: type: string maxLength: 2048 description: 'URL for redirecting the customer for creating the mandate. ' clientReferenceInformation: type: object properties: code: type: string maxLength: 50 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. ' riskInformation: type: object properties: processorResults: type: object properties: riskScore: type: string maxLength: 25 description: 'Risk score returned by the processor. Possible values of 0-10. A value of 10 indicates a high risk. ' 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. ' example: _links: self: href: GET method: /pts/v2/billing-agreements updateAgreement: href: PATCH method: /pts/v2/billing-agreements/6891011351636003303961 revokeAgreement: href: PATCH method: /pts/v2/billing-agreements/6891011351636003303961 status: href: PATCH method: /pts/v2/billing-agreements/6891011351636003303961 id: '6853506446826005503878' installmentInformation: identifier: '1000000000' processorInformation: approvalCode: '888888' responseCode: '00' transactionId: 2016011808153910011808153910TR responseDetails: '00001' reasonCode: '100' status: SUCCESS submitTimeUtc: '2023-05-29T08:57:25Z' agreementInformation: id: G8UD2OKG49UW dateSigned: '20181109' dateCreated: '20181009' encodedHtml: PGh0bWw+DQo8Ym9keT4NCiANCjxwPjxiPlRoaXMgdGV4dCBpcyBib2xkPC9iPjwvcD4NCjxwPjxpPlRoaXMgdGV4dCBpcyBpdGFsaWM8L2k+PC9wPg0KPHA+VGhpcyBpczxzdWI+IHN1YnNjcmlwdDwvc3ViPiBhbmQgPHN1cD5zdXBlcnNjcmlwdDwvc3VwPjwvcD4NCiANCjwvYm9keT4NCjwvaHRtbD4NCg== encodedHtmlPopup: PGh0bWw+DQo8Ym9keT4NCiANCjxwPjxiPlRoaXMgdGV4dCBpcyBib2xkPC9iPjwvcD4NCjxwPjxpPlRoaXMgdGV4dCBpcyBpdGFsaWM8L2k+PC9wPg0KPHA+VGhpcyBpczxzdWI+IHN1YnNjcmlwdDwvc3ViPiBhbmQgPHN1cD5zdXBlcnNjcmlwdDwvc3VwPjwvcD4NCiANCjwvYm9keT4NCjwvaHRtbD4NCg== url: https://merchant.redirect.com/url.do?param_utf=%27%22%3C%3E%20%E6%B8%AC%E8%A9%A6%E6%B8%AC¶m_url=https%3A%2F%2Fwww.abc.com¶m_special=+@#%~_&sign=fdaa1df42b6260a10e2e3f1c0fc87862 clientReferenceInformation: code: TC84170-1 riskInformation: processorResults: riskScore: '3' reconciliationId: 39570715X3E1LBQA '400': description: Invalid request. schema: title: ptsV2CreateBillingAgreementPost400Response type: object properties: 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 maxLength: 20 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_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\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: id: '6981713080281234567890' submitTimeUtc: '2023-11-28T14:12:01Z' status: INVALID_REQUEST reason: INVALID_DATA message: One or more fields in the request contains invalid data. details: - field: clientReferenceInformation.code reason: INVALID_DATA '502': description: Unexpected system error or system timeout. schema: title: ptsV2CreateBillingAgreementPost502Response type: object properties: 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 maxLength: 20 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. example: id: '6981713080281234567890' submitTimeUtc: '2023-11-28T14:12:01Z' status: SERVER_ERROR reason: SYSTEM_ERROR message: General system failure. x-example: example0: summary: Standing Instruction Completion Amount = 0 sample-name: Standing Instruction Completion value: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: authenticationTransactionContextId: '100000000000000000000000025253' transactionToken: AxjzbwSTcz9aHyOIL490/949UafAxfvksgAxHXa2/+xcVZ0CtA+AbkvF processingInformation: commerceIndicator: rpy aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: amountDetails: totalAmount: '00.00' currency: INR paymentInformation: card: expirationYear: '2031' number: '5082302886091' securityCode: '123' expirationMonth: '12' type: '061' installmentInformation: paymentType: '1' example1: summary: Standing Instruction Completion Tokenized sample-name: Standing Instruction Completion value: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: authenticationTransactionContextId: '100000000000000000000000025253' transactionToken: AxjzbwSTcz9aHyOIL490/949UafAxfvksgAxHXa2/+xcVZ0CtA+AbkvF processingInformation: commerceIndicator: rpy actionList: - BILLING_AGREEMENT_CREATE aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: amountDetails: totalAmount: '100.00' currency: INR paymentInformation: tokenizedCard: cryptogram: abcdefgh expirationYear: '2031' number: '5082794233463' expirationMonth: '12' type: '061' transactionType: '1' installmentInformation: paymentType: '1' example2: summary: Redirectional Standing Instruction Completion Amount = 0 sample-name: S2S Standing Instruction Completion value: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: cavv: MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI1MjM2 xid: OTE0OTE2MzI5MzE1MDUyOTU4Mjc= processingInformation: commerceIndicator: rpy aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: amountDetails: totalAmount: '00.00' currency: INR paymentInformation: card: expirationYear: '2026' number: '50823043205909' securityCode: '123' expirationMonth: 08 type: '061' installmentInformation: paymentType: '1' /pts/v2/billing-agreements/{id}: patch: summary: Modify a Billing Agreement description: "#### Standing Instruction:\nStanding Instruction with or without Token.\n\n#### Revoke Mandate:\nWhen you revoke a mandate, any pending direct debits linked to that mandate are canceled. No notifications are sent.\nWhen you revoke a mandate with no pending direct debits, the Bacs scheme or customer's bank notify you of any subsequent direct debit events.\nWhen you revoke a mandate, you cannot send a direct debit request using the mandate ID. Customer payments cannot be made against a revoked mandate.\nYou can revoke a mandate when the customer:\n - Requests that you revoke the mandate.\n - Closes their account with you.\nPossible revoke mandate status values -\n - Revoked—the revoke mandate request was successfully processed.\n - Failed—the revoke mandate request was not accepted.\n\n#### Update Mandate:\nIn most cases, the account details of an existing mandate cannot be updated in the Bacs schema,\nexcept by creating a new mandate. However, some very limited customer information, like name and address,\ncan be updated to the mandate without needing to revoke it first\n\n#### Mandate Status:\nAfter the customer signs the mandate, request that the mandate status service verify the mandate status.\nPossible mandate status values:\n - Active—the mandate is successfully created. A direct debit can be sent for this mandate ID.\n - Pending—a pending mandate means the mandate is not yet signed.\n - Failed—the customer did not authenticate.\n - Expired—the deadline to create the mandate passed.\n - Revoked—the mandate is cancelled.\n\n#### Paypal Billing Agreement: \nA billing agreement is set up between PayPal and your customer.\nWhen you collect the details of a customer's billing agreement, you are able to bill that customer without requiring an authorization for each payment. \nYou can bill the customer at the same time you process their PayPal Express checkout order, which simplifies your business processes.\n" tags: - billingAgreements operationId: billingAgreementsDeRegistration x-devcenter-metaData: categoryTag: Payments developerGuides: https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html isMLEsupported: true mleForRequest: optional parameters: - name: modifyBillingAgreement in: body required: true schema: type: object properties: agreementInformation: type: object properties: id: type: string maxLength: 50 description: 'Identifier for the mandate. #### SEPA/BACS Required for mandates services ' eSignIndicator: type: string maxLength: 1 type: type: string description: "Identifies the type of schedule as either recurring, one-off, split or usage. \nPossible values:\n- recurring\n- oneoff\n- split\n- usage" maxLength: 25 frequency: type: string description: "Regularity with which the event occurs. \nPossible values:\n- annual\n- monthly\n- quarterly\n- semiannual\n- weekly\n- daily\n- adhoc\n- intraday\n- fortnightly" maxLength: 25 dateRevoked: type: string description: 'Date the agreement was revoked (YYYYMMDD) ' maxLength: 8 clientReferenceInformation: type: object properties: code: type: string maxLength: 51 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 #### SEPA/BACS Required for mandates services #### Paypal Required for billing agreements **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. ' 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. ' aggregatorInformation: type: object properties: 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: cardAcceptorId: type: string maxLength: 15 description: Unique identifier assigned by the payment card company to the sub-merchant. 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) ' 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. ' region: type: string maxLength: 3 description: 'Sub-merchant''s region. **Example**\ `NE` indicates that the sub-merchant is in the northeast region. ' 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" merchantCategoryCode: type: number maxLength: 20 x-nullable: true consumerAuthenticationInformation: type: object properties: authenticationTransactionContextId: type: string maxLength: 30 description: 'Payer authentication transaction identifier passed to link the validation and authorization calls. ' cavv: type: string maxLength: 255 description: 'Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and Discover transactions after the customer is authenticated. The value is in base64. When you request the card authorization service, CyberSource automatically converts the value, not the field name, to the format required by your payment processor. ' transactionToken: type: string maxLength: 256 description: 'Web based token used to authenticate consumer with Rupay authentication provider. ' xid: type: string description: 'Transaction identifier generated by CyberSource for successful enrollment or validation checks. Use this value, which is in base64, to match an outgoing PAReq with an incoming PARes. CyberSource forwards the XID with the card authorization service to these payment processors in these cases: - Barclays - Streamline (when the **ecommerceIndicator**`=spa`) ' deviceInformation: type: object properties: httpAcceptBrowserValue: type: string maxLength: 255 description: 'Value of the Accept header sent by the customer''s web browser. **Note** If the customer''s browser provides a value, you must include it in your request. ' ipAddress: type: string maxLength: 45 description: 'IP address of the customer. #### Used by **Authorization, Capture, and Credit** Optional field. ' userAgentBrowserValue: type: string maxLength: 255 description: 'Value of the User-Agent header sent by the customer''s web browser. Note If the customer''s browser provides a value, you must include it in your request. ' installmentInformation: type: object properties: alertPreference: type: string maxLength: 5 description: 'Applicable only for SI. Required in case the authentication is initiated for SI registration. Valid Values: - `SMS` - `EMAIL` - `BOTH` ' firstInstallmentDate: type: string maxLength: 6 description: 'Date of the first installment payment. Format: YYMMDD. When you do not include this field, CyberSource sends a string of six zeros (000000) to the processor. This field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet. The value for this field corresponds to the following data in the TC 33 capture file: - Record: CP01 TCR9 - Position: 42-47 - Field: Date of First Installment ' identifier: type: string maximum: 60 description: 'Standing Instruction/Installment identifier. ' lastInstallmentDate: type: string maxLength: 8 description: 'End date of the SI transactions. Cannot be later than card expiry date. Ideally this can be set to expiry date. Required in case the authentication is initiated for SI registration. ' maxAmount: type: string maxLength: 12 description: 'Maximum Amount for which SI can be initiated. Required in case the authentication is initiated for SI registration. ' minAmount: type: string maxLength: 12 description: 'Minimum Amount for which SI can be initiated. Required in case the authentication is initiated for SI registration. ' paymentType: type: string maxLength: 1 description: 'Payment plan for the installments. This field is supported only for installment payments on Visa Platform Connect, RuPay and SPG-KSA seamless flow. Possible values for a standing-instruction (SI) merchant-initiated transaction (MIT) with Diners Club or Mastercard in India or with an India-issued card: - 1: SI with a fixed amount. - 2: SI with a maximum amount. - 3: Other kind of SI. Possible values for a type of Installment transaction for on-soil transaction in Kingdom of Saudi Arabia - 1: Registration or first transaction. - 2: Subsequent transaction. Possible values for other kinds of installment payments: - 0 (default): Regular installment. This value is not allowed for airline transactions. - 1: Installment payment with down payment. - 2: Installment payment without down payment. This value is supported only for airline transactions. - 3: Installment payment; down payment and boarding fee will follow. This value is supported only for airline transactions. - 4: Down payment only; regular installment payment will follow. - 5: Boarding fee only. This value is supported only for airline transactions. - 6: SI de-registration on RuPay for the payer authentication seamless flow. ' preferredDay: type: string maxLength: 2 description: 'Preferred date for initiating the SI transaction every month. This field need not be sent in case the SI has to be initiated as and when required, e.g., topping up the wallet, etc. ' sequence: type: integer maximum: 999 description: 'Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed. For example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5. #### Chase Paymentech Solutions and FDC Compass This field is optional because this value is required in the merchant descriptors. #### CyberSource through VisaNet When you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor. For Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*: - Record: CP01 TCR9 - Position: 38-40 - Field: Installment Payment Number * 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. ' merchantInformation: type: object properties: merchantDescriptor: type: object properties: 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. ' 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) ' 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. ' 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. ' 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 ' 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. ' transactionLocalDateTime: type: string maxLength: 14 description: "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where:\n - `YYYY` = year\n - `MM` = month\n - `DD` = day\n - `hh` = hour\n - `mm` = minutes\n - `ss` = seconds\n\n#### Used by\n**Authorization**\nRequired for these processors:\n- American Express Direct - American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- SIX\n\nOptional for all other processors.\n" cancelUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' successUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' failureUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' 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. ' totalMaxAmount: type: string description: 'Maximum amount that may be collected from the customer''s account. ' maxLength: 15 invoiceDetails: type: object properties: productDescription: type: string description: Brief description of item. billTo: type: object properties: 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) ' 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). ' buildingNumber: type: string maxLength: 256 description: "Building number in the street address.\n\nFor example, if the street address is:\nRua da Quitanda 187\nthen the building number is 187.\n\nThis field is supported only for:\n - Cielo transactions.\n - Redecard customer validation with CyberSource Latin American Processing.\n" company: type: string maxLength: 60 description: Company's Name, e.g. VISA 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. ' county: type: string maxLength: 50 description: U.S. county if available. district: type: string maxLength: 50 description: "Customer's neighborhood, community, or region\nwithin the city or municipality. \n#### SEPA/BACS\nWhen you include this field in a request, the value for this field must\nbe the same as the value for the billTo_state field.\n" 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. ' 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. ' 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. ' 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. ' 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" title: type: string paymentInformation: type: object properties: card: type: object properties: 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. ' 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. ' 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. ' 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 ' tokenizedCard: type: object properties: cryptogram: type: string maxLength: 255 description: This field contains token information. 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. ' number: type: string maxLength: 20 description: 'Customer''s payment network token value. ' 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. ' 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 ' paymentType: type: object properties: method: type: object properties: name: type: string description: "Identifier for the payment type.\nPossible Values: \n - SENTENIAL\n - PAYPAL\n#### SEPA/BACS\nRequired for mandates services\n#### Paypal\nRequired for billing agreements\n" 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: - `EWALLET` - `directDebitSepa` - `directDebitBacs` #### SEPA/BACS Required for mandates services #### Paypal Required for billing agreements ' bank: type: object properties: account: type: object properties: number: type: string maxLength: 30 description: 'Customer''s bank account number. #### BACS Required for Create Mandate, Import Mandate, and Update Mandate ' iban: type: string maxLength: 34 description: 'International Bank Account Number (IBAN). #### SEPA Required for mandates services ' swiftCode: type: string maxLength: 20 description: 'Bank''s SWIFT code. You can use this field only when scoring a direct debit transaction. #### BACS Required for mandates services ' scheme: type: string maxLength: 25 description: "The scheme that sets the rules for the direct\ndebit process. Possible values:\n - SEPA\n - BACS\n#### SEPA/BACS\nRequired for mandates services\n" accountAlias: type: object properties: id: type: string description: 'The value of the alias, such as a phone number, email address, account number, business number, or organization ID. ' maxLength: 255 type: type: string description: "Indicates the kind of alias provided (phone, email, account number, business number, or organization ID).\n \nPossible values:\n- phone\n- email\n- accountNumber\n- businessNumber\n- accountID" processingInformation: type: object properties: commerceIndicator: type: string maxLength: 20 description: "Type of transaction. Used to determine fees based on channel.\n\nPossible values:\n\n - aesk: American Express SafeKey authentication was successful.\n - aesk_attempted: American Express SafeKey authentication was attempted but did not succeed. • install: Installment payment.\n - install_internet: Non-U.S. e-commerce (Internet) installment payment. This value is supported only on Visa Platform Connect.\n - internet (default for authorizations): E-commerce order placed using a web site.\n - js: JCB J/Secure authentication was successful.\n - js_attempted: JCB J/Secure authentication was attempted but did not succeed.\n - moto: Mail order or telephone order.\n - moto_cc: Mail order or telephone order from a call center. This value is supported only on the Asia, Middle East, and Africa Gateway.\n - pb: ProtectBuy authentication was successful.\n - pb_attempted: ProtectBuy authentication was attempted but did not succeed.\n - recurring: Recurring payment that is a U.S. transaction or non-U.S. mail order / telephone order (MOTO) transaction.\n - recurring_internet: Recurring payment that is a non-U.S. e-commerce (Internet) transaction.\n - retail: Card-present transaction.\n - spa: For Mastercard Identity Check: Authentication was successful or was attempted but did not succeed. The e-commerce indicator for all Mastercard Identity Check transactions, including authentication attempts, must be set to spa.\n - spa_attempted: Authentication for a co-badged Mastercard and Cartes Bancaires card was attempted but did not succeed.\n - spa_failure: – For Mastercard Identity Check: Authentication failed. This value is supported only on Elavon, HSBC, and Streamline.\n - vbv: – For Visa Secure: Authentication was successful.\n - vbv_attempted: – For Visa Secure: Authentication was attempted but did not succeed.\n - vbv_failure: – For Visa Secure: Authentication failed. This value is supported only on HSBC and Streamline.\n" paymentCompletionTimeout: type: string description: 'Period after which an authorization request to the consumer expires due to inactivity. Value in seconds (e.g., 86400 for one day). ' maxLength: 7 actionList: type: array description: '- Use `CONSUMER_AUTHENTICATION` to use Payer Authentication along with Decision Manager. For any other value, only Decision Manager will run. - Use `WATCHLIST_SCREENING` when you want to call Watchlist Screening service. - Use `BILLING_AGREEMENT_CREATE` when Paypal billing agreements service is requested. - Use `UPDATE_AGREEMENT` - Use `CANCEL_AGREEMENT` - Use `AP_UPDATE_AGREEMENT` when Alternative Payment update mandate service is requested. - Use `AP_CANCEL_AGREEMENT` when Alternative Payment revoke mandate service is requested. - Use `AP_REFRESH_AGREEMENT_STATUS` when Alternative Payment mandate status service is requested. ' items: type: string buyerInformation: type: object properties: 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: 1 description: Customer's gender. Possible values are F (female), M (male), O (other). language: type: string maxLength: 5 description: language setting of the user example: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: authenticationTransactionContextId: '100000000000000000000000025253' transactionToken: AxjzbwSTcz9aHyOIL490/949UafAxfvksgAxHXa2/+xcVZ0CtA+AbkvF processingInformation: commerceIndicator: rpy actionList: - UPDATE_AGREEMENT aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: amountDetails: totalAmount: '100.00' currency: INR billTo: firstName: Comet middleName: Foster lastName: Bowditch address1: 808 Metro Blvd address2: Suite A101 locality: San Francisco district: SF administrativeArea: CA postalCode: '944041234' country: US county: San Francisco phoneNumber: '16501234567' email: srbuyeroffice@cybs.com title: Senior Buyer company: Cybersource Trading Inc. paymentInformation: card: expirationYear: '2031' number: '5082794233463' securityCode: '123' expirationMonth: '12' type: '061' paymentType: method: name: SENTENIAL name: directDebitBacs bank: account: number: 1234567890ABCDEFGHIJ0123456789 iban: NL51ABNC1122334455 swiftCode: ABNCNL2AGMK scheme: bacs installmentInformation: paymentType: '1' identifier: '1000000' agreementInformation: id: G8UD2OKG49UW eSignIndicator: y clientReferenceInformation: code: TC84105-1 buyerInformation: dateOfBirth: '19990101' gender: F language: en merchantInformation: cancelUrl: https://www.valid.merchant.redirect.url.from.request.html?actioncancel successUrl: https://www.valid.merchant.redirect.url.from.request.html?actionsuccess failureUrl: https://www.valid.merchant.redirect.url.from.request.html?actionfailure - name: id in: path required: true type: string description: ID for de-registration or cancellation of Billing Agreement responses: '201': description: Successful response. schema: title: ptsV2ModifyBillingAgreementPost201Response 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.' status: 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 maxLength: 15 description: "The status of the billing agreement.\nPossible value is:\n - PENDING\n - REVOKED\n - ACTIVE\n - FAILED\n - EXPIRED\n - INACTIVE\n" 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. ' 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. #### SEPA/BACS Response code from the processor. Possible values: 00000–99999. See Appendix C, "Reason Codes and Processor Response Codes," on page 42. #### 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) ' transactionId: type: string maxLength: 255 description: 'Transaction ID assigned by the processor. ' responseDetails: type: string maxLength: 60 description: 'Response code indicating that creating the agreement failed ' reasonCode: type: string maxLength: 5 description: 'Numeric value corresponding to the result of the request. ' installmentInformation: type: object properties: identifier: type: string maxLength: 100 description: 'Identifier ' clientReferenceInformation: type: object properties: code: type: string maxLength: 50 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. ' riskInformation: type: object properties: processorResults: type: object properties: riskScore: type: string maxLength: 25 description: 'Risk score returned by the processor. Possible values of 0-10. A value of 10 indicates a high risk. ' agreementInformation: type: object properties: id: type: string maxLength: 50 description: 'Identifier for the mandate. ' dateSigned: type: string description: Date the mandate has been signed. Format YYYYMMdd maxLength: 8 dateCreated: type: string description: Date the mandate has been created. Format YYYYMMdd maxLength: 8 dateRevoked: type: string description: Date the mandate has been revoked. Format YYYYMMdd maxLength: 8 type: type: string description: "Identifies the type of schedule as either recurring, one-off, split or usage. \nPossible values:\n- recurring\n- oneoff\n- split\n- usage" maxLength: 25 frequency: type: string description: "Regularity with which the event occurs. \nPossible values:\n- annual\n- monthly\n- quarterly\n- semiannual\n- weekly\n- daily\n- adhoc\n- intraday\n- fortnightly" maxLength: 25 encodedHtml: type: string description: Base64 encoded html string encodedHtmlPopup: type: string description: Base64 encoded popup html string url: type: string maxLength: 2048 description: 'URL for redirecting the customer for creating the mandate. ' transactionId: type: string maxLength: 50 description: 'The Billing Agreement ID returned by processor (PayPal). ' orderInformation: type: object properties: billTo: type: object properties: firstName: type: string maxLength: 60 description: 'Customer''s first name. ' lastName: type: string maxLength: 60 description: 'Customer''s last name. ' address1: type: string maxLength: 60 description: 'First line of the billing street address. ' address2: type: string maxLength: 60 description: 'Additional address information. Example: Attention - Accounts Payable ' locality: type: string maxLength: 50 description: 'City of the billing address. ' administrativeArea: type: string maxLength: 2 description: 'State of the billing address in the U.S. ' postalCode: type: string maxLength: 10 description: 'Postal code for the billing address. The postal code must consist of 5 to 9 digits. A 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example: 12345-6789" ' country: type: string maxLength: 2 description: 'Billing country. Use the two character ISO Standard Country Codes. ' email: type: string maxLength: 256 description: 'Customer''s email address, including the full domain name. ' shipTo: type: object properties: firstName: type: string maxLength: 60 description: 'First name of the recipient. ' lastName: type: string maxLength: 60 description: 'Last name of the recipient. ' address1: type: string maxLength: 100 description: 'First line of the shipping address. ' address2: type: string maxLength: 100 description: 'Second line of the shipping address. ' locality: type: string maxLength: 40 description: 'City of the shipping address. ' administrativeArea: type: string maxLength: 40 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) ' postalCode: type: string maxLength: 20 description: 'Postal code for the shipping address. The postal code must consist of 5 to 9 digits. ' 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) ' maxLength: 2 paymentInformation: type: object properties: eWallet: type: object properties: accountId: type: string maxLength: 30 description: 'The ID of the customer, passed in the return_url field by PayPal after customer approval. ' bank: type: object properties: iban: type: string maxLength: 34 description: 'International Bank Account Number (IBAN). ' example: _links: self: href: GET method: /pts/v2/billing/agreements/6853506446826005503878 status: href: PATCH method: /pts/v2/billing/agreements/6853506446826005503878 id: '6853506446826005503878' installmentInformation: identifier: '1000000000' processorInformation: responseCode: '00' transactionId: 2016011808153910011808153910TR responseDetails: '100' reasonCode: '100' status: SUCCESS submitTimeUtc: '2023-05-29T08:57:25Z' agreementInformation: id: G8UD2OKG49UW dateSigned: '20181109' dateCreated: '20181009' dateRevoked: '20181009' encodedHtml: PGh0bWw+DQo8Ym9keT4NCiANCjxwPjxiPlRoaXMgdGV4dCBpcyBib2xkPC9iPjwvcD4NCjxwPjxpPlRoaXMgdGV4dCBpcyBpdGFsaWM8L2k+PC9wPg0KPHA+VGhpcyBpczxzdWI+IHN1YnNjcmlwdDwvc3ViPiBhbmQgPHN1cD5zdXBlcnNjcmlwdDwvc3VwPjwvcD4NCiANCjwvYm9keT4NCjwvaHRtbD4NCg== encodedHtmlPopup: PGh0bWw+DQo8Ym9keT4NCiANCjxwPjxiPlRoaXMgdGV4dCBpcyBib2xkPC9iPjwvcD4NCjxwPjxpPlRoaXMgdGV4dCBpcyBpdGFsaWM8L2k+PC9wPg0KPHA+VGhpcyBpczxzdWI+IHN1YnNjcmlwdDwvc3ViPiBhbmQgPHN1cD5zdXBlcnNjcmlwdDwvc3VwPjwvcD4NCiANCjwvYm9keT4NCjwvaHRtbD4NCg== transactionId: '12312731' url: https://merchant.redirect.com/url.do?param_utf=%27%22%3C%3E%20%E6%B8%AC%E8%A9%A6%E6%B8%AC¶m_url=https%3A%2F%2Fwww.abc.com¶m_special=+@#%~_&sign=fdaa1df42b6260a10e2e3f1c0fc87862 clientReferenceInformation: code: TC84105-1 riskInformation: processorResults: riskScore: '3' orderInformation: billTo: firstName: Krishna lastName: CYBS address1: 201 S. Division St. address2: Suite A101 locality: NPCI administrativeArea: MI postalCode: '560048' country: IN email: test@cybs.com shipTo: firstName: Krishna lastName: CYBS address1: 201 S. Division St. address2: Suite A101 locality: NPCI administrativeArea: MI postalCode: '560048' country: IN paymentInformation: eWallet: accountId: '123456' bank: iban: NL51ABNC1122334455 '400': description: Invalid request. schema: title: ptsV2ModifyBillingAgreementPost400Response type: object properties: 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 maxLength: 20 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_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\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: id: '6981713080281234567890' submitTimeUtc: '2023-11-28T14:12:01Z' status: INVALID_REQUEST reason: INVALID_DATA message: One or more fields in the request contains invalid data. details: - field: clientReferenceInformation.code reason: INVALID_DATA '502': description: Unexpected system error or system timeout. schema: title: ptsV2ModifyBillingAgreementPost502Response type: object properties: 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 maxLength: 20 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. example: id: '6981713080281234567890' submitTimeUtc: '2023-11-28T14:12:01Z' status: SERVER_ERROR reason: SYSTEM_ERROR message: General system failure. x-example: example0: summary: Standing Instruction Modification sample-name: Standing Instruction Modification value: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: authenticationTransactionContextId: '100000000000000000000000025253' transactionToken: AxjzbwSTcz9aHyOIL490/949UafAxfvksgAxHXa2/+xcVZ0CtA+AbkvF processingInformation: commerceIndicator: rpy actionList: - UPDATE_AGREEMENT aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: amountDetails: totalAmount: '100.00' currency: INR paymentInformation: card: expirationYear: '2031' number: '5082794233463' securityCode: '123' expirationMonth: '12' type: '061' installmentInformation: paymentType: '1' identifier: '1000000' example1: summary: Standing Instruction Deregisteration sample-name: Standing Instruction Deregisteration value: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: authenticationTransactionContextId: '100000000000000000000000025253' transactionToken: AxjzbwSTcz9aHyOIL490/949UafAxfvksgAxHXa2/+xcVZ0CtA+AbkvF processingInformation: commerceIndicator: rpy actionList: - CANCEL_AGREEMENT aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: amountDetails: totalAmount: '100.00' currency: INR paymentInformation: card: expirationYear: '2031' number: '5082794233463' securityCode: '123' expirationMonth: '12' type: '061' installmentInformation: paymentType: '1' identifier: '1000000' example2: summary: Redirectional Standing Instruction Modification sample-name: Redirectional Standing Instruction Modification value: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: cavv: MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI1MjM2 xid: OTE0OTE2MzI5MzE1MDUyOTU4Mjc= processingInformation: commerceIndicator: rpy actionList: - UPDATE_AGREEMENT aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: amountDetails: totalAmount: '150.00' currency: INR paymentInformation: card: expirationYear: '2031' number: '5082794233463' securityCode: '123' expirationMonth: '12' type: '061' installmentInformation: paymentType: '1' identifier: '1000000' example3: summary: Redirectional Standing Instruction Deregistration sample-name: Redirectional Standing Instruction Deregistration value: deviceInformation: httpAcceptBrowserValue: http userAgentBrowserValue: safari ipAddress: 10.10.10.10 consumerAuthenticationInformation: cavv: MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI1MjM2 xid: OTE0OTE2MzI5MzE1MDUyOTU4Mjc= processingInformation: commerceIndicator: rpy actionList: - CANCEL_AGREEMENT aggregatorInformation: subMerchant: name: rupay name: aggregatorname orderInformation: billTo: country: IN firstName: Krishna lastName: CYBS phoneNumber: '9999999999' address1: 201S.DivisionSt. district: BLR postalCode: '560048' locality: NPCI company: Visa administrativeArea: MI email: test@cybs.com amountDetails: totalAmount: '109.00' currency: INR paymentInformation: card: expirationYear: '2026' number: '50823043205909' securityCode: '123' expirationMonth: 08 type: '061' installmentInformation: paymentType: '1' identifier: '1000000' /pts/v2/billing-agreements/{id}/intimations: post: summary: Standing Instruction intimation description: Standing Instruction with or without Token. tags: - billingAgreements operationId: billingAgreementsIntimation x-devcenter-metaData: categoryTag: Payments developerGuides: https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html isMLEsupported: true mleForRequest: optional parameters: - name: intimateBillingAgreement 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. ' 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. ' installmentInformation: type: object properties: alertPreference: type: string maxLength: 5 description: 'Applicable only for SI. Required in case the authentication is initiated for SI registration. Valid Values: - `SMS` - `EMAIL` - `BOTH` ' firstInstallmentDate: type: string maxLength: 6 description: 'Date of the first installment payment. Format: YYMMDD. When you do not include this field, CyberSource sends a string of six zeros (000000) to the processor. This field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet. The value for this field corresponds to the following data in the TC 33 capture file: - Record: CP01 TCR9 - Position: 42-47 - Field: Date of First Installment ' identifier: type: string maximum: 60 description: 'Standing Instruction/Installment identifier. ' lastInstallmentDate: type: string maxLength: 8 description: 'End date of the SI transactions. Cannot be later than card expiry date. Ideally this can be set to expiry date. Required in case the authentication is initiated for SI registration. ' maxAmount: type: string maxLength: 12 description: 'Maximum Amount for which SI can be initiated. Required in case the authentication is initiated for SI registration. ' minAmount: type: string maxLength: 12 description: 'Minimum Amount for which SI can be initiated. Required in case the authentication is initiated for SI registration. ' paymentType: type: string maxLength: 1 description: 'Payment plan for the installments. This field is supported only for installment payments on Visa Platform Connect, RuPay and SPG-KSA seamless flow. Possible values for a standing-instruction (SI) merchant-initiated transaction (MIT) with Diners Club or Mastercard in India or with an India-issued card: - 1: SI with a fixed amount. - 2: SI with a maximum amount. - 3: Other kind of SI. Possible values for a type of Installment transaction for on-soil transaction in Kingdom of Saudi Arabia - 1: Registration or first transaction. - 2: Subsequent transaction. Possible values for other kinds of installment payments: - 0 (default): Regular installment. This value is not allowed for airline transactions. - 1: Installment payment with down payment. - 2: Installment payment without down payment. This value is supported only for airline transactions. - 3: Installment payment; down payment and boarding fee will follow. This value is supported only for airline transactions. - 4: Down payment only; regular installment payment will follow. - 5: Boarding fee only. This value is supported only for airline transactions. - 6: SI de-registration on RuPay for the payer authentication seamless flow. ' preferredDay: type: string maxLength: 2 description: 'Preferred date for initiating the SI transaction every month. This field need not be sent in case the SI has to be initiated as and when required, e.g., topping up the wallet, etc. ' sequence: type: integer maximum: 999 description: 'Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed. For example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5. #### Chase Paymentech Solutions and FDC Compass This field is optional because this value is required in the merchant descriptors. #### CyberSource through VisaNet When you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor. For Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*: - Record: CP01 TCR9 - Position: 38-40 - Field: Installment Payment Number * 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. ' merchantInformation: type: object properties: merchantDescriptor: type: object properties: 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. ' 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) ' 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. ' 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. ' 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 ' 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. ' transactionLocalDateTime: type: string maxLength: 14 description: "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where:\n - `YYYY` = year\n - `MM` = month\n - `DD` = day\n - `hh` = hour\n - `mm` = minutes\n - `ss` = seconds\n\n#### Used by\n**Authorization**\nRequired for these processors:\n- American Express Direct - American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- SIX\n\nOptional for all other processors.\n" cancelUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' successUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' failureUrl: type: string maxLength: 255 description: 'URL to which the customer is directed if they fail to sign the mandate. #### SEPA Required for Create Mandate and Update Mandate #### BACS Required for Create Mandate ' 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. ' totalMaxAmount: type: string description: 'Maximum amount that may be collected from the customer''s account. ' maxLength: 15 invoiceDetails: type: object properties: productDescription: type: string description: Brief description of item. billTo: type: object properties: 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) ' 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). ' buildingNumber: type: string maxLength: 256 description: "Building number in the street address.\n\nFor example, if the street address is:\nRua da Quitanda 187\nthen the building number is 187.\n\nThis field is supported only for:\n - Cielo transactions.\n - Redecard customer validation with CyberSource Latin American Processing.\n" company: type: string maxLength: 60 description: Company's Name, e.g. VISA 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. ' county: type: string maxLength: 50 description: U.S. county if available. district: type: string maxLength: 50 description: "Customer's neighborhood, community, or region\nwithin the city or municipality. \n#### SEPA/BACS\nWhen you include this field in a request, the value for this field must\nbe the same as the value for the billTo_state field.\n" 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. ' 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. ' 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. ' 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. ' 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" title: type: string paymentInformation: type: object properties: card: type: object properties: 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. ' 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. ' 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. ' 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 ' tokenizedCard: type: object properties: cryptogram: type: string maxLength: 255 description: This field contains token information. 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. ' number: type: string maxLength: 20 description: 'Customer''s payment network token value. ' 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. ' 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 ' paymentType: type: object properties: method: type: object properties: name: type: string description: "Identifier for the payment type.\nPossible Values: \n - SENTENIAL\n - PAYPAL\n#### SEPA/BACS\nRequired for mandates services\n#### Paypal\nRequired for billing agreements\n" 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: - `EWALLET` - `directDebitSepa` - `directDebitBacs` #### SEPA/BACS Required for mandates services #### Paypal Required for billing agreements ' bank: type: object properties: account: type: object properties: number: type: string maxLength: 30 description: 'Customer''s bank account number. #### BACS Required for Create Mandate, Import Mandate, and Update Mandate ' iban: type: string maxLength: 34 description: 'International Bank Account Number (IBAN). #### SEPA Required for mandates services ' swiftCode: type: string maxLength: 20 description: 'Bank''s SWIFT code. You can use this field only when scoring a direct debit transaction. #### BACS Required for mandates services ' scheme: type: string maxLength: 25 description: "The scheme that sets the rules for the direct\ndebit process. Possible values:\n - SEPA\n - BACS\n#### SEPA/BACS\nRequired for mandates services\n" accountAlias: type: object properties: id: type: string description: 'The value of the alias, such as a phone number, email address, account number, business number, or organization ID. ' maxLength: 255 type: type: string description: "Indicates the kind of alias provided (phone, email, account number, business number, or organization ID).\n \nPossible values:\n- phone\n- email\n- accountNumber\n- businessNumber\n- accountID" example: orderInformation: amountDetails: totalAmount: '00' currency: INR merchantInformation: transactionLocalDateTime: '20211216124549' paymentInformation: card: expirationYear: '2031' number: '5082302886091' securityCode: '123' expirationMonth: '12' type: '061' installmentInformation: identifier: '1000000000' minAmount: '100' sequence: '2' firstInstallmentDate: '2111' alertPreference: SMS lastInstallmentDate: '3110' preferredDay: '1' maxAmount: '1000' paymentType: '1' - name: id in: path required: true type: string description: ID for intimation of Billing Agreement responses: '201': description: Successful response. schema: title: ptsV2CreditsPost201Response type: object properties: 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. 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. ' 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. ' installmentInformation: type: object properties: identifier: type: string maxLength: 100 description: 'Identifier ' example: id: '6853506446826005503878' installmentInformation: identifier: '1000000000' processorInformation: responseCode: '00' status: SUCCESS submitTimeUtc: '2023-05-29T08:57:25Z' '400': description: Invalid request. schema: title: ptsV2CreditsPost400Response type: object properties: 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 maxLength: 20 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_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\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: id: '6981713080281234567890' submitTimeUtc: '2023-11-28T14:12:01Z' status: INVALID_REQUEST reason: INVALID_DATA message: One or more fields in the request contains invalid data. details: - field: clientReferenceInformation.code reason: INVALID_DATA '502': description: Unexpected system error or system timeout. schema: title: ptsV2CreditsPost502Response type: object properties: 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 maxLength: 20 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. example: id: '6981713080281234567890' submitTimeUtc: '2023-11-28T14:12:01Z' status: SERVER_ERROR reason: SYSTEM_ERROR message: General system failure. x-example: example0: summary: Standing Instruction Completion Amount = 0 sample-name: Standing Instruction Completion value: orderInformation: amountDetails: totalAmount: '00' currency: INR merchantInformation: transactionLocalDateTime: '20211216124549' paymentInformation: card: expirationYear: '2031' number: '5082302886091' securityCode: '123' expirationMonth: '12' type: '061' installmentInformation: identifier: '1000000000' minAmount: '100' sequence: '2' firstInstallmentDate: '2111' alertPreference: SMS lastInstallmentDate: '3110' preferredDay: '1' maxAmount: '1000' paymentType: '1' 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).